SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
LUMIA APP LABS #4
CREATE STUNNING
IMAGING APPS
Berthier Lemieux
Technology Wizard
TYPICAL CAMERA USE CASES.
                                                WP7.5               WP8
   IMAGE PICKER                                  X                   X

   AUGMENTED REALITY VIEWFINDER                  X                   X

   PRO-CAMERA                                                        X

   FILTERS                                                           X




       © 2012 Nokia. All rights reserved.               12/5/2012
       © 2012 Microsoft. All rights reserved.
IMAGE PICKER
KEY APIS:

    Microsoft.Phone.Tasks.PhotoChooserTask
    Microsoft.Phone.Tasks.CameraCaptureTask




Example code:
http://tinyurl.com/cqlezbn




                        © 2012 Nokia. All rights reserved.       12/5/2012
                        © 2012 Microsoft. All rights reserved.
IMAGE PICKER
   private void CameraRoll_Click(object sender, RoutedEventArgs e)
           {
               PhotoChooserTask objPhotoChooser = new PhotoChooserTask();
               objPhotoChooser.Completed += objPhotoChooser_Completed;
               objPhotoChooser.ShowCamera = true;
               objPhotoChooser.Show();
           }

   void objPhotoChooser_Completed(object sender, PhotoResult e)
           {
               switch (e.TaskResult)
               {
                   case TaskResult.OK:
                       PickedImage.Source = new BitmapImage(new Uri(e.OriginalFileName));
                       break;
              ...




           © 2012 Nokia. All rights reserved.                    12/5/2012
           © 2012 Microsoft. All rights reserved.
AR VIEWFINDER
KEY API:

    Microsoft.Devices.PhotoCamera
    Microsoft.Devices.Sensors.Motion
    System.Windows.Media.VideoBrush




 Example code:
 http://tinyurl.com/c3sdyqa


                © 2012 Nokia. All rights reserved.       12/5/2012
                © 2012 Microsoft. All rights reserved.
DISPLAY THE CAMERA FRAMES
   <Grid x:Name="LayoutRoot" Background="Transparent">
          <Rectangle Width="640" Height="480" Canvas.ZIndex="1">
              <Rectangle.Fill>
                  <VideoBrush x:Name="viewfinderBrush" />
              </Rectangle.Fill>
          </Rectangle>
    </Grid>


      cam = new Microsoft.Devices.PhotoCamera();
      viewfinderBrush.SetSource(cam);




       © 2012 Nokia. All rights reserved.             12/5/2012
       © 2012 Microsoft. All rights reserved.
YAW




                                         ROLL




                                         PITCH



                                                 See also Petzold:
                                                 http://tinyurl.com/cgydz3u

© 2012 Nokia. All rights reserved.        12/5/2012
© 2012 Microsoft. All rights reserved.
AR VIEWFINDER
      motion = new Motion();
      motion.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20);
      motion.CurrentValueChanged += motion_CurrentValueChanged;
      motion.start();
      ...

   private void CurrentValueChanged(MotionReading reading)
     {
       // Phone has moved, update the overlays on the screen according to
       // reading.Attitude.RotationMatrix




       © 2012 Nokia. All rights reserved.             12/5/2012
       © 2012 Microsoft. All rights reserved.
PRO-CAMERA
                                                         WP8




KEY API:

     Windows.Phone.Media.Capture.PhotoCaptureDevice
     Windows.Phone.Media.Capture.CameraCaptureSequence




Example code:
HTTP://TINYURL.COM/CO79VKM
Device                    Nokia Lumia 820                                             Nokia Lumia 920                                          WP8
Sensor                    Front                            Back                       Front                       Back
Autofocus range           Infinity                         Auto, Macro, Normal, Full, Infinity                    Auto, Macro, Normal, Full,
                                                           Hyperfocal, Infinity                                   Hyperfocal, Infinity

Preview resolution        640x480                          800x448, 640x480           1280x720, 1024x768          1280x720, 1024x768

Capture resolution        640x480                          3264x2448, 3552x2000, 1280x960, 1280x720,              3264x2448, 3552x2000,
                                                           2592x1936, 2592x1456, 640x480                          2592x1936, 2592x1456,
                                                           2048x1536, 640x480                                     2048x1536, 640x480
Exposure compensation     -12...12                         -12...12                   -12...12                    -12...12
(EV)
Exposure time             1...33333                        1...500000                 1...33333                   1...500000
(microseconds)
Flash mode                Off                              Auto, On, Off              Off                         Auto, On, Off
Focus illumination mode   Off                              Auto, On, Off              Off                         Auto, On, Off


ISO                       100...800                        100...800                  100...800                   100...800
Manual focus position     No                               Yes, 1000 positions        No                          Yes, 1000 positions

Scene mode                Auto, Sport, Night, Backlit Auto, Macro, Sport,             Auto, Sport, Night, Backlit Auto, Macro, Sport,
                                                      Night, Night Portrait,                                      Night, Night Portrait,
                                                      Backlit                                                     Backlit
White balance preset      Cloudy, Daylight,           Cloudy, Daylight,               Cloudy, Daylight,           Cloudy, Daylight,
                          Fluorescent, Tungsten       Fluorescent, Tungsten           Fluorescent, Tungsten       Fluorescent, Tungsten


                          © 2012 Nokia. All rights reserved.                                          12/5/2012
                          © 2012 Microsoft. All rights reserved.
WP8
Windows.Foundation.Size resolution = new Windows.Foundation.Size(640, 480);
camera = await PhotoCaptureDevice.OpenAsync(CameraSensorLocation.Back,resolution);
viewfinderBrush.SetSource( camera );
CameraCaptureSequence sequence = camera.CreateCaptureSequence(1);
sequence.FrameAcquired += sequence_FrameAcquired;

CameraCaptureFrame frame = sequence.Frames[0];
frame.DesiredProperties[KnownCameraPhotoProperties.FlashMode] = FlashState.On;
await camera.PrepareCaptureSequenceAsync(sequence);
await sequence.StartCaptureAsync();



                    Open                                                         Prepare
      PhotoCaptureDevice.OpenAsync()                     PhotoCaptureDevice.PrepareCaptureSequenceAsync()


                   Create                                                        Capture
PhotoCaptureDevice.CreateCaptureSequence()                  CameraCaptureSequence.StartCaptureAsync()


                   Specify                                                       Process
  CameraCaptureFrame.DesiredProperties[]                         CameraCaptureFrame.CaptureStream

                © 2012 Nokia. All rights reserved.                   12/5/2012
                © 2012 Microsoft. All rights reserved.
WP8

FILTERS
KEY TECHNOLOGIES:

    DirectX
    ARM Neon intrinsic




EXAMPLE CODE:
http://tinyurl.com/cqc79n4
http://tinyurl.com/cuvosez
http://tinyurl.com/bsvoyl9


                © 2012 Nokia. All rights reserved.       12/5/2012
                © 2012 Microsoft. All rights reserved.
HOOKING
INTO THE
PLATFORM

   © 2012 Nokia. All rights reserved.       12/5/2012
   © 2012 Microsoft. All rights reserved.
WP8 LENSES
                                                                      WP8




Documentation:
http://tinyurl.com/cgcfafd


               © 2012 Nokia. All rights reserved.         12/5/2012
               © 2012 Microsoft. All rights reserved.
HOOKING INTO PHOTOS HUB
                        SHARE PICKER
                        RICH MEDIA APPS
                        PHOTO EDIT PICKER



                Documentation:
                http://tinyurl.com/cawyy23
Thank you!




© 2012 Nokia. All rights reserved.           12/5/2012
© 2012 Microsoft. All rights reserved.

Más contenido relacionado

Similar a LUMIA APP LABS: CREATE STUNNING IMAGING APPS FOR LUMIA PHONES

Digital Watchdog DWC-MD421TIRB User Manual
Digital Watchdog DWC-MD421TIRB User ManualDigital Watchdog DWC-MD421TIRB User Manual
Digital Watchdog DWC-MD421TIRB User ManualJMAC Supply
 
Digital Watchdog DWC-MD421DB User Manual
Digital Watchdog DWC-MD421DB User ManualDigital Watchdog DWC-MD421DB User Manual
Digital Watchdog DWC-MD421DB User ManualJMAC Supply
 
Hidden Camera 3 APIs in Android 4.4 (KitKat)
Hidden Camera 3 APIs in Android 4.4 (KitKat)Hidden Camera 3 APIs in Android 4.4 (KitKat)
Hidden Camera 3 APIs in Android 4.4 (KitKat)Balwinder Kaur
 
“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju
“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju
“Deep Learning on Mobile Devices,” a Presentation from Siddha GanjuEdge AI and Vision Alliance
 
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...Dropbox
 
UplinQ - implementing computational camera
UplinQ - implementing computational cameraUplinQ - implementing computational camera
UplinQ - implementing computational cameraSatya Harish
 
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...Amazon Web Services
 
COSCUP 2017 FACE OFF
COSCUP 2017 FACE OFFCOSCUP 2017 FACE OFF
COSCUP 2017 FACE OFFPRADA Hsiung
 
Flash for Mobile Devices
Flash for Mobile DevicesFlash for Mobile Devices
Flash for Mobile Devicespaultrani
 
OS and Application deployment using Razor and Puppet
OS and Application deployment using Razor and PuppetOS and Application deployment using Razor and Puppet
OS and Application deployment using Razor and PuppetPuppet
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud ComputingGoa App
 
Digital Watchdog DWC-MV421DB User Manual
Digital Watchdog DWC-MV421DB User ManualDigital Watchdog DWC-MV421DB User Manual
Digital Watchdog DWC-MV421DB User ManualJMAC Supply
 
Digital Watchdog DWC-MV421TIRB User Manual
Digital Watchdog DWC-MV421TIRB User ManualDigital Watchdog DWC-MV421TIRB User Manual
Digital Watchdog DWC-MV421TIRB User ManualJMAC Supply
 
Video Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsVideo Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsRapidValue
 
Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis CataldiUnreal Engine
 
eagleeye-151129054531-lva1-app6892.pptx
eagleeye-151129054531-lva1-app6892.pptxeagleeye-151129054531-lva1-app6892.pptx
eagleeye-151129054531-lva1-app6892.pptxKGANESH34
 

Similar a LUMIA APP LABS: CREATE STUNNING IMAGING APPS FOR LUMIA PHONES (20)

Digital Watchdog DWC-MD421TIRB User Manual
Digital Watchdog DWC-MD421TIRB User ManualDigital Watchdog DWC-MD421TIRB User Manual
Digital Watchdog DWC-MD421TIRB User Manual
 
Digital Watchdog DWC-MD421DB User Manual
Digital Watchdog DWC-MD421DB User ManualDigital Watchdog DWC-MD421DB User Manual
Digital Watchdog DWC-MD421DB User Manual
 
Hidden Camera 3 APIs in Android 4.4 (KitKat)
Hidden Camera 3 APIs in Android 4.4 (KitKat)Hidden Camera 3 APIs in Android 4.4 (KitKat)
Hidden Camera 3 APIs in Android 4.4 (KitKat)
 
“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju
“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju
“Deep Learning on Mobile Devices,” a Presentation from Siddha Ganju
 
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...
eFolder Expert Series, eFolder BDR for ShadowProtect Tutorial: Recovering a P...
 
UplinQ - implementing computational camera
UplinQ - implementing computational cameraUplinQ - implementing computational camera
UplinQ - implementing computational camera
 
Implementing Computational Camera
Implementing Computational CameraImplementing Computational Camera
Implementing Computational Camera
 
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...
Video anomaly detection using Amazon SageMaker, AWS DeepLens, & AWS IoT Green...
 
COSCUP 2017 FACE OFF
COSCUP 2017 FACE OFFCOSCUP 2017 FACE OFF
COSCUP 2017 FACE OFF
 
Flash for Mobile Devices
Flash for Mobile DevicesFlash for Mobile Devices
Flash for Mobile Devices
 
OS and Application deployment using Razor and Puppet
OS and Application deployment using Razor and PuppetOS and Application deployment using Razor and Puppet
OS and Application deployment using Razor and Puppet
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Digital Watchdog DWC-MV421DB User Manual
Digital Watchdog DWC-MV421DB User ManualDigital Watchdog DWC-MV421DB User Manual
Digital Watchdog DWC-MV421DB User Manual
 
Digital Watchdog DWC-MV421TIRB User Manual
Digital Watchdog DWC-MV421TIRB User ManualDigital Watchdog DWC-MV421TIRB User Manual
Digital Watchdog DWC-MV421TIRB User Manual
 
Video Recording of Selenium Automation Flows
Video Recording of Selenium Automation FlowsVideo Recording of Selenium Automation Flows
Video Recording of Selenium Automation Flows
 
Making VR with Unreal Engine Luis Cataldi
Making VR with Unreal Engine  Luis CataldiMaking VR with Unreal Engine  Luis Cataldi
Making VR with Unreal Engine Luis Cataldi
 
Content-Centric Embedded ~Treasure Hunting Robot~ for LinuxCon Japan 2012
Content-Centric Embedded ~Treasure Hunting Robot~ for LinuxCon Japan 2012Content-Centric Embedded ~Treasure Hunting Robot~ for LinuxCon Japan 2012
Content-Centric Embedded ~Treasure Hunting Robot~ for LinuxCon Japan 2012
 
Flash 101
Flash 101Flash 101
Flash 101
 
Content-Centric Embedded
Content-Centric EmbeddedContent-Centric Embedded
Content-Centric Embedded
 
eagleeye-151129054531-lva1-app6892.pptx
eagleeye-151129054531-lva1-app6892.pptxeagleeye-151129054531-lva1-app6892.pptx
eagleeye-151129054531-lva1-app6892.pptx
 

Más de Microsoft Mobile Developer

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsMicrosoft Mobile Developer
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagMicrosoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsMicrosoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appMicrosoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeMicrosoft Mobile Developer
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoMicrosoft Mobile Developer
 

Más de Microsoft Mobile Developer (20)

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and tools
 
Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
 
Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
Push notifications on Nokia X
Push notifications on Nokia XPush notifications on Nokia X
Push notifications on Nokia X
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 

Último

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Último (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

LUMIA APP LABS: CREATE STUNNING IMAGING APPS FOR LUMIA PHONES

  • 1. LUMIA APP LABS #4 CREATE STUNNING IMAGING APPS Berthier Lemieux Technology Wizard
  • 2. TYPICAL CAMERA USE CASES. WP7.5 WP8 IMAGE PICKER X X AUGMENTED REALITY VIEWFINDER X X PRO-CAMERA X FILTERS X © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 3. IMAGE PICKER KEY APIS: Microsoft.Phone.Tasks.PhotoChooserTask Microsoft.Phone.Tasks.CameraCaptureTask Example code: http://tinyurl.com/cqlezbn © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 4. IMAGE PICKER private void CameraRoll_Click(object sender, RoutedEventArgs e) { PhotoChooserTask objPhotoChooser = new PhotoChooserTask(); objPhotoChooser.Completed += objPhotoChooser_Completed; objPhotoChooser.ShowCamera = true; objPhotoChooser.Show(); } void objPhotoChooser_Completed(object sender, PhotoResult e) { switch (e.TaskResult) { case TaskResult.OK: PickedImage.Source = new BitmapImage(new Uri(e.OriginalFileName)); break; ... © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 5. AR VIEWFINDER KEY API: Microsoft.Devices.PhotoCamera Microsoft.Devices.Sensors.Motion System.Windows.Media.VideoBrush Example code: http://tinyurl.com/c3sdyqa © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 6. DISPLAY THE CAMERA FRAMES <Grid x:Name="LayoutRoot" Background="Transparent"> <Rectangle Width="640" Height="480" Canvas.ZIndex="1"> <Rectangle.Fill> <VideoBrush x:Name="viewfinderBrush" /> </Rectangle.Fill> </Rectangle> </Grid> cam = new Microsoft.Devices.PhotoCamera(); viewfinderBrush.SetSource(cam); © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 7. YAW ROLL PITCH See also Petzold: http://tinyurl.com/cgydz3u © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 8. AR VIEWFINDER motion = new Motion(); motion.TimeBetweenUpdates = TimeSpan.FromMilliseconds(20); motion.CurrentValueChanged += motion_CurrentValueChanged; motion.start(); ... private void CurrentValueChanged(MotionReading reading) { // Phone has moved, update the overlays on the screen according to // reading.Attitude.RotationMatrix © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 9. PRO-CAMERA WP8 KEY API: Windows.Phone.Media.Capture.PhotoCaptureDevice Windows.Phone.Media.Capture.CameraCaptureSequence Example code: HTTP://TINYURL.COM/CO79VKM
  • 10. Device Nokia Lumia 820 Nokia Lumia 920 WP8 Sensor Front Back Front Back Autofocus range Infinity Auto, Macro, Normal, Full, Infinity Auto, Macro, Normal, Full, Hyperfocal, Infinity Hyperfocal, Infinity Preview resolution 640x480 800x448, 640x480 1280x720, 1024x768 1280x720, 1024x768 Capture resolution 640x480 3264x2448, 3552x2000, 1280x960, 1280x720, 3264x2448, 3552x2000, 2592x1936, 2592x1456, 640x480 2592x1936, 2592x1456, 2048x1536, 640x480 2048x1536, 640x480 Exposure compensation -12...12 -12...12 -12...12 -12...12 (EV) Exposure time 1...33333 1...500000 1...33333 1...500000 (microseconds) Flash mode Off Auto, On, Off Off Auto, On, Off Focus illumination mode Off Auto, On, Off Off Auto, On, Off ISO 100...800 100...800 100...800 100...800 Manual focus position No Yes, 1000 positions No Yes, 1000 positions Scene mode Auto, Sport, Night, Backlit Auto, Macro, Sport, Auto, Sport, Night, Backlit Auto, Macro, Sport, Night, Night Portrait, Night, Night Portrait, Backlit Backlit White balance preset Cloudy, Daylight, Cloudy, Daylight, Cloudy, Daylight, Cloudy, Daylight, Fluorescent, Tungsten Fluorescent, Tungsten Fluorescent, Tungsten Fluorescent, Tungsten © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 11. WP8 Windows.Foundation.Size resolution = new Windows.Foundation.Size(640, 480); camera = await PhotoCaptureDevice.OpenAsync(CameraSensorLocation.Back,resolution); viewfinderBrush.SetSource( camera ); CameraCaptureSequence sequence = camera.CreateCaptureSequence(1); sequence.FrameAcquired += sequence_FrameAcquired; CameraCaptureFrame frame = sequence.Frames[0]; frame.DesiredProperties[KnownCameraPhotoProperties.FlashMode] = FlashState.On; await camera.PrepareCaptureSequenceAsync(sequence); await sequence.StartCaptureAsync(); Open Prepare PhotoCaptureDevice.OpenAsync() PhotoCaptureDevice.PrepareCaptureSequenceAsync() Create Capture PhotoCaptureDevice.CreateCaptureSequence() CameraCaptureSequence.StartCaptureAsync() Specify Process CameraCaptureFrame.DesiredProperties[] CameraCaptureFrame.CaptureStream © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 12. WP8 FILTERS KEY TECHNOLOGIES: DirectX ARM Neon intrinsic EXAMPLE CODE: http://tinyurl.com/cqc79n4 http://tinyurl.com/cuvosez http://tinyurl.com/bsvoyl9 © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 13. HOOKING INTO THE PLATFORM © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 14. WP8 LENSES WP8 Documentation: http://tinyurl.com/cgcfafd © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.
  • 15. HOOKING INTO PHOTOS HUB SHARE PICKER RICH MEDIA APPS PHOTO EDIT PICKER Documentation: http://tinyurl.com/cawyy23
  • 16. Thank you! © 2012 Nokia. All rights reserved. 12/5/2012 © 2012 Microsoft. All rights reserved.