diff --git a/doc/APIchanges b/doc/APIchanges index 2e7239b212..9402d447de 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -13,6 +13,10 @@ libavutil: 2012-10-22 API changes, most recent first: +2013-08-xx - xxxxxxx - lavc 55.13.0 - avcodec.h + Deprecate the bitstream-related members from struct AVVDPAUContext. + The bistream buffers no longer need to be explicitly freed. + 2013-08-xx - xxxxxxx - lavc 55.12.0 - avcodec.h Deprecate the CODEC_CAP_HWACCEL_VDPAU codec capability. Use CODEC_CAP_HWACCEL and select the AV_PIX_FMT_VDPAU format with get_format() instead. diff --git a/libavcodec/vdpau.h b/libavcodec/vdpau.h index 18efcaa6e5..8bedea54ba 100644 --- a/libavcodec/vdpau.h +++ b/libavcodec/vdpau.h @@ -52,12 +52,14 @@ #include #include +#if FF_API_BUFS_VDPAU union AVVDPAUPictureInfo { VdpPictureInfoH264 h264; VdpPictureInfoMPEG1Or2 mpeg; VdpPictureInfoVC1 vc1; VdpPictureInfoMPEG4Part2 mpeg4; }; +#endif /** * This structure is used to share data between the libavcodec library and @@ -83,11 +85,13 @@ typedef struct AVVDPAUContext { */ VdpDecoderRender *render; +#if FF_API_BUFS_VDPAU /** * VDPAU picture information * * Set by libavcodec. */ + attribute_deprecated union AVVDPAUPictureInfo info; /** @@ -95,6 +99,7 @@ typedef struct AVVDPAUContext { * * Set by libavcodec. */ + attribute_deprecated int bitstream_buffers_allocated; /** @@ -102,6 +107,7 @@ typedef struct AVVDPAUContext { * * Set by libavcodec. */ + attribute_deprecated int bitstream_buffers_used; /** @@ -110,7 +116,9 @@ typedef struct AVVDPAUContext { * * Set by libavcodec. */ + attribute_deprecated VdpBitstreamBuffer *bitstream_buffers; +#endif } AVVDPAUContext; #if FF_API_CAP_VDPAU diff --git a/libavcodec/vdpau_internal.h b/libavcodec/vdpau_internal.h index e93c6723d8..9e4ab4e3df 100644 --- a/libavcodec/vdpau_internal.h +++ b/libavcodec/vdpau_internal.h @@ -35,6 +35,15 @@ static inline uintptr_t ff_vdpau_get_surface_id(Picture *pic) return (uintptr_t)pic->f.data[3]; } +#if !FF_API_BUFS_VDPAU +union AVVDPAUPictureInfo { + VdpPictureInfoH264 h264; + VdpPictureInfoMPEG1Or2 mpeg; + VdpPictureInfoVC1 vc1; + VdpPictureInfoMPEG4Part2 mpeg4; +}; +#endif + struct vdpau_picture_context { /** * VDPAU picture information. diff --git a/libavcodec/version.h b/libavcodec/version.h index 41a9d7a05a..7a622f38f9 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -27,7 +27,7 @@ */ #define LIBAVCODEC_VERSION_MAJOR 55 -#define LIBAVCODEC_VERSION_MINOR 12 +#define LIBAVCODEC_VERSION_MINOR 13 #define LIBAVCODEC_VERSION_MICRO 0 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ @@ -67,5 +67,8 @@ #ifndef FF_API_CAP_VDPAU #define FF_API_CAP_VDPAU (LIBAVCODEC_VERSION_MAJOR < 56) #endif +#ifndef FF_API_BUFS_VDPAU +#define FF_API_BUFS_VDPAU (LIBAVCODEC_VERSION_MAJOR < 56) +#endif #endif /* AVCODEC_VERSION_H */