Add a new possible value to the V4L2 API for embedded VBI data, which allows for embedding of CC and teletext data in the userdata section of the GOP. This allows for compatibility with applications such as VLC which already have code to read captions out of the userdata area for ATSC A/53 compliant streams. This will be used by the cx18 driver to embed closed captions for NTSC streams. --- Documentation/DocBook/media/v4l/controls.xml | 4 ++++ Documentation/DocBook/media/v4l/dev-sliced-vbi.xml | 9 +++++++++ include/uapi/linux/v4l2-controls.h | 1 + 3 files changed, 14 insertions(+) diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 9e8f854..4b41b32 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -862,6 +862,10 @@ are:</entry> <entry>VBI in private packets, IVTV format (documented in the kernel sources in the file <filename>Documentation/video4linux/cx2341x/README.vbi</filename>)</entry> </row> + <row> + <entry><constant>V4L2_MPEG_STREAM_VBI_FMT_USERDATA_GOP</constant> </entry> + <entry>VBI in user_data section of GOP for MPEG2 streams (to embed closed captions that comply with ATSC A/53)</entry> + </row> </tbody> </entrytbl> </row> diff --git a/Documentation/DocBook/media/v4l/dev-sliced-vbi.xml b/Documentation/DocBook/media/v4l/dev-sliced-vbi.xml index 548f8ea..d295252 100644 --- a/Documentation/DocBook/media/v4l/dev-sliced-vbi.xml +++ b/Documentation/DocBook/media/v4l/dev-sliced-vbi.xml @@ -696,4 +696,13 @@ Sliced VBI services</link> for a description of the line payload.</entry> </table> </section> + + <section> + <title>MPEG Stream Embedded, Sliced VBI Data Format: USERDATA_GOP</title> + <para>The <link linkend="v4l2-mpeg-stream-vbi-fmt"><constant> +V4L2_MPEG_STREAM_VBI_FMT_USERDATA_GOP</constant></link> embedded sliced VBI +format injects EIA-608 closed captions or Teletext into the Userdata GOP area of the MPEG2 stream. This format allows for caption embedding which complies with the ATSC A/53 specification (the same format used for ATSC digital television streams in the United States).</para> + <para>This format is not as flexible as the IVTV format as it does not allow for embedding of arbitrary sliced VBI data. However it does have the advantage of being the same format used for ATSC digital television streams, meaning any application which can render captions for digital streams should be able to render captions for these streams as well with no additional code changes.</para> + </section> + </section> diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index 4dc0822..ad4901e 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h @@ -166,6 +166,7 @@ enum v4l2_mpeg_stream_type { enum v4l2_mpeg_stream_vbi_fmt { V4L2_MPEG_STREAM_VBI_FMT_NONE = 0, /* No VBI in the MPEG stream */ V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1, /* VBI in private packets, IVTV format */ + V4L2_MPEG_STREAM_VBI_FMT_USERDATA_GOP = 2, /* Inject VBI into user_data GOP */ }; /* MPEG audio controls specific to multiplexed streams */ -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html