stream.data_type = MM_CAM_STREAM_DATA_ENCODED;
stream.data.encoded.data = mapinfo.data;
stream.data.encoded.length_data = stream.length_total;
+ stream.data.encoded.is_delta_frame = GST_BUFFER_FLAG_IS_SET(buffer, GST_BUFFER_FLAG_DELTA_UNIT);
/*
- _mmcam_dbg_log("H264[num_planes:%d] [0]p:%p,size:%d",
- stream.num_planes, stream.data.encoded.data, stream.data.encoded.length_data);
+ _mmcam_dbg_log("H264[num_planes:%d] [0]p:%p,size:%d,is_delta:%d",
+ stream.num_planes,
+ stream.data.encoded.data,
+ stream.data.encoded.length_data,
+ stream.data.encoded.is_delta_frame);
*/
break;
case MM_PIXEL_FORMAT_INVZ:
bool _mmcamcorder_set_encoded_preview_bitrate(MMHandleType handle, int bitrate)
{
_MMCamcorderSubContext *sc = NULL;
- GstCameraControl *CameraControl = NULL;
- GstCameraControlChannel *CameraControlChannel = NULL;
- const GList *controls = NULL;
- const GList *item = NULL;
if ((void *)handle == NULL) {
_mmcam_dbg_warn("handle is NULL");
_mmcam_dbg_log("set encoded preview bitrate : %d bps", bitrate);
- CameraControl = GST_CAMERA_CONTROL(sc->element[_MMCAMCORDER_VIDEOSRC_SRC].gst);
- controls = gst_camera_control_list_channels(CameraControl);
- _mmcam_dbg_log("controls : %p", controls);
- if (controls != NULL) {
- for (item = controls ; item && item->data ; item = item->next) {
- CameraControlChannel = item->data;
- _mmcam_dbg_log("label : %s", CameraControlChannel->label);
- if (!strcmp(CameraControlChannel->label, "bitrate")) {
- _mmcam_dbg_log("set encoded preview bitrate %d", bitrate);
- return gst_camera_control_set_value(CameraControl, CameraControlChannel, bitrate);
- }
- }
-
- _mmcam_dbg_warn("failed to find \"bitrate\" control channel");
- }
+ MMCAMCORDER_G_OBJECT_SET(sc->element[_MMCAMCORDER_VIDEOSRC_SRC].gst, "bitrate", bitrate);
- return FALSE;
+ return TRUE;
}
-bool _mmcamcorder_set_encoded_preview_gop_interval(MMHandleType handle, int interval)
+bool _mmcamcorder_set_encoded_preview_gop_interval(MMHandleType handle, int gop_interval)
{
_MMCamcorderSubContext *sc = NULL;
return FALSE;
}
- _mmcam_dbg_log("set encoded preview GOP interval : %d ms", interval);
+ _mmcam_dbg_log("set encoded preview GOP interval : %d ms", gop_interval);
- MMCAMCORDER_G_OBJECT_SET(sc->element[_MMCAMCORDER_VIDEOSRC_SRC].gst, "newgop-interval", interval);
+ MMCAMCORDER_G_OBJECT_SET(sc->element[_MMCAMCORDER_VIDEOSRC_SRC].gst, "gop-interval", gop_interval);
return TRUE;
}