GstPhotography

GstPhotography

Synopsis

                    GstPhotography;
enum                GstPhotographyNoiseReduction;
enum                GstWhiteBalanceMode;
enum                GstColourToneMode;
enum                GstSceneMode;
enum                GstFlashMode;
enum                GstFlickerReductionMode;
enum                GstFocusMode;
enum                GstFocusStatus;
enum                GstPhotoCaps;
enum                GstPhotoShakeRisk;
void                (*GstPhotoCapturePrepared)          (gpointer data,
                                                         const GstCaps *configured_caps);
gboolean            gst_photography_get_ev_compensation (GstPhotography *photo,
                                                         gfloat *ev_comp);
gboolean            gst_photography_get_iso_speed       (GstPhotography *photo,
                                                         guint *iso_speed);
gboolean            gst_photography_get_aperture        (GstPhotography *photo,
                                                         guint *aperture);
gboolean            gst_photography_get_exposure        (GstPhotography *photo,
                                                         guint32 *exposure);
gboolean            gst_photography_get_white_balance_mode
                                                        (GstPhotography *photo,
                                                         GstWhiteBalanceMode *wb_mode);
gboolean            gst_photography_get_colour_tone_mode
                                                        (GstPhotography *photo,
                                                         GstColourToneMode *tone_mode);
gboolean            gst_photography_get_scene_mode      (GstPhotography *photo,
                                                         GstSceneMode *scene_mode);
gboolean            gst_photography_get_flash_mode      (GstPhotography *photo,
                                                         GstFlashMode *flash_mode);
gboolean            gst_photography_get_noise_reduction (GstPhotography *photo,
                                                         GstPhotographyNoiseReduction *noise_reduction);
gboolean            gst_photography_get_zoom            (GstPhotography *photo,
                                                         gfloat *zoom);
gboolean            gst_photography_set_ev_compensation (GstPhotography *photo,
                                                         gfloat ev_comp);
gboolean            gst_photography_set_iso_speed       (GstPhotography *photo,
                                                         guint iso_speed);
gboolean            gst_photography_set_aperture        (GstPhotography *photo,
                                                         guint aperture);
gboolean            gst_photography_set_exposure        (GstPhotography *photo,
                                                         guint exposure);
gboolean            gst_photography_set_white_balance_mode
                                                        (GstPhotography *photo,
                                                         GstWhiteBalanceMode wb_mode);
gboolean            gst_photography_set_colour_tone_mode
                                                        (GstPhotography *photo,
                                                         GstColourToneMode tone_mode);
gboolean            gst_photography_set_scene_mode      (GstPhotography *photo,
                                                         GstSceneMode scene_mode);
gboolean            gst_photography_set_flash_mode      (GstPhotography *photo,
                                                         GstFlashMode flash_mode);
gboolean            gst_photography_set_noise_reduction (GstPhotography *photo,
                                                         GstPhotographyNoiseReduction noise_reduction);
gboolean            gst_photography_set_zoom            (GstPhotography *photo,
                                                         gfloat zoom);
GstPhotoCaps        gst_photography_get_capabilities    (GstPhotography *photo);
gboolean            gst_photography_prepare_for_capture (GstPhotography *photo,
                                                         GstPhotoCapturePrepared func,
                                                         GstCaps *capture_caps,
                                                         gpointer user_data);
void                gst_photography_set_autofocus       (GstPhotography *photo,
                                                         gboolean on);
gboolean            gst_photography_set_config          (GstPhotography *photo,
                                                         GstPhotoSettings *config);
gboolean            gst_photography_get_config          (GstPhotography *photo,
                                                         GstPhotoSettings *config);

Object Hierarchy

  GInterface
   +----GstPhotography

Prerequisites

GstPhotography requires GstImplementsInterface and GstElement.

Properties

  "aperture"                 guint                 : Read / Write
  "capabilities"             gulong                : Read
  "colour-tone-mode"         GstColourToneMode     : Read / Write
  "ev-compensation"          gfloat                : Read / Write
  "exposure"                 guint                 : Read / Write
  "flash-mode"               GstFlashMode          : Read / Write
  "flicker-mode"             GstFlickerReductionMode  : Read / Write
  "focus-mode"               GstFocusMode          : Read / Write
  "image-capture-supported-caps" GstCaps*              : Read
  "iso-speed"                guint                 : Read / Write
  "scene-mode"               GstSceneMode          : Read / Write
  "white-balance-mode"       GstWhiteBalanceMode   : Read / Write
  "image-preview-supported-caps" GstCaps*              : Read
  "noise-reduction"          GstPhotographyNoiseReduction  : Read / Write
  "zoom"                     gfloat                : Read / Write

