CheeseCameraDeviceMonitor

CheeseCameraDeviceMonitor — Simple object to enumerate video devices

Stability Level

Unstable, unless otherwise indicated

Functions

Signals

Types and Values

Object Hierarchy

    GObject
    ╰── CheeseCameraDeviceMonitor

Includes

#include <cheese/cheese-camera-device-monitor.h>

Description

CheeseCameraDeviceMonitor provides a basic interface for video device enumeration and hotplugging.

It uses GstDeviceMonitor to list video devices. It is also capable to monitor device plugging and emit a CheeseCameraDeviceMonitor::added or CheeseCameraDeviceMonitor::removed signal when an event happens.

Functions

cheese_camera_device_monitor_new ()

CheeseCameraDeviceMonitor *
cheese_camera_device_monitor_new (void);

Returns a new CheeseCameraDeviceMonitor object.

Returns

a new CheeseCameraDeviceMonitor object.


cheese_camera_device_monitor_coldplug ()

void
cheese_camera_device_monitor_coldplug (CheeseCameraDeviceMonitor *monitor);

Enumerate plugged in cameras and emit ::added for those which already exist. This is only required when your program starts, so be sure to connect to at least the ::added signal before calling this function.

Parameters

Types and Values

struct CheeseCameraDeviceMonitorClass

struct CheeseCameraDeviceMonitorClass {
  void (*added)   (CheeseCameraDeviceMonitor *monitor,
                   CheeseCameraDevice        *device);
  void (*removed) (CheeseCameraDeviceMonitor *monitor,
                   CheeseCameraDevice        *device);
};

Class for CheeseCameraDeviceMonitor.

Members

added ()

invoked when a new video capture device is connected

 

removed ()

invoked when a video capture device is removed

 

struct CheeseCameraDeviceMonitor

struct CheeseCameraDeviceMonitor;

Use the accessor functions below.

Signal Details

The “added” signal

void
user_function (CheeseCameraDeviceMonitor *monitor,
               CheeseCameraDevice        *device,
               gpointer                   user_data)

The ::added signal is emitted when a camera is added, or on start-up after cheese_camera_device_monitor_coldplug() is called.

Parameters

monitor

the CheeseCameraDeviceMonitor that emitted the signal

 

device

a new CheeseCameraDevice representing the video capture device

 

user_data

user data set when the signal handler was connected.

 

Flags: Action


The “removed” signal

void
user_function (CheeseCameraDeviceMonitor *monitor,
               CheeseCameraDevice        *device,
               gpointer                   user_data)

The ::removed signal is emitted when a camera is unplugged, or disabled on the system.

Parameters

monitor

the CheeseCameraDeviceMonitor that emitted the signal

 

device

the CheeseCameraDevice that was removed

 

user_data

user data set when the signal handler was connected.

 

Flags: Action