diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
index dfed3a8d18a8..e2046754e871 100644
--- a/Documentation/DocBook/media/v4l/controls.xml
+++ b/Documentation/DocBook/media/v4l/controls.xml
@@ -678,7 +678,8 @@ caption of a Tab page in a GUI, for example.
The MPEG-1, -2 or -4
output stream type. One cannot assume anything here. Each hardware
MPEG encoder tends to support different subsets of the available MPEG
-stream types. The currently defined stream types are:
+stream types. This control is specific to multiplexed MPEG streams.
+The currently defined stream types are:
@@ -808,6 +809,7 @@ frequency. Possible values are:
V4L2_CID_MPEG_AUDIO_ENCODING
enum v4l2_mpeg_audio_encoding
MPEG Audio encoding.
+This control is specific to multiplexed MPEG streams.
Possible values are:
@@ -1258,7 +1260,8 @@ and reproducible audio bitstream. 0 = unmuted, 1 = muted.
V4L2_CID_MPEG_VIDEO_ENCODING
enum v4l2_mpeg_video_encoding
MPEG Video encoding
-method. Possible values are:
+method. This control is specific to multiplexed MPEG streams.
+Possible values are:
diff --git a/Documentation/DocBook/media/v4l/pixfmt.xml b/Documentation/DocBook/media/v4l/pixfmt.xml
index 389432d780a7..2ff6b7776d7f 100644
--- a/Documentation/DocBook/media/v4l/pixfmt.xml
+++ b/Documentation/DocBook/media/v4l/pixfmt.xml
@@ -741,10 +741,55 @@ information.
V4L2_PIX_FMT_MPEG
'MPEG'
- MPEG stream. The actual format is determined by
+ MPEG multiplexed stream. The actual format is determined by
extended control V4L2_CID_MPEG_STREAM_TYPE, see
.
+
+ V4L2_PIX_FMT_H264
+ 'H264'
+ H264 video elementary stream with start codes.
+
+
+ V4L2_PIX_FMT_H264_NO_SC
+ 'AVC1'
+ H264 video elementary stream without start codes.
+
+
+ V4L2_PIX_FMT_H263
+ 'H263'
+ H263 video elementary stream.
+
+
+ V4L2_PIX_FMT_MPEG1
+ 'MPG1'
+ MPEG1 video elementary stream.
+
+
+ V4L2_PIX_FMT_MPEG2
+ 'MPG2'
+ MPEG2 video elementary stream.
+
+
+ V4L2_PIX_FMT_MPEG4
+ 'MPG4'
+ MPEG4 video elementary stream.
+
+
+ V4L2_PIX_FMT_XVID
+ 'XVID'
+ Xvid video elementary stream.
+
+
+ V4L2_PIX_FMT_VC1_ANNEX_G
+ 'VC1G'
+ VC1, SMPTE 421M Annex G compliant stream.
+
+
+ V4L2_PIX_FMT_VC1_ANNEX_L
+ 'VC1L'
+ VC1, SMPTE 421M Annex L compliant stream.
+
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 8b1224c1c536..cb22a2c7a467 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -376,7 +376,16 @@ struct v4l2_pix_format {
#define V4L2_PIX_FMT_MJPEG v4l2_fourcc('M', 'J', 'P', 'G') /* Motion-JPEG */
#define V4L2_PIX_FMT_JPEG v4l2_fourcc('J', 'P', 'E', 'G') /* JFIF JPEG */
#define V4L2_PIX_FMT_DV v4l2_fourcc('d', 'v', 's', 'd') /* 1394 */
-#define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 */
+#define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 Multiplexed */
+#define V4L2_PIX_FMT_H264 v4l2_fourcc('H', '2', '6', '4') /* H264 with start codes */
+#define V4L2_PIX_FMT_H264_NO_SC v4l2_fourcc('A', 'V', 'C', '1') /* H264 without start codes */
+#define V4L2_PIX_FMT_H263 v4l2_fourcc('H', '2', '6', '3') /* H263 */
+#define V4L2_PIX_FMT_MPEG1 v4l2_fourcc('M', 'P', 'G', '1') /* MPEG-1 ES */
+#define V4L2_PIX_FMT_MPEG2 v4l2_fourcc('M', 'P', 'G', '2') /* MPEG-2 ES */
+#define V4L2_PIX_FMT_MPEG4 v4l2_fourcc('M', 'P', 'G', '4') /* MPEG-4 ES */
+#define V4L2_PIX_FMT_XVID v4l2_fourcc('X', 'V', 'I', 'D') /* Xvid */
+#define V4L2_PIX_FMT_VC1_ANNEX_G v4l2_fourcc('V', 'C', '1', 'G') /* SMPTE 421M Annex G compliant stream */
+#define V4L2_PIX_FMT_VC1_ANNEX_L v4l2_fourcc('V', 'C', '1', 'L') /* SMPTE 421M Annex L compliant stream */
/* Vendor-specific formats */
#define V4L2_PIX_FMT_CPIA1 v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */
@@ -1154,7 +1163,7 @@ enum v4l2_colorfx {
#define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900)
#define V4L2_CID_MPEG_CLASS (V4L2_CTRL_CLASS_MPEG | 1)
-/* MPEG streams */
+/* MPEG streams, specific to multiplexed streams */
#define V4L2_CID_MPEG_STREAM_TYPE (V4L2_CID_MPEG_BASE+0)
enum v4l2_mpeg_stream_type {
V4L2_MPEG_STREAM_TYPE_MPEG2_PS = 0, /* MPEG-2 program stream */
@@ -1176,7 +1185,7 @@ enum v4l2_mpeg_stream_vbi_fmt {
V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1, /* VBI in private packets, IVTV format */
};
-/* MPEG audio */
+/* MPEG audio controls specific to multiplexed streams */
#define V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ (V4L2_CID_MPEG_BASE+100)
enum v4l2_mpeg_audio_sampling_freq {
V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 = 0,
@@ -1292,7 +1301,7 @@ enum v4l2_mpeg_audio_ac3_bitrate {
V4L2_MPEG_AUDIO_AC3_BITRATE_640K = 18,
};
-/* MPEG video */
+/* MPEG video controls specific to multiplexed streams */
#define V4L2_CID_MPEG_VIDEO_ENCODING (V4L2_CID_MPEG_BASE+200)
enum v4l2_mpeg_video_encoding {
V4L2_MPEG_VIDEO_ENCODING_MPEG_1 = 0,