Description

Details

GstPhotography

typedef struct _GstPhotography GstPhotography;


enum GstPhotographyNoiseReduction

typedef enum {
  GST_PHOTOGRAPHY_NOISE_REDUCTION_BAYER = ( 1<<0 ),
  GST_PHOTOGRAPHY_NOISE_REDUCTION_YCC = ( 1<<1 ),
  GST_PHOTOGRAPHY_NOISE_REDUCTION_TEMPORAL= ( 1<< 2),
  GST_PHOTOGRAPHY_NOISE_REDUCTION_FIXED = (1 << 3),
  GST_PHOTOGRAPHY_NOISE_REDUCTION_EXTRA = (1 << 4)
} GstPhotographyNoiseReduction;


enum GstWhiteBalanceMode

typedef enum {
  GST_PHOTOGRAPHY_WB_MODE_AUTO = 0,
  GST_PHOTOGRAPHY_WB_MODE_DAYLIGHT,
  GST_PHOTOGRAPHY_WB_MODE_CLOUDY,
  GST_PHOTOGRAPHY_WB_MODE_SUNSET,
  GST_PHOTOGRAPHY_WB_MODE_TUNGSTEN,
  GST_PHOTOGRAPHY_WB_MODE_FLUORESCENT
} GstWhiteBalanceMode;


enum GstColourToneMode

typedef enum {
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL = 0,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SEPIA,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NEGATIVE,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRAYSCALE,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NATURAL,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_VIVID,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_COLORSWAP,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SOLARIZE,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_OUT_OF_FOCUS,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKY_BLUE,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_GRASS_GREEN,
  GST_PHOTOGRAPHY_COLOUR_TONE_MODE_SKIN_WHITEN
} GstColourToneMode;


enum GstSceneMode

typedef enum {
  GST_PHOTOGRAPHY_SCENE_MODE_MANUAL = 0,
  GST_PHOTOGRAPHY_SCENE_MODE_CLOSEUP,
  GST_PHOTOGRAPHY_SCENE_MODE_PORTRAIT,
  GST_PHOTOGRAPHY_SCENE_MODE_LANDSCAPE,
  GST_PHOTOGRAPHY_SCENE_MODE_SPORT,
  GST_PHOTOGRAPHY_SCENE_MODE_NIGHT,
  GST_PHOTOGRAPHY_SCENE_MODE_AUTO
} GstSceneMode;


enum GstFlashMode

typedef enum {
  GST_PHOTOGRAPHY_FLASH_MODE_AUTO = 0,
  GST_PHOTOGRAPHY_FLASH_MODE_OFF,
  GST_PHOTOGRAPHY_FLASH_MODE_ON,
  GST_PHOTOGRAPHY_FLASH_MODE_FILL_IN,
  GST_PHOTOGRAPHY_FLASH_MODE_RED_EYE
} GstFlashMode;


enum GstFlickerReductionMode

typedef enum {
  GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF = 0,
  GST_PHOTOGRAPHY_FLICKER_REDUCTION_50HZ,
  GST_PHOTOGRAPHY_FLICKER_REDUCTION_60HZ,
  GST_PHOTOGRAPHY_FLICKER_REDUCTION_AUTO,
} GstFlickerReductionMode;


enum GstFocusMode

typedef enum {
    GST_PHOTOGRAPHY_FOCUS_MODE_AUTO = 0,
    GST_PHOTOGRAPHY_FOCUS_MODE_MACRO,
    GST_PHOTOGRAPHY_FOCUS_MODE_PORTRAIT,
    GST_PHOTOGRAPHY_FOCUS_MODE_INFINITY,
    GST_PHOTOGRAPHY_FOCUS_MODE_HYPERFOCAL,
    GST_PHOTOGRAPHY_FOCUS_MODE_EXTENDED,
    GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_NORMAL,
    GST_PHOTOGRAPHY_FOCUS_MODE_CONTINUOUS_EXTENDED,
} GstFocusMode;


enum GstFocusStatus

typedef enum {
  GST_PHOTOGRAPHY_FOCUS_STATUS_NONE = 0,
  GST_PHOTOGRAPHY_FOCUS_STATUS_RUNNING,
  GST_PHOTOGRAPHY_FOCUS_STATUS_FAIL,
  GST_PHOTOGRAPHY_FOCUS_STATUS_SUCCESS
} GstFocusStatus;


enum GstPhotoCaps

typedef enum {
  GST_PHOTOGRAPHY_CAPS_NONE = (0 << 0),
  GST_PHOTOGRAPHY_CAPS_EV_COMP = (1 << 0),
  GST_PHOTOGRAPHY_CAPS_ISO_SPEED = (1 << 1),
  GST_PHOTOGRAPHY_CAPS_WB_MODE = (1 << 2),
  GST_PHOTOGRAPHY_CAPS_TONE = (1 << 3),
  GST_PHOTOGRAPHY_CAPS_SCENE = (1 << 4),
  GST_PHOTOGRAPHY_CAPS_FLASH = (1 << 5),
  GST_PHOTOGRAPHY_CAPS_ZOOM = (1 << 6),
  GST_PHOTOGRAPHY_CAPS_FOCUS = (1 << 7),
  GST_PHOTOGRAPHY_CAPS_APERTURE = (1 << 8),
  GST_PHOTOGRAPHY_CAPS_EXPOSURE = (1 << 9),
  GST_PHOTOGRAPHY_CAPS_SHAKE = (1 << 10),
  GST_PHOTOGRAPHY_CAPS_NOISE_REDUCTION = (1 << 11),
  GST_PHOTOGRAPHY_CAPS_FLICKER_REDUCTION = (1 << 12),
  GST_PHOTOGRAPHY_CAPS_ALL = (~0)
} GstPhotoCaps;


enum GstPhotoShakeRisk

typedef enum {
  GST_PHOTOGRAPHY_SHAKE_RISK_LOW = 0,
  GST_PHOTOGRAPHY_SHAKE_RISK_MEDIUM,
  GST_PHOTOGRAPHY_SHAKE_RISK_HIGH,
} GstPhotoShakeRisk;


GstPhotoCapturePrepared ()

void                (*GstPhotoCapturePrepared)          (gpointer data,
                                                         const GstCaps *configured_caps);


gst_photography_get_ev_compensation ()

gboolean            gst_photography_get_ev_compensation (GstPhotography *photo,
                                                         gfloat *ev_comp);


gst_photography_get_iso_speed ()

gboolean            gst_photography_get_iso_speed       (GstPhotography *photo,
                                                         guint *iso_speed);


gst_photography_get_aperture ()

gboolean            gst_photography_get_aperture        (GstPhotography *photo,
                                                         guint *aperture);


gst_photography_get_exposure ()

gboolean            gst_photography_get_exposure        (GstPhotography *photo,
                                                         guint32 *exposure);


gst_photography_get_white_balance_mode ()

gboolean            gst_photography_get_white_balance_mode
                                                        (GstPhotography *photo,
                                                         GstWhiteBalanceMode *wb_mode);


gst_photography_get_colour_tone_mode ()

gboolean            gst_photography_get_colour_tone_mode
                                                        (GstPhotography *photo,
                                                         GstColourToneMode *tone_mode);


gst_photography_get_scene_mode ()

gboolean            gst_photography_get_scene_mode      (GstPhotography *photo,
                                                         GstSceneMode *scene_mode);


gst_photography_get_flash_mode ()

gboolean            gst_photography_get_flash_mode      (GstPhotography *photo,
                                                         GstFlashMode *flash_mode);


gst_photography_get_noise_reduction ()

gboolean            gst_photography_get_noise_reduction (GstPhotography *photo,
                                                         GstPhotographyNoiseReduction *noise_reduction);


gst_photography_get_zoom ()

gboolean            gst_photography_get_zoom            (GstPhotography *photo,
                                                         gfloat *zoom);


gst_photography_set_ev_compensation ()

gboolean            gst_photography_set_ev_compensation (GstPhotography *photo,
                                                         gfloat ev_comp);


gst_photography_set_iso_speed ()

gboolean            gst_photography_set_iso_speed       (GstPhotography *photo,
                                                         guint iso_speed);


gst_photography_set_aperture ()

gboolean            gst_photography_set_aperture        (GstPhotography *photo,
                                                         guint aperture);


gst_photography_set_exposure ()

gboolean            gst_photography_set_exposure        (GstPhotography *photo,
                                                         guint exposure);


gst_photography_set_white_balance_mode ()

gboolean            gst_photography_set_white_balance_mode
                                                        (GstPhotography *photo,
                                                         GstWhiteBalanceMode wb_mode);


gst_photography_set_colour_tone_mode ()

gboolean            gst_photography_set_colour_tone_mode
                                                        (GstPhotography *photo,
                                                         GstColourToneMode tone_mode);


gst_photography_set_scene_mode ()

gboolean            gst_photography_set_scene_mode      (GstPhotography *photo,
                                                         GstSceneMode scene_mode);


gst_photography_set_flash_mode ()

gboolean            gst_photography_set_flash_mode      (GstPhotography *photo,
                                                         GstFlashMode flash_mode);


gst_photography_set_noise_reduction ()

gboolean            gst_photography_set_noise_reduction (GstPhotography *photo,
                                                         GstPhotographyNoiseReduction noise_reduction);


gst_photography_set_zoom ()

gboolean            gst_photography_set_zoom            (GstPhotography *photo,
                                                         gfloat zoom);


gst_photography_get_capabilities ()

GstPhotoCaps        gst_photography_get_capabilities    (GstPhotography *photo);


gst_photography_prepare_for_capture ()

gboolean            gst_photography_prepare_for_capture (GstPhotography *photo,
                                                         GstPhotoCapturePrepared func,
                                                         GstCaps *capture_caps,
                                                         gpointer user_data);


gst_photography_set_autofocus ()

void                gst_photography_set_autofocus       (GstPhotography *photo,
                                                         gboolean on);


gst_photography_set_config ()

gboolean            gst_photography_set_config          (GstPhotography *photo,
                                                         GstPhotoSettings *config);


gst_photography_get_config ()

gboolean            gst_photography_get_config          (GstPhotography *photo,
                                                         GstPhotoSettings *config);

Property Details

The "aperture" property

  "aperture"                 guint                 : Read / Write

Aperture defines the size of lens opening (0 = auto).

Allowed values: <= 255

Default value: 0


The "capabilities" property

  "capabilities"             gulong                : Read

Tells the photo capabilities of the device.


The "colour-tone-mode" property

  "colour-tone-mode"         GstColourToneMode     : Read / Write

Colour tone setting changes colour shading in the photo.

Default value: GST_PHOTOGRAPHY_COLOUR_TONE_MODE_NORMAL


The "ev-compensation" property

  "ev-compensation"          gfloat                : Read / Write

EV compensation affects the brightness of the image.

Allowed values: [-2.5,2.5]

Default value: 0


The "exposure" property

  "exposure"                 guint                 : Read / Write

Exposure time defines how long the shutter will stay open (0 = auto).

Default value: 0


The "flash-mode" property

  "flash-mode"               GstFlashMode          : Read / Write

Flash mode defines how the flash light should be used.

Default value: GST_PHOTOGRAPHY_FLASH_MODE_AUTO


The "flicker-mode" property

  "flicker-mode"             GstFlickerReductionMode  : Read / Write

Flicker reduction mode defines a line frequency for flickering prevention.

Default value: GST_PHOTOGRAPHY_FLICKER_REDUCTION_OFF


The "focus-mode" property

  "focus-mode"               GstFocusMode          : Read / Write

Focus mode defines the range of focal lengths to use in autofocus search.

Default value: GST_PHOTOGRAPHY_FOCUS_MODE_AUTO


The "image-capture-supported-caps" property

  "image-capture-supported-caps" GstCaps*              : Read

Caps describing supported image capture formats.


The "iso-speed" property

  "iso-speed"                guint                 : Read / Write

ISO speed defines the light sensitivity (0 = auto).

Allowed values: <= 6400

Default value: 0


The "scene-mode" property

  "scene-mode"               GstSceneMode          : Read / Write

Scene mode works as a preset for different photo shooting mode settings.

Default value: GST_PHOTOGRAPHY_SCENE_MODE_AUTO


The "white-balance-mode" property

  "white-balance-mode"       GstWhiteBalanceMode   : Read / Write

White balance affects the color temperature of the photo.

Default value: GST_PHOTOGRAPHY_WB_MODE_AUTO


The "image-preview-supported-caps" property

  "image-preview-supported-caps" GstCaps*              : Read

Caps describing supported image preview formats.


The "noise-reduction" property

  "noise-reduction"          GstPhotographyNoiseReduction  : Read / Write

Which noise reduction modes are enabled (0 = disabled).


The "zoom" property

  "zoom"                     gfloat                : Read / Write

How much the resulted image will be zoomed.

Allowed values: [1,10]

Default value: 1