Documentation/Maemo 5 Developer Guide/Architecture/Imaging and Sharing
Revision as of 17:41, 5 October 2009
Contents |
Imaging and Sharing High Level Architecture
Subsystems of Imaging and Sharing domain are implementing means to produce, review, change, and share photography content on the device.
Following user-accessible applications are provided by Imaging and Sharing domain:
- Camera Application is a graphical interface to camera hardware. It accesses OMAP3 camera HW subsystem through a GStreamer-based middleware.
- Image Viewer allows to view photographs and images and supports simple/basic image editing functionality.
Sharing subsystem provides direct integration to an extensible set of internet services like OVI, with simple interface for uploading (i.e. “sharing”) content e.g. images to those services.
The diagram below shows the main interfaces of the domain.
Imaging and Sharing, Software Context
Interfaces provided
Interface | Description |
Image Viewer UI | The primary user interface for viewing still images and manipulating them. |
Sharing UI | The user interface for sharing content via internet services such as Nokia’s OVI. |
Camera UI | The primary user interface for using the device’s camera for capturing still images and video. |
GDigicam | An abstraction over complex set of GStreamer pipelines used to perform still image and video capturing. |
Sharing plug-in extensions | An interface for external developers to extend Sharing subsystem's reach to internet services. |
Viewing capability | Image Viewer application is the device’s primary means to view images, and it thus launched when user wants to handle the associated image files. |
System decomposition view
Camera application
Name | Camera application |
Purpose | Implements the camera UI interface |
Responsibilities |
|
License | Nokia |
Interfaces provided
Interface name | Dependency | Description |
GDigigcam | GStreamer | High-level model abstraction of a GStreamer-based pipelines to access camera features |
GDIGICAM facade | GDigicam | Facade to interact with media objects in Camera UI |
Gdigicam manager | GStreamer | Abstract interface over camera operations |
Camerabin | Multimedia framework | Component to control camera pipeline on GStreamer level |
GDigicam library and Camerabin GStreamer element are provided as Free Software under LGPL2.1 in order to allow alternative implementations of certain image processing steps.
Image Viewer
Name | Image Viewer |
Description | A viewer like content management application. |
Responsibilities |
|
Notes | Image Viewer is a single instance application, only one viewer instance available at a time. |
License | Nokia |
Interfaces provided
Interface | Dependency | Description |
Viewing capability | User | User interface to access Image Viewer application functionality |
Launch application | D-Bus | D-Bus interface to open the Image Viewer application, used by Camera, Browser, File Manager, Email. |
Sharing
Name | Sharing |
Purpose | Sharing subsystem implements means to upload a content originating on the device to internet-based social services. |
Responsibilities |
|
Notes | Sharing subsystem contributes libraries which are used from within the context of other applications. Image Viewer is a primary consumer of these services within Imaging and Sharing domain. |
License | Nokia. Plug-in API is available under LGPL2.1 |
Interfaces provided
Interface name | Dependency | Description |
Sharing plugins API | Plugins API for sharing components | An API for adding support for new internet services |