The "AYUV" format is defined by Microsoft as their preferred format for 4:4:4 content, and so it is the format used by Intel VAAPI and QSV. As Microsoft like to define their byte ordering in little-endian fashion, the memory order is reversed, and so our pix_fmt, which follows memory order, has a reversed name (VUYA).
Unified · Split
| @@ -14,6 +14,9 @@ libavutil: 2021-04-27 · 13 unmodified lines | ||
| 14 | 14 | |
| 15 | 15 | API changes, most recent first: |
| 16 | 16 | |
| 17 | +2022-08-03 - xxxxxxxxxx - lavu 57.32.100 - pixfmt.h | |
| 18 | + Add AV_PIX_FMT_VUYA. | |
| 19 | + | |
| 17 | 20 | 2022-08-xx - xxxxxxxxxx - lavc 59.41.100 - avcodec.h codec.h |
| 18 | 21 | Add AV_CODEC_FLAG_RECON_FRAME and AV_CODEC_CAP_ENCODER_RECON_FRAME. |
| 19 | 22 | avcodec_receive_frame() may now be used on encoders when |
| @@ -2491,6 +2491,19 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = { · 2490 unmodified lines | ||
| 2491 | 2491 | }, |
| 2492 | 2492 | .flags = AV_PIX_FMT_FLAG_PLANAR, |
| 2493 | 2493 | }, |
| 2494 | + [AV_PIX_FMT_VUYA] = { | |
| 2495 | + .name = "vuya", | |
| 2496 | + .nb_components = 4, | |
| 2497 | + .log2_chroma_w = 0, | |
| 2498 | + .log2_chroma_h = 0, | |
| 2499 | + .comp = { | |
| 2500 | + { 0, 4, 2, 0, 8 }, /* Y */ | |
| 2501 | + { 0, 4, 1, 0, 8 }, /* U */ | |
| 2502 | + { 0, 4, 0, 0, 8 }, /* V */ | |
| 2503 | + { 0, 4, 3, 0, 8 }, /* A */ | |
| 2504 | + }, | |
| 2505 | + .flags = AV_PIX_FMT_FLAG_ALPHA, | |
| 2506 | + }, | |
| 2494 | 2507 | }; |
| 2495 | 2508 | |
| 2496 | 2509 | static const char * const color_range_names[] = { |
| @@ -367,6 +367,8 @@ enum AVPixelFormat { · 366 unmodified lines | ||
| 367 | 367 | AV_PIX_FMT_P416BE, ///< interleaved chroma YUV 4:4:4, 48bpp, big-endian |
| 368 | 368 | AV_PIX_FMT_P416LE, ///< interleaved chroma YUV 4:4:4, 48bpp, little-endian |
| 369 | 369 | |
| 370 | + AV_PIX_FMT_VUYA, ///< packed VUYA 4:4:4, 32bpp, VUYAVUYA... | |
| 371 | + | |
| 370 | 372 | AV_PIX_FMT_NB ///< number of pixel formats, DO NOT USE THIS if you want to link with shared libav* because the number of formats might differ between versions |
| 371 | 373 | }; |
| 372 | 374 | |
| @@ -79,7 +79,7 @@ · 78 unmodified lines | ||
| 79 | 79 | */ |
| 80 | 80 | |
| 81 | 81 | #define LIBAVUTIL_VERSION_MAJOR 57 |
| 82 | −#define LIBAVUTIL_VERSION_MINOR 31 | |
| 82 | +#define LIBAVUTIL_VERSION_MINOR 32 | |
| 83 | 83 | #define LIBAVUTIL_VERSION_MICRO 100 |
| 84 | 84 | |
| 85 | 85 | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ |
| @@ -246,3 +246,4 @@ p216be planes: 2, linesizes: 128 128 0 0, plane_sizes: 6144 6144 · 245 unmodified lines | ||
| 246 | 246 | p216le planes: 2, linesizes: 128 128 0 0, plane_sizes: 6144 6144 0 0, plane_offsets: 6144 0 0, total_size: 12288 |
| 247 | 247 | p416be planes: 2, linesizes: 128 256 0 0, plane_sizes: 6144 12288 0 0, plane_offsets: 6144 0 0, total_size: 18432 |
| 248 | 248 | p416le planes: 2, linesizes: 128 256 0 0, plane_sizes: 6144 12288 0 0, plane_offsets: 6144 0 0, total_size: 18432 |
| 249 | +vuya planes: 1, linesizes: 256 0 0 0, plane_sizes: 12288 0 0 0, plane_offsets: 0 0 0, total_size: 12288 | |
| @@ -215,6 +215,7 @@ isYUV: · 214 unmodified lines | ||
| 215 | 215 | p416le |
| 216 | 216 | uyvy422 |
| 217 | 217 | uyyvyy411 |
| 218 | + vuya | |
| 218 | 219 | xyz12be |
| 219 | 220 | xyz12le |
| 220 | 221 | y210be |
| @@ -654,6 +655,7 @@ ALPHA: · 433 unmodified lines | ||
| 654 | 655 | rgb32_1 |
| 655 | 656 | rgba64be |
| 656 | 657 | rgba64le |
| 658 | + vuya | |
| 657 | 659 | ya16be |
| 658 | 660 | ya16le |
| 659 | 661 | ya8 |
| @@ -739,6 +741,7 @@ Packed: · 79 unmodified lines | ||
| 739 | 741 | rgba64le |
| 740 | 742 | uyvy422 |
| 741 | 743 | uyyvyy411 |
| 744 | + vuya | |
| 742 | 745 | x2bgr10be |
| 743 | 746 | x2bgr10le |
| 744 | 747 | x2rgb10be |
| @@ -967,5 +970,6 @@ DataInHighBits: · 222 unmodified lines | ||
| 967 | 970 | SwappedChroma: |
| 968 | 971 | nv21 |
| 969 | 972 | nv42 |
| 973 | + vuya | |
| 970 | 974 | yvyu422 |
| 971 | 975 | |