1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00

avutil : add YUVA444P12 and YUVA422P12

This commit is contained in:
Martin Vignali 2018-11-24 16:12:00 +01:00
parent b80003fe28
commit 80b0624099
4 changed files with 82 additions and 1 deletions

View File

@ -2268,6 +2268,58 @@ static const AVPixFmtDescriptor av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
.flags = AV_PIX_FMT_FLAG_FLOAT,
.alias = "yf32le",
},
[AV_PIX_FMT_YUVA422P12BE] = {
.name = "yuva422p12be",
.nb_components = 4,
.log2_chroma_w = 1,
.log2_chroma_h = 0,
.comp = {
{ 0, 2, 0, 0, 12, 1, 11, 1 }, /* Y */
{ 1, 2, 0, 0, 12, 1, 11, 1 }, /* U */
{ 2, 2, 0, 0, 12, 1, 11, 1 }, /* V */
{ 3, 2, 0, 0, 12, 1, 11, 1 }, /* A */
},
.flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
},
[AV_PIX_FMT_YUVA422P12LE] = {
.name = "yuva422p12le",
.nb_components = 4,
.log2_chroma_w = 1,
.log2_chroma_h = 0,
.comp = {
{ 0, 2, 0, 0, 12, 1, 11, 1 }, /* Y */
{ 1, 2, 0, 0, 12, 1, 11, 1 }, /* U */
{ 2, 2, 0, 0, 12, 1, 11, 1 }, /* V */
{ 3, 2, 0, 0, 12, 1, 11, 1 }, /* A */
},
.flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
},
[AV_PIX_FMT_YUVA444P12BE] = {
.name = "yuva444p12be",
.nb_components = 4,
.log2_chroma_w = 0,
.log2_chroma_h = 0,
.comp = {
{ 0, 2, 0, 0, 12, 1, 11, 1 }, /* Y */
{ 1, 2, 0, 0, 12, 1, 11, 1 }, /* U */
{ 2, 2, 0, 0, 12, 1, 11, 1 }, /* V */
{ 3, 2, 0, 0, 12, 1, 11, 1 }, /* A */
},
.flags = AV_PIX_FMT_FLAG_BE | AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
},
[AV_PIX_FMT_YUVA444P12LE] = {
.name = "yuva444p12le",
.nb_components = 4,
.log2_chroma_w = 0,
.log2_chroma_h = 0,
.comp = {
{ 0, 2, 0, 0, 12, 1, 11, 1 }, /* Y */
{ 1, 2, 0, 0, 12, 1, 11, 1 }, /* U */
{ 2, 2, 0, 0, 12, 1, 11, 1 }, /* V */
{ 3, 2, 0, 0, 12, 1, 11, 1 }, /* A */
},
.flags = AV_PIX_FMT_FLAG_PLANAR | AV_PIX_FMT_FLAG_ALPHA,
},
};
#if FF_API_PLUS1_MINUS1
FF_ENABLE_DEPRECATION_WARNINGS

View File

@ -340,6 +340,11 @@ enum AVPixelFormat {
AV_PIX_FMT_GRAYF32BE, ///< IEEE-754 single precision Y, 32bpp, big-endian
AV_PIX_FMT_GRAYF32LE, ///< IEEE-754 single precision Y, 32bpp, little-endian
AV_PIX_FMT_YUVA422P12BE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), 12b alpha, big-endian
AV_PIX_FMT_YUVA422P12LE, ///< planar YUV 4:2:2,24bpp, (1 Cr & Cb sample per 2x1 Y samples), 12b alpha, little-endian
AV_PIX_FMT_YUVA444P12BE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), 12b alpha, big-endian
AV_PIX_FMT_YUVA444P12LE, ///< planar YUV 4:4:4,36bpp, (1 Cr & Cb sample per 1x1 Y samples), 12b alpha, little-endian
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
};
@ -416,6 +421,8 @@ enum AVPixelFormat {
#define AV_PIX_FMT_YUVA420P10 AV_PIX_FMT_NE(YUVA420P10BE, YUVA420P10LE)
#define AV_PIX_FMT_YUVA422P10 AV_PIX_FMT_NE(YUVA422P10BE, YUVA422P10LE)
#define AV_PIX_FMT_YUVA444P10 AV_PIX_FMT_NE(YUVA444P10BE, YUVA444P10LE)
#define AV_PIX_FMT_YUVA422P12 AV_PIX_FMT_NE(YUVA422P12BE, YUVA422P12LE)
#define AV_PIX_FMT_YUVA444P12 AV_PIX_FMT_NE(YUVA444P12BE, YUVA444P12LE)
#define AV_PIX_FMT_YUVA420P16 AV_PIX_FMT_NE(YUVA420P16BE, YUVA420P16LE)
#define AV_PIX_FMT_YUVA422P16 AV_PIX_FMT_NE(YUVA422P16BE, YUVA422P16LE)
#define AV_PIX_FMT_YUVA444P16 AV_PIX_FMT_NE(YUVA444P16BE, YUVA444P16LE)

View File

@ -79,7 +79,7 @@
*/
#define LIBAVUTIL_VERSION_MAJOR 56
#define LIBAVUTIL_VERSION_MINOR 23
#define LIBAVUTIL_VERSION_MINOR 24
#define LIBAVUTIL_VERSION_MICRO 101
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \

View File

@ -93,10 +93,14 @@ isNBPS:
yuva420p9le
yuva422p10be
yuva422p10le
yuva422p12be
yuva422p12le
yuva422p9be
yuva422p9le
yuva444p10be
yuva444p10le
yuva444p12be
yuva444p12le
yuva444p9be
yuva444p9le
@ -158,9 +162,11 @@ isBE:
yuva420p16be
yuva420p9be
yuva422p10be
yuva422p12be
yuva422p16be
yuva422p9be
yuva444p10be
yuva444p12be
yuva444p16be
yuva444p9be
@ -233,6 +239,8 @@ isYUV:
yuva422p
yuva422p10be
yuva422p10le
yuva422p12be
yuva422p12le
yuva422p16be
yuva422p16le
yuva422p9be
@ -240,6 +248,8 @@ isYUV:
yuva444p
yuva444p10be
yuva444p10le
yuva444p12be
yuva444p12le
yuva444p16be
yuva444p16le
yuva444p9be
@ -312,6 +322,8 @@ isPlanarYUV:
yuva422p
yuva422p10be
yuva422p10le
yuva422p12be
yuva422p12le
yuva422p16be
yuva422p16le
yuva422p9be
@ -319,6 +331,8 @@ isPlanarYUV:
yuva444p
yuva444p10be
yuva444p10le
yuva444p12be
yuva444p12le
yuva444p16be
yuva444p16le
yuva444p9be
@ -581,6 +595,8 @@ ALPHA:
yuva422p
yuva422p10be
yuva422p10le
yuva422p12be
yuva422p12le
yuva422p16be
yuva422p16le
yuva422p9be
@ -588,6 +604,8 @@ ALPHA:
yuva444p
yuva444p10be
yuva444p10le
yuva444p12be
yuva444p12le
yuva444p16be
yuva444p16le
yuva444p9be
@ -739,6 +757,8 @@ Planar:
yuva422p
yuva422p10be
yuva422p10le
yuva422p12be
yuva422p12le
yuva422p16be
yuva422p16le
yuva422p9be
@ -746,6 +766,8 @@ Planar:
yuva444p
yuva444p10be
yuva444p10le
yuva444p12be
yuva444p12le
yuva444p16be
yuva444p16le
yuva444p9be