Introduce a new pixel format, V4L2_PIX_FMT_AV1, to the Video4Linux2(V4L2) API. This format is intended for AV1 bitstreams in stateful decoding/encoding workflows. The fourcc code 'AV10' is used to distinguish this format from the existing V4L2_PIX_FMT_AV1_FRAME, which is used for stateless AV1 decoder implementation.
Unified · Split
| @@ -275,6 +275,14 @@ Compressed Formats · 274 unmodified lines | |||
| 275 | of macroblocks to decode a full corresponding frame to the matching | 275 | of macroblocks to decode a full corresponding frame to the matching |
| 276 | capture buffer. | 276 | capture buffer. |
| 277 | 277 | ||
| 278 | * .. _V4L2-PIX-FMT-AV1: | ||
| 279 | |||
| 280 | - ``V4L2_PIX_FMT_AV1`` | ||
| 281 | - 'AV01' | ||
| 282 | - AV1 compressed video frame. This format is adapted for implementing AV1 | ||
| 283 | pipeline. The decoder implements stateful video decoder and expects one | ||
| 284 | temporal unit per buffer in OBU stream format. | ||
| 285 | The encoder generates one Temporal Unit per buffer. | ||
| 278 | .. raw:: latex | 286 | .. raw:: latex |
| 279 | 287 | ||
| 280 | \normalsize | 288 | \normalsize |
| @@ -775,6 +775,7 @@ struct v4l2_pix_format { · 774 unmodified lines | |||
| 775 | #define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */ | 775 | #define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */ |
| 776 | #define V4L2_PIX_FMT_HEVC_SLICE v4l2_fourcc('S', '2', '6', '5') /* HEVC parsed slices */ | 776 | #define V4L2_PIX_FMT_HEVC_SLICE v4l2_fourcc('S', '2', '6', '5') /* HEVC parsed slices */ |
| 777 | #define V4L2_PIX_FMT_AV1_FRAME v4l2_fourcc('A', 'V', '1', 'F') /* AV1 parsed frame */ | 777 | #define V4L2_PIX_FMT_AV1_FRAME v4l2_fourcc('A', 'V', '1', 'F') /* AV1 parsed frame */ |
| 778 | #define V4L2_PIX_FMT_AV1 v4l2_fourcc('A', 'V', '0', '1') /* AV1 */ | ||
| 778 | #define V4L2_PIX_FMT_SPK v4l2_fourcc('S', 'P', 'K', '0') /* Sorenson Spark */ | 779 | #define V4L2_PIX_FMT_SPK v4l2_fourcc('S', 'P', 'K', '0') /* Sorenson Spark */ |
| 779 | #define V4L2_PIX_FMT_RV30 v4l2_fourcc('R', 'V', '3', '0') /* RealVideo 8 */ | 780 | #define V4L2_PIX_FMT_RV30 v4l2_fourcc('R', 'V', '3', '0') /* RealVideo 8 */ |
| 780 | #define V4L2_PIX_FMT_RV40 v4l2_fourcc('R', 'V', '4', '0') /* RealVideo 9 & 10 */ | 781 | #define V4L2_PIX_FMT_RV40 v4l2_fourcc('R', 'V', '4', '0') /* RealVideo 9 & 10 */ |