[PATCH v9 2/6] [media] v4l: Add control definitions for new H264 encoder features

2012-10-02 Thread Arun Kumar K
New controls are added for supporting H264 encoding features like
- MVC frame packing
- Flexible macroblock ordering
- Arbitrary slice ordering
- Hierarchical coding

Signed-off-by: Jeongtae Park jtp.p...@samsung.com
Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com
Signed-off-by: Arun Kumar K arun...@samsung.com
---
 Documentation/DocBook/media/v4l/controls.xml |  268 +-
 drivers/media/v4l2-core/v4l2-ctrls.c |   42 
 include/linux/v4l2-controls.h|   41 
 3 files changed, 350 insertions(+), 1 deletions(-)

diff --git a/Documentation/DocBook/media/v4l/controls.xml 
b/Documentation/DocBook/media/v4l/controls.xml
index 272a5f7..09e09bd 100644
--- a/Documentation/DocBook/media/v4l/controls.xml
+++ b/Documentation/DocBook/media/v4l/controls.xml
@@ -1586,7 +1586,6 @@ frame counter of the frame that is currently displayed 
(decoded). This value is
 the decoder is started./entry
  /row
 
-
  rowentry/entry/row
  row
entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE/constantnbsp;/entry
@@ -2270,6 +2269,14 @@ Applicable to the MPEG1, MPEG2, MPEG4 encoders./entry
  /row
 
  rowentry/entry/row
+ row id=v4l2-mpeg-video-vbv-delay
+   entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_VBV_DELAY/constantnbsp;/entry
+   entryinteger/entry
+ /rowrowentry spanname=descrSets the initial delay in 
milliseconds for
+VBV buffer control./entry
+ /row
+
+ rowentry/entry/row
  row
entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_CPB_SIZE/constantnbsp;/entry
entryinteger/entry
@@ -2334,6 +2341,265 @@ Applicable to the MPEG4 decoder./entry
  /rowrowentry spanname=descrvop_time_increment value for 
MPEG4. Applicable to the MPEG4 encoder./entry
  /row
 
+ rowentry/entry/row
+ row
+   entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING/constantnbsp;/entry
+   entryboolean/entry
+ /row
+ rowentry spanname=descrEnable generation of frame packing 
supplemental enhancement information in the encoded bitstream.
+The frame packing SEI message contains the arrangement of L and R planes for 
3D viewing. Applicable to the H264 encoder./entry
+ /row
+
+ rowentry/entry/row
+ row
+   entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0/constantnbsp;/entry
+   entryboolean/entry
+ /row
+ rowentry spanname=descrSets current frame as frame0 in 
frame packing SEI.
+Applicable to the H264 encoder./entry
+ /row
+
+ rowentry/entry/row
+ row id=v4l2-mpeg-video-h264-sei-fp-arrangement-type
+   entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE/constantnbsp;/entry
+   
entryenumnbsp;v4l2_mpeg_video_h264_sei_fp_arrangement_type/entry
+ /row
+ rowentry spanname=descrFrame packing arrangement type for 
H264 SEI.
+Applicable to the H264 encoder.
+Possible values are:/entry
+ /row
+ row
+   entrytbl spanname=descr cols=2
+ tbody valign=top
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD/constantnbsp;/entry
+ entryPixels are alternatively from L and R./entry
+   /row
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN/constantnbsp;/entry
+ entryL and R are interlaced by column./entry
+   /row
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW/constantnbsp;/entry
+ entryL and R are interlaced by row./entry
+   /row
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE/constantnbsp;/entry
+ entryL is on the left, R on the right./entry
+   /row
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM/constantnbsp;/entry
+ entryL is on top, R on bottom./entry
+   /row
+   row
+ 
entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL/constantnbsp;/entry
+ entryOne view per frame./entry
+   /row
+ /tbody
+   /entrytbl
+ /row
+
+ rowentry/entry/row
+ row
+   entry 
spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_FMO/constantnbsp;/entry
+   entryboolean/entry
+ /row
+ 

RE: [PATCH v9 2/6] [media] v4l: Add control definitions for new H264 encoder features

2012-10-02 Thread Kamil Debski
 From: Arun Kumar K [mailto:arun...@samsung.com]
 Sent: 02 October 2012 16:56
 
 New controls are added for supporting H264 encoding features like
 - MVC frame packing
 - Flexible macroblock ordering
 - Arbitrary slice ordering
 - Hierarchical coding
 
 Signed-off-by: Jeongtae Park jtp.p...@samsung.com
 Signed-off-by: Naveen Krishna Chatradhi ch.nav...@samsung.com
 Signed-off-by: Arun Kumar K arun...@samsung.com

Acked-by: Kamil Debski k.deb...@samsung.com

 ---
  Documentation/DocBook/media/v4l/controls.xml |  268
+-
  drivers/media/v4l2-core/v4l2-ctrls.c |   42 
  include/linux/v4l2-controls.h|   41 
  3 files changed, 350 insertions(+), 1 deletions(-)
 
 diff --git a/Documentation/DocBook/media/v4l/controls.xml
 b/Documentation/DocBook/media/v4l/controls.xml
 index 272a5f7..09e09bd 100644
 --- a/Documentation/DocBook/media/v4l/controls.xml
 +++ b/Documentation/DocBook/media/v4l/controls.xml
 @@ -1586,7 +1586,6 @@ frame counter of the frame that is currently displayed
 (decoded). This value is
  the decoder is started./entry
 /row
 
 -
 rowentry/entry/row
 row
   entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE/constant
n
 bsp;/entry
 @@ -2270,6 +2269,14 @@ Applicable to the MPEG1, MPEG2, MPEG4
encoders./entry
 /row
 
 rowentry/entry/row
 +   row id=v4l2-mpeg-video-vbv-delay
 + entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_VBV_DELAY/constantnbsp;/entry
 + entryinteger/entry
 +   /rowrowentry spanname=descrSets the initial delay in
 milliseconds for
 +VBV buffer control./entry
 +   /row
 +
 +   rowentry/entry/row
 row
   entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_CPB_SIZE/constantnbsp;/en
tr
 y
   entryinteger/entry
 @@ -2334,6 +2341,265 @@ Applicable to the MPEG4 decoder./entry
 /rowrowentry spanname=descrvop_time_increment value for
 MPEG4. Applicable to the MPEG4 encoder./entry
 /row
 
 +   rowentry/entry/row
 +   row
 + entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING/constant
nb
 sp;/entry
 + entryboolean/entry
 +   /row
 +   rowentry spanname=descrEnable generation of frame packing
 supplemental enhancement information in the encoded bitstream.
 +The frame packing SEI message contains the arrangement of L and R planes
for 3D
 viewing. Applicable to the H264 encoder./entry
 +   /row
 +
 +   rowentry/entry/row
 +   row
 + entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0/const
an
 tnbsp;/entry
 + entryboolean/entry
 +   /row
 +   rowentry spanname=descrSets current frame as frame0 in
frame
 packing SEI.
 +Applicable to the H264 encoder./entry
 +   /row
 +
 +   rowentry/entry/row
 +   row id=v4l2-mpeg-video-h264-sei-fp-arrangement-type
 + entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE/cons
ta
 ntnbsp;/entry
 +
   entryenumnbsp;v4l2_mpeg_video_h264_sei_fp_arrangement_type/entry
 +   /row
 +   rowentry spanname=descrFrame packing arrangement type for
H264
 SEI.
 +Applicable to the H264 encoder.
 +Possible values are:/entry
 +   /row
 +   row
 + entrytbl spanname=descr cols=2
 +   tbody valign=top
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHEKERBOARD/con
st
 antnbsp;/entry
 +   entryPixels are alternatively from L and R./entry
 + /row
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN/constant

 nbsp;/entry
 +   entryL and R are interlaced by column./entry
 + /row
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW/constantn
bs
 p;/entry
 +   entryL and R are interlaced by row./entry
 + /row
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE/co
ns
 tantnbsp;/entry
 +   entryL is on the left, R on the right./entry
 + /row
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM/cons
ta
 ntnbsp;/entry
 +   entryL is on top, R on bottom./entry
 + /row
 + row
 +

entryconstantV4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL/consta
nt
 nbsp;/entry
 +   entryOne view per frame./entry
 + /row
 +   /tbody
 + /entrytbl
 +   /row
 +
 +   rowentry/entry/row
 +   row
 + entry

spanname=idconstantV4L2_CID_MPEG_VIDEO_H264_FMO/constantnbsp;/entry
 + entryboolean/entry
 +   /row