mm-video-v4l2: venc: add dynamic flip support
Add to support dynamic flip configs.
Change-Id: I9c4f91a193bed46726b940298a175555bd19febc
diff --git a/mm-video-v4l2/vidc/venc/inc/video_encoder_device_v4l2.h b/mm-video-v4l2/vidc/venc/inc/video_encoder_device_v4l2.h
index 569d53d..5cd20cf 100644
--- a/mm-video-v4l2/vidc/venc/inc/video_encoder_device_v4l2.h
+++ b/mm-video-v4l2/vidc/venc/inc/video_encoder_device_v4l2.h
@@ -524,6 +524,7 @@
QOMX_VIDEO_INTRAPERIODTYPE intraperiod;
OMX_CONFIG_INTRAREFRESHVOPTYPE intravoprefresh;
OMX_CONFIG_ROTATIONTYPE rotation;
+ OMX_CONFIG_MIRRORTYPE mirror;
OMX_VIDEO_VP8REFERENCEFRAMETYPE vp8refframe;
OMX_QCOM_VIDEO_CONFIG_LTRMARK_TYPE markltr;
OMX_QCOM_VIDEO_CONFIG_LTRUSE_TYPE useltr;
diff --git a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
index 41d2f24..36657b7 100644
--- a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
+++ b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2.cpp
@@ -616,6 +616,11 @@
if (!venc_config_bitrate(&iter->config_data.bitrate))
goto bailout;
break;
+ case OMX_IndexConfigCommonMirror:
+ DEBUG_PRINT_LOW("handle_dynamic_config: OMX_IndexConfigCommonMirror");
+ if (!venc_set_mirror(iter->config_data.mirror.eMirror))
+ goto bailout;
+ break;
default:
DEBUG_PRINT_ERROR("Unsupported dynamic config type %d with timestamp %lld us", iter->type, iter->timestamp);
goto bailout;
diff --git a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2_params.cpp b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2_params.cpp
index 561cf05..830a06a 100755
--- a/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2_params.cpp
+++ b/mm-video-v4l2/vidc/venc/src/video_encoder_device_v4l2_params.cpp
@@ -480,6 +480,9 @@
case OMX_IndexConfigVideoVp8ReferenceFrame:
memcpy(&newConfig.config_data.vp8refframe, config, sizeof(OMX_VIDEO_VP8REFERENCEFRAMETYPE));
break;
+ case OMX_IndexConfigCommonMirror:
+ memcpy(&newConfig.config_data.mirror, config, sizeof(OMX_CONFIG_MIRRORTYPE));
+ break;
default:
DEBUG_PRINT_INFO("Unsupported dynamic config.");
return false;