typedef enum {
CAMERA_DEVICE_TYPE_V4L2,
CAMERA_DEVICE_TYPE_TIZEN,
+ CAMERA_DEVICE_TYPE_DUMMY,
} camera_device_type_e;
typedef enum {
static camera_info_s __camera_infos[] = {
[CAMERA_DEVICE_TYPE_V4L2] = { "v4l2src", "device", "/dev/video", CAMERA_DEVICE_PROP_VAL_TYPE_STRING },
[CAMERA_DEVICE_TYPE_TIZEN] = { "camerasrc", "camera-id", NULL, CAMERA_DEVICE_PROP_VAL_TYPE_INT },
+ [CAMERA_DEVICE_TYPE_DUMMY] = { "videotestsrc", "pattern", NULL, CAMERA_DEVICE_PROP_VAL_TYPE_INT }, /* this might be for the emulator */
};
static int __get_device_type(webrtc_s *webrtc, camera_device_type_e *type)
RET_VAL_IF(type == NULL, WEBRTC_ERROR_INVALID_PARAMETER, "type is NULL");
camera_factory_name = _get_source_element(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA);
- for (i = CAMERA_DEVICE_TYPE_V4L2; i < CAMERA_DEVICE_TYPE_TIZEN + 1; i++) {
+ for (i = CAMERA_DEVICE_TYPE_V4L2; i < CAMERA_DEVICE_TYPE_DUMMY + 1; i++) {
if (!strcmp(__camera_infos[i].factory_name, camera_factory_name)) {
*type = (camera_device_type_e)i;
return WEBRTC_ERROR_NONE;
if ((ret = __validate_source_and_get_camera_device_type(webrtc, source_id, &type, &camerasrc)) != WEBRTC_ERROR_NONE)
return ret;
+ RET_VAL_IF(device_id == NULL, WEBRTC_ERROR_INVALID_PARAMETER, "device_id is NULL");
+
switch (__camera_infos[type].device_prop_value_type) {
case CAMERA_DEVICE_PROP_VAL_TYPE_INT: {
gint id;