Using Nokia Imaging APIs in Your Windows Phone Applications

Introduction

One little known fact is that Nokia is the largest manufacturer of cameras (by virtue of being the largest manufacturers of mobile phones). The camera specifications of their latest phones would shame the best of camera manufacturers because of the high bar Nokia has set.

Since camera is considered one of the top most functionalities of mobile phones, Nokia has worked to provide an imaging APIs packaged in an SDK that provides a range of image manipulation tools, which can be used in Windows Phone applications.

These APIs have been built to work with a very low resource requirement on the devices, which makes working with imaging more efficient.

Key Features of the Nokia Imaging SDK

The key features of Nokia imaging SDK are as follows:

  • Provides helper APIs to make it easy to access camera functionality.
  • The APIs are available across all Windows Phone 8 devices.
  • The APIs are available in C#, VB as well as C++
  • Supports partial JPEG decoding, which enables fast previews, application of effects, rotation and high resolution image cropping
  • Various filters, effect and enhancements
  • Ability to create custom filters
  • Support for image cropping, resizing, rotation, and undo effects.

The Nokia Imaging SDK can be downloaded from http://www.nuget.org/packages/NokiaImagingSDK/.

If you have Visual Studio, you can install the SDK directly by running the following command in the Package Manager Console. (Install-Package NokiaImagingSDK). You will need an active solution open to be able to install the package.

To add the Nokia Imaging APIs library to your project, you need to add it from the package manager.

 

Hands On

Let us use the Nokia imaging APIs in a sample application.

Create a new Visual Studio project titled WPNokiaImagingDemo.

New Project
New Project

In Visual Studio, go to Tools -> Library Package Manager -> Package Manager Console.

Package Manager Console
Package Manager Console

Execute the command Install-Package NokiaImagingSDK.

One thing to note is that the Nokia Imaging APIs v1.0 do not support Any CPU as a project target. To work successfully, we need to change the project targets. Go to Build -> Configuration Manager.

Select Edit from Active Solution platform.

Configuration Manager
Configuration Manager

Remove the Any CPU as a platform. You can leave ARM and x86.

Now, the project is setup to use Nokia Imaging libraries.

Exploring the Nokia Imaging APIs

If you have installed the package only at the project level (and not with Administrator privileges), the Imaging APIs will be located at C:\Users\Vipul\Documents\visual studio 2013\Projects\<ProjectName>\packages\NokiaImagingSDK.1.0.272.0\lib\wp8

The contents of the library package is as under:

  • Nokia.Graphics.Imaging.Managed.dll – this library contains the helper methods to simplify the use of the Nokia.Graphics.Imaging.dll
  • Nokia.Graphics.Imaging.dll – this library contains the core functionality of the Nokia Imaging SDK:  all the image filters, as well as the JPEG encoder and decoder
  • Nokia.InteropServices.WindowsRuntime.dll – this library is for internal use only

The following screenshots reveal the vast number of classes/APIs available in the Nokia.Graphics.Imaging.dll.

classes/APIs available in the Nokia.Graphics.Imaging.dll


classes/APIs available in the Nokia.Graphics.Imaging.dll

classes/APIs available in the Nokia.Graphics.Imaging.dll

classes/APIs available in the Nokia.Graphics.Imaging.dll

The filters and effects in Nokia Imaging APIs can be used like any other class available in Windows Phone.

Summary

In this article, we were introduced to the Nokia Imaging SDK and the APIs. In upcoming articles, we will explore how to build applications on top of the Nokia Imaging APIs.

About the Author

Vipul Patel is a Program Manager currently working at Amazon Corporation. He has formerly worked at Microsoft in the Lync team and in the .NET team (in the Base Class libraries and the Debugging and Profiling team). He can be reached at vipul.patel@hotmail.com



Related Articles

Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Live Event Date: February 25, 2015 @ 2:00 p.m. ET / 11:00 a.m. PT Secure Shell (SSH) keys provide unmitigated access for privileged users and applications. However, managing and securing these critical privileged credentials poses a real challenge for organizations, putting sensitive data at risk. In fact, more than 50% of organizations report experiencing an SSH Key related compromise. Check out this upcoming eSeminar and join Adam Bosnian, EVP of Global Business Development at CyberArk, as he discusses the …

  • Enterprise endpoint backup can satisfy data collection and preservation requirements in a more streamlined and cost-effective manner than traditional e-discovery methods. Enterprise IT teams face increasing challenges as the amount of valuable data living on endpoints continues to grow. Due to the exploding volume, mobility and compliance requirements of enterprise data, the need to collect and preserve that data for the purpose of e-discovery becomes more critical--and more difficult. Traditionally, …

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date