---
doc/APIchanges | 4 ++++
libavcodec/h263dec.c | 2 +-
libavcodec/h264_slice.c | 2 +-
libavcodec/mpeg12dec.c | 2 +-
libavcodec/vaapi_h264.c | 2 +-
libavcodec/vaapi_mpeg2.c | 2 +-
libavcodec/vaapi_mpeg4.c | 4 ++--
libavcodec/vaapi_vc1.c | 4 ++--
libavcodec/vc1dec.c | 2 +-
libavutil/pixdesc.c | 14 ++++++++++++++
libavutil/pixfmt.h | 5 +++++
libavutil/version.h | 3 +++
12 files changed, 36 insertions(+), 10 deletions(-)
diff --git a/doc/APIchanges b/doc/APIchanges
index ab24c32..836cd58 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,10 @@ libavutil: 2015-08-28
API changes, most recent first:
+2016-xx-xx - xxxxxxx - lavu 55.x.x - pixfmt.h
+ Deprecate all AV_PIX_FMT_VAAPI_* formats.
+ Replaced by AV_PIX_FMT_VAAPI.
+
2016-xx-xx - xxxxxxx - lavu 55.x.x - hwcontext.h
Add AVHWFramesConstraints and associated API.
diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c
index 9e8cea5..10db4d9 100644
--- a/libavcodec/h263dec.c
+++ b/libavcodec/h263dec.c
@@ -655,7 +655,7 @@ intrax8_decoded:
const enum AVPixelFormat ff_h263_hwaccel_pixfmt_list_420[] = {
#if CONFIG_H263_VAAPI_HWACCEL || CONFIG_MPEG4_VAAPI_HWACCEL
- AV_PIX_FMT_VAAPI_VLD,
+ AV_PIX_FMT_VAAPI,
#endif
#if CONFIG_MPEG4_VDPAU_HWACCEL
AV_PIX_FMT_VDPAU,
diff --git a/libavcodec/h264_slice.c b/libavcodec/h264_slice.c
index 8dde140..a94ff28 100644
--- a/libavcodec/h264_slice.c
+++ b/libavcodec/h264_slice.c
@@ -876,7 +876,7 @@ static enum AVPixelFormat get_pixel_format(H264Context *h)
*fmt++ = AV_PIX_FMT_D3D11VA_VLD;
#endif
#if CONFIG_H264_VAAPI_HWACCEL
- *fmt++ = AV_PIX_FMT_VAAPI_VLD;
+ *fmt++ = AV_PIX_FMT_VAAPI;
#endif
#if CONFIG_H264_VDA_HWACCEL
*fmt++ = AV_PIX_FMT_VDA_VLD;
diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c
index c1f3527..6e1db1e 100644
--- a/libavcodec/mpeg12dec.c
+++ b/libavcodec/mpeg12dec.c
@@ -1137,7 +1137,7 @@ static const enum AVPixelFormat
mpeg12_hwaccel_pixfmt_list_420[] = {
AV_PIX_FMT_D3D11VA_VLD,
#endif
#if CONFIG_MPEG2_VAAPI_HWACCEL
- AV_PIX_FMT_VAAPI_VLD,
+ AV_PIX_FMT_VAAPI,
#endif
#if CONFIG_MPEG1_VDPAU_HWACCEL | CONFIG_MPEG2_VDPAU_HWACCEL
AV_PIX_FMT_VDPAU,
diff --git a/libavcodec/vaapi_h264.c b/libavcodec/vaapi_h264.c
index 82a49f6..7f7de56 100644
--- a/libavcodec/vaapi_h264.c
+++ b/libavcodec/vaapi_h264.c
@@ -358,7 +358,7 @@ AVHWAccel ff_h264_vaapi_hwaccel = {
.name = "h264_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_H264,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_h264_start_frame,
.end_frame = vaapi_h264_end_frame,
.decode_slice = vaapi_h264_decode_slice,
diff --git a/libavcodec/vaapi_mpeg2.c b/libavcodec/vaapi_mpeg2.c
index 7d0e205..cb8a782 100644
--- a/libavcodec/vaapi_mpeg2.c
+++ b/libavcodec/vaapi_mpeg2.c
@@ -139,7 +139,7 @@ AVHWAccel ff_mpeg2_vaapi_hwaccel = {
.name = "mpeg2_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_MPEG2VIDEO,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_mpeg2_start_frame,
.end_frame = ff_vaapi_mpeg_end_frame,
.decode_slice = vaapi_mpeg2_decode_slice,
diff --git a/libavcodec/vaapi_mpeg4.c b/libavcodec/vaapi_mpeg4.c
index 1b9053c..5498a9e 100644
--- a/libavcodec/vaapi_mpeg4.c
+++ b/libavcodec/vaapi_mpeg4.c
@@ -153,7 +153,7 @@ AVHWAccel ff_mpeg4_vaapi_hwaccel = {
.name = "mpeg4_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_MPEG4,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_mpeg4_start_frame,
.end_frame = ff_vaapi_mpeg_end_frame,
.decode_slice = vaapi_mpeg4_decode_slice,
@@ -165,7 +165,7 @@ AVHWAccel ff_h263_vaapi_hwaccel = {
.name = "h263_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_H263,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_mpeg4_start_frame,
.end_frame = ff_vaapi_mpeg_end_frame,
.decode_slice = vaapi_mpeg4_decode_slice,
diff --git a/libavcodec/vaapi_vc1.c b/libavcodec/vaapi_vc1.c
index fe01c52..87a75ec 100644
--- a/libavcodec/vaapi_vc1.c
+++ b/libavcodec/vaapi_vc1.c
@@ -339,7 +339,7 @@ AVHWAccel ff_wmv3_vaapi_hwaccel = {
.name = "wmv3_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_WMV3,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_vc1_start_frame,
.end_frame = ff_vaapi_mpeg_end_frame,
.decode_slice = vaapi_vc1_decode_slice,
@@ -350,7 +350,7 @@ AVHWAccel ff_vc1_vaapi_hwaccel = {
.name = "vc1_vaapi",
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_VC1,
- .pix_fmt = AV_PIX_FMT_VAAPI_VLD,
+ .pix_fmt = AV_PIX_FMT_VAAPI,
.start_frame = vaapi_vc1_start_frame,
.end_frame = ff_vaapi_mpeg_end_frame,
.decode_slice = vaapi_vc1_decode_slice,
diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index ce55493..51f5c42 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -954,7 +954,7 @@ static const enum AVPixelFormat
vc1_hwaccel_pixfmt_list_420[] = {
AV_PIX_FMT_D3D11VA_VLD,
#endif
#if CONFIG_VC1_VAAPI_HWACCEL
- AV_PIX_FMT_VAAPI_VLD,
+ AV_PIX_FMT_VAAPI,
#endif
#if CONFIG_VC1_VDPAU_HWACCEL
AV_PIX_FMT_VDPAU,
diff --git a/libavutil/pixdesc.c b/libavutil/pixdesc.c
index 9b948ed..b383cd4 100644
--- a/libavutil/pixdesc.c
+++ b/libavutil/pixdesc.c
@@ -1093,6 +1093,7 @@ static const AVPixFmtDescriptor
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
},
.flags = AV_PIX_FMT_FLAG_RGB,
},
+#if FF_API_VAAPI
[AV_PIX_FMT_VAAPI_MOCO] = {
.name = "vaapi_moco",
.log2_chroma_w = 1,
@@ -1111,6 +1112,14 @@ static const AVPixFmtDescriptor
av_pix_fmt_descriptors[AV_PIX_FMT_NB] = {
.log2_chroma_h = 1,
.flags = AV_PIX_FMT_FLAG_HWACCEL,
},
+#else
+ [AV_PIX_FMT_VAAPI] = {
+ .name = "vaapi",
+ .log2_chroma_w = 1,
+ .log2_chroma_h = 1,
+ .flags = AV_PIX_FMT_FLAG_HWACCEL,
+ },
+#endif
[AV_PIX_FMT_VDA_VLD] = {
.name = "vda_vld",
.log2_chroma_w = 1,
@@ -1655,6 +1664,11 @@ enum AVPixelFormat av_get_pix_fmt(const char *name)
snprintf(name2, sizeof(name2), "%s%s", name, X_NE("be", "le"));
pix_fmt = get_pix_fmt_internal(name2);
}
+
+#if FF_API_VAAPI
+ if (pix_fmt == AV_PIX_FMT_NONE && !strcmp(name, "vaapi"))
+ pix_fmt = AV_PIX_FMT_VAAPI;
+#endif
return pix_fmt;
}
diff --git a/libavutil/pixfmt.h b/libavutil/pixfmt.h
index 7d369f5..c903a3f 100644
--- a/libavutil/pixfmt.h
+++ b/libavutil/pixfmt.h
@@ -116,9 +116,14 @@ enum AVPixelFormat {
AV_PIX_FMT_BGR555BE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb),
big-endian, most significant bit to 1
AV_PIX_FMT_BGR555LE, ///< packed BGR 5:5:5, 16bpp, (msb)1A 5B 5G 5R(lsb),
little-endian, most significant bit to 1
+#if FF_API_VAAPI
AV_PIX_FMT_VAAPI_MOCO, ///< HW acceleration through VA API at motion
compensation entry-point, Picture.data[3] contains a vaapi_render_state struct
which contains macroblocks as well as various fields extracted from headers
AV_PIX_FMT_VAAPI_IDCT, ///< HW acceleration through VA API at IDCT
entry-point, Picture.data[3] contains a vaapi_render_state struct which
contains fields extracted from headers
AV_PIX_FMT_VAAPI_VLD, ///< HW decoding through VA API, Picture.data[3]
contains a VASurfaceID
+ AV_PIX_FMT_VAAPI = AV_PIX_FMT_VAAPI_VLD,
+#else
+ AV_PIX_FMT_VAAPI, ///< HW decoding through VA API, Picture.data[3]
contains a VASurfaceID
+#endif
AV_PIX_FMT_YUV420P16LE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample
per 2x2 Y samples), little-endian
AV_PIX_FMT_YUV420P16BE, ///< planar YUV 4:2:0, 24bpp, (1 Cr & Cb sample
per 2x2 Y samples), big-endian
diff --git a/libavutil/version.h b/libavutil/version.h
index ebd548f..735c52b 100644
--- a/libavutil/version.h
+++ b/libavutil/version.h
@@ -99,6 +99,9 @@
#ifndef FF_API_ERROR_FRAME
#define FF_API_ERROR_FRAME (LIBAVUTIL_VERSION_MAJOR < 56)
#endif
+#ifndef FF_API_VAAPI
+#define FF_API_VAAPI (LIBAVUTIL_VERSION_MAJOR < 56)
+#endif
/**
--
2.7.0
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel