[media] v4l2: Add settings for Horizontal and Vertical MV Search Range
Adding V4L2 controls for horizontal and vertical search range in pixels for motion estimation module in video encoder. Signed-off-by: Swami Nathan <swaminath.p@samsung.com> Signed-off-by: Amit Grover <amit.grover@samsung.com> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: Kamil Debski <k.debski@samsung.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
Родитель
60aa4c6fa5
Коммит
bf0bedd371
|
@ -2256,6 +2256,26 @@ Applicable to the MPEG1, MPEG2, MPEG4 encoders.</entry>
|
||||||
<entry>integer</entry>
|
<entry>integer</entry>
|
||||||
</row><row><entry spanname="descr">Sets the initial delay in milliseconds for
|
</row><row><entry spanname="descr">Sets the initial delay in milliseconds for
|
||||||
VBV buffer control.</entry>
|
VBV buffer control.</entry>
|
||||||
|
</row>
|
||||||
|
|
||||||
|
<row><entry></entry></row>
|
||||||
|
<row id=""v4l2-mpeg-video-hor-search-range">
|
||||||
|
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE</constant> </entry>
|
||||||
|
<entry>integer</entry>
|
||||||
|
</row>
|
||||||
|
<row><entry spanname="descr">Horizontal search range defines maximum horizontal search area in pixels
|
||||||
|
to search and match for the present Macroblock (MB) in the reference picture. This V4L2 control macro is used to set
|
||||||
|
horizontal search range for motion estimation module in video encoder.</entry>
|
||||||
|
</row>
|
||||||
|
|
||||||
|
<row><entry></entry></row>
|
||||||
|
<row id="v4l2-mpeg-video-vert-search-range">
|
||||||
|
<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE</constant> </entry>
|
||||||
|
<entry>integer</entry>
|
||||||
|
</row>
|
||||||
|
<row><entry spanname="descr">Vertical search range defines maximum vertical search area in pixels
|
||||||
|
to search and match for the present Macroblock (MB) in the reference picture. This V4L2 control macro is used to set
|
||||||
|
vertical search range for motion estimation module in video encoder.</entry>
|
||||||
</row>
|
</row>
|
||||||
|
|
||||||
<row><entry></entry></row>
|
<row><entry></entry></row>
|
||||||
|
|
|
@ -735,6 +735,8 @@ const char *v4l2_ctrl_get_name(u32 id)
|
||||||
case V4L2_CID_MPEG_VIDEO_DEC_PTS: return "Video Decoder PTS";
|
case V4L2_CID_MPEG_VIDEO_DEC_PTS: return "Video Decoder PTS";
|
||||||
case V4L2_CID_MPEG_VIDEO_DEC_FRAME: return "Video Decoder Frame Count";
|
case V4L2_CID_MPEG_VIDEO_DEC_FRAME: return "Video Decoder Frame Count";
|
||||||
case V4L2_CID_MPEG_VIDEO_VBV_DELAY: return "Initial Delay for VBV Control";
|
case V4L2_CID_MPEG_VIDEO_VBV_DELAY: return "Initial Delay for VBV Control";
|
||||||
|
case V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE: return "Horizontal MV Search Range";
|
||||||
|
case V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE: return "Vertical MV Search Range";
|
||||||
case V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER: return "Repeat Sequence Header";
|
case V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER: return "Repeat Sequence Header";
|
||||||
|
|
||||||
/* VPX controls */
|
/* VPX controls */
|
||||||
|
@ -910,6 +912,10 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
|
||||||
*min = 0;
|
*min = 0;
|
||||||
*max = *step = 1;
|
*max = *step = 1;
|
||||||
break;
|
break;
|
||||||
|
case V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE:
|
||||||
|
case V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE:
|
||||||
|
*type = V4L2_CTRL_TYPE_INTEGER;
|
||||||
|
break;
|
||||||
case V4L2_CID_PAN_RESET:
|
case V4L2_CID_PAN_RESET:
|
||||||
case V4L2_CID_TILT_RESET:
|
case V4L2_CID_TILT_RESET:
|
||||||
case V4L2_CID_FLASH_STROBE:
|
case V4L2_CID_FLASH_STROBE:
|
||||||
|
|
|
@ -376,6 +376,8 @@ enum v4l2_mpeg_video_multi_slice_mode {
|
||||||
#define V4L2_CID_MPEG_VIDEO_DEC_FRAME (V4L2_CID_MPEG_BASE+224)
|
#define V4L2_CID_MPEG_VIDEO_DEC_FRAME (V4L2_CID_MPEG_BASE+224)
|
||||||
#define V4L2_CID_MPEG_VIDEO_VBV_DELAY (V4L2_CID_MPEG_BASE+225)
|
#define V4L2_CID_MPEG_VIDEO_VBV_DELAY (V4L2_CID_MPEG_BASE+225)
|
||||||
#define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE+226)
|
#define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE+226)
|
||||||
|
#define V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (V4L2_CID_MPEG_BASE+227)
|
||||||
|
#define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE+228)
|
||||||
|
|
||||||
#define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE+300)
|
#define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE+300)
|
||||||
#define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE+301)
|
#define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE+301)
|
||||||
|
|
Загрузка…
Ссылка в новой задаче