ArvCamera

ArvCamera — Class for generic camera control

Synopsis

enum                ArvCameraVendor;
                    ArvCamera;
ArvCamera *         arv_camera_new                      (const char *name);
ArvStream *         arv_camera_create_stream            (ArvCamera *camera,
                                                         ArvStreamCallback callback,
                                                         void *user_data);
const char *        arv_camera_get_vendor_name          (ArvCamera *camera);
const char *        arv_camera_get_model_name           (ArvCamera *camera);
const char *        arv_camera_get_device_id            (ArvCamera *camera);
void                arv_camera_get_sensor_size          (ArvCamera *camera,
                                                         gint *width,
                                                         gint *height);
void                arv_camera_set_region               (ArvCamera *camera,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height);
void                arv_camera_get_region               (ArvCamera *camera,
                                                         gint *x,
                                                         gint *y,
                                                         gint *width,
                                                         gint *height);
void                arv_camera_set_binning              (ArvCamera *camera,
                                                         gint dx,
                                                         gint dy);
void                arv_camera_get_binning              (ArvCamera *camera,
                                                         gint *dx,
                                                         gint *dy);
void                arv_camera_set_pixel_format         (ArvCamera *camera,
                                                         ArvPixelFormat format);
ArvPixelFormat      arv_camera_get_pixel_format         (ArvCamera *camera);
void                arv_camera_start_acquisition        (ArvCamera *camera);
void                arv_camera_stop_acquisition         (ArvCamera *camera);
void                arv_camera_set_acquisition_mode     (ArvCamera *camera,
                                                         ArvAcquisitionMode value);
ArvAcquisitionMode  arv_camera_get_acquisition_mode     (ArvCamera *camera);
void                arv_camera_set_frame_rate           (ArvCamera *camera,
                                                         double frame_rate);
double              arv_camera_get_frame_rate           (ArvCamera *camera);
void                arv_camera_set_trigger              (ArvCamera *camera,
                                                         const char *source);
void                arv_camera_set_exposure_time        (ArvCamera *camera,
                                                         double exposure_time_us);
double              arv_camera_get_exposure_time        (ArvCamera *camera);
void                arv_camera_set_gain                 (ArvCamera *camera,
                                                         gint64 gain);
gint64              arv_camera_get_gain                 (ArvCamera *camera);
guint               arv_camera_get_payload              (ArvCamera *camera);
enum                ArvAcquisitionMode;
const char *        arv_acquisition_mode_to_string      (ArvAcquisitionMode value);
ArvAcquisitionMode  arv_acquisition_mode_from_string    (const char *string);

Object Hierarchy

  GObject
   +----ArvCamera

Description

ArvCamera is a class for the generic control of cameras. It hides the complexity of the genicam interface by providing a simple API, with the drawback of not exposing all the available features. See ArvDevice and ArvGc for a more advanced use of the Aravis library.

Details

enum ArvCameraVendor

typedef enum {
	ARV_CAMERA_VENDOR_UNKNOWN,
	ARV_CAMERA_VENDOR_BASLER,
	ARV_CAMERA_VENDOR_PROSILICA
} ArvCameraVendor;

ARV_CAMERA_VENDOR_UNKNOWN

unknown camera vendor

ARV_CAMERA_VENDOR_BASLER

Basler

ARV_CAMERA_VENDOR_PROSILICA

Prosilica

ArvCamera

typedef struct _ArvCamera ArvCamera;

arv_camera_new ()

ArvCamera *         arv_camera_new                      (const char *name);

Creates a new ArvCamera. If name is null, it will instantiate the first available camera

name :

name of the camera. Return value: a new ArvCamera.. allow-none.

arv_camera_create_stream ()

ArvStream *         arv_camera_create_stream            (ArvCamera *camera,
                                                         ArvStreamCallback callback,
                                                         void *user_data);

Creates a new ArvStream for video stream handling. See arv_device_create_stream for details regarding the callback function.

camera :

a ArvCamera

callback :

a frame processing callback

user_data :

closure Return value: a new ArvStream.

arv_camera_get_vendor_name ()

const char *        arv_camera_get_vendor_name          (ArvCamera *camera);

camera :

a ArvCamera Return value: the camera vendor name.

arv_camera_get_model_name ()

const char *        arv_camera_get_model_name           (ArvCamera *camera);

camera :

a ArvCamera Return value: the camera model name.

arv_camera_get_device_id ()

const char *        arv_camera_get_device_id            (ArvCamera *camera);

camera :

a ArvCamera Return value: the camera device ID.

arv_camera_get_sensor_size ()

void                arv_camera_get_sensor_size          (ArvCamera *camera,
                                                         gint *width,
                                                         gint *height);

camera :

a ArvCamera

width :

camera sensor width placeholder

height :

camera sensor height placeholder

arv_camera_set_region ()

void                arv_camera_set_region               (ArvCamera *camera,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height);

Defines the region of interest which will be transmitted in the video stream.

camera :

a ArvCamera

x :

x offset

y :

y_offset

width :

region width

height :

region height

arv_camera_get_region ()

void                arv_camera_get_region               (ArvCamera *camera,
                                                         gint *x,
                                                         gint *y,
                                                         gint *width,
                                                         gint *height);

Retrieves the current region of interest.

camera :

a ArvCamera

x :

x offset placeholder

y :

y_offset placeholder

width :

region width placeholder

height :

region height placeholder

arv_camera_set_binning ()

void                arv_camera_set_binning              (ArvCamera *camera,
                                                         gint dx,
                                                         gint dy);

Defines the binning in both directions. Not all cameras support this feature.

camera :

a ArvCamera

dx :

horizontal binning

dy :

vertical binning

arv_camera_get_binning ()

void                arv_camera_get_binning              (ArvCamera *camera,
                                                         gint *dx,
                                                         gint *dy);

Retrieves the binning in both directions.

camera :

a ArvCamera

dx :

horizontal binning placeholder

dy :

vertical binning placeholder

arv_camera_set_pixel_format ()

void                arv_camera_set_pixel_format         (ArvCamera *camera,
                                                         ArvPixelFormat format);

Defines the pixel format.

camera :

a ArvCamera

format :

pixel format

arv_camera_get_pixel_format ()

ArvPixelFormat      arv_camera_get_pixel_format         (ArvCamera *camera);

Retrieves the pixel format.

camera :

a ArvCamera

arv_camera_start_acquisition ()

void                arv_camera_start_acquisition        (ArvCamera *camera);

Starts the video stream acquisition.

camera :

a ArvCamera

arv_camera_stop_acquisition ()

void                arv_camera_stop_acquisition         (ArvCamera *camera);

Stops the video stream acquisition.

camera :

a ArvCamera

arv_camera_set_acquisition_mode ()

void                arv_camera_set_acquisition_mode     (ArvCamera *camera,
                                                         ArvAcquisitionMode value);

arv_camera_get_acquisition_mode ()

ArvAcquisitionMode  arv_camera_get_acquisition_mode     (ArvCamera *camera);

Retrieves the acquisition mode.

camera :

a ArvCamera Return value: the acquisition mode.

arv_camera_set_frame_rate ()

void                arv_camera_set_frame_rate           (ArvCamera *camera,
                                                         double frame_rate);

Configures a fixed frame rate mode. Once acquisition start is triggered, the video stream will be acquired with the given frame rate.

camera :

a ArvCamera

frame_rate :

frame rate, in Hz

arv_camera_get_frame_rate ()

double              arv_camera_get_frame_rate           (ArvCamera *camera);

camera :

a ArvCamera Return value: the actual frame rate, in Hz.

arv_camera_set_trigger ()

void                arv_camera_set_trigger              (ArvCamera *camera,
                                                         const char *source);

Configures the camera in trigger mode. Typical values for source are "Line1" or "Line2". See the camera documentation for the allowed values. The activation is set to rising edge. It can be changed by accessing the underlying device object.

camera :

a ArvCamera

source :

trigger source as string

arv_camera_set_exposure_time ()

void                arv_camera_set_exposure_time        (ArvCamera *camera,
                                                         double exposure_time_us);

Sets the exposure time. User should take care to set a value compatible with the desired frame rate.

camera :

a ArvCamera

exposure_time_us :

exposure time, in µs

arv_camera_get_exposure_time ()

double              arv_camera_get_exposure_time        (ArvCamera *camera);

camera :

a ArvCamera Return value: the current exposure time, in µs.

arv_camera_set_gain ()

void                arv_camera_set_gain                 (ArvCamera *camera,
                                                         gint64 gain);

Sets the gain of the ADC converter.

camera :

a ArvCamera

gain :

gain value

arv_camera_get_gain ()

gint64              arv_camera_get_gain                 (ArvCamera *camera);

camera :

a ArvCamera Return value: the current gain setting.

arv_camera_get_payload ()

guint               arv_camera_get_payload              (ArvCamera *camera);

Retrieves the size needed for the storage of an image. This value is used for the creation of the stream buffers.

camera :

a ArvCamera Return value: the frame storage size, in bytes.

enum ArvAcquisitionMode

typedef enum {
	ARV_ACQUISITION_MODE_CONTINUOUS,
	ARV_ACQUISITION_MODE_SINGLE_FRAME
} ArvAcquisitionMode;

ARV_ACQUISITION_MODE_CONTINUOUS

continuous acquisition

ARV_ACQUISITION_MODE_SINGLE_FRAME

only one frame will be acquired

arv_acquisition_mode_to_string ()

const char *        arv_acquisition_mode_to_string      (ArvAcquisitionMode value);

arv_acquisition_mode_from_string ()

ArvAcquisitionMode  arv_acquisition_mode_from_string    (const char *string);