diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-11-14 13:08:36 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-11-14 13:08:36 +0100 |
commit | 31c09b7663acdcc64031d6f251a667ce812f590f (patch) | |
tree | a938859264028d21a5a23b55b6c4b37ebed9ab55 | |
parent | 5f231d909f158e40d20281b88e7aecc2333057fe (diff) | |
parent | 728c4658563dc82115ade0f1679679eddb7be5ff (diff) | |
download | ffmpeg-31c09b7663acdcc64031d6f251a667ce812f590f.tar.gz |
Merge commit '728c4658563dc82115ade0f1679679eddb7be5ff'
* commit '728c4658563dc82115ade0f1679679eddb7be5ff':
vdpau: add a constructor for AVVDPAUContext.
Conflicts:
libavcodec/vdpau.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | doc/APIchanges | 2 | ||||
-rw-r--r-- | libavcodec/vdpau.c | 7 | ||||
-rw-r--r-- | libavcodec/vdpau.h | 11 |
3 files changed, 19 insertions, 1 deletions
diff --git a/doc/APIchanges b/doc/APIchanges index 3a5e5b646d..953a38d693 100644 --- a/doc/APIchanges +++ b/doc/APIchanges @@ -17,6 +17,8 @@ API changes, most recent first: 2013-11-xx - xxxxxxx - lavc 55.26.0 - vdpau.h Add av_vdpau_get_profile(). + Add av_vdpau_alloc_context(). This function must from now on be + used for allocating AVVDPAUContext. 2013-11-xx - xxxxxxx - lavc 55.41.100 / 55.25.0 - avcodec.h lavu 52.51.100 - frame.h diff --git a/libavcodec/vdpau.c b/libavcodec/vdpau.c index b848174f90..0eebb9cdc1 100644 --- a/libavcodec/vdpau.c +++ b/libavcodec/vdpau.c @@ -40,7 +40,7 @@ AVVDPAUContext *av_alloc_vdpaucontext(void) { - return av_mallocz(sizeof(AVVDPAUContext)); + return av_vdpau_alloc_context(); } MAKE_ACCESSORS(AVVDPAUContext, vdpau_hwaccel, AVVDPAU_Render2, render2) @@ -481,4 +481,9 @@ do { \ return AVERROR(EINVAL); } +AVVDPAUContext *av_vdpau_alloc_context(void) +{ + return av_mallocz(sizeof(AVVDPAUContext)); +} + /* @}*/ diff --git a/libavcodec/vdpau.h b/libavcodec/vdpau.h index b84bdeaeba..e25cc42d7e 100644 --- a/libavcodec/vdpau.h +++ b/libavcodec/vdpau.h @@ -82,6 +82,10 @@ typedef int (*AVVDPAU_Render2)(struct AVCodecContext *, struct AVFrame *, * during initialization or through each AVCodecContext.get_buffer() * function call. In any case, they must be valid prior to calling * decoding functions. + * + * The size of this structure is not a part of the public ABI and must not + * be used outside of libavcodec. Use av_vdpau_alloc_context() to allocate an + * AVVDPAUContext. */ typedef struct AVVDPAUContext { /** @@ -146,6 +150,13 @@ AVVDPAU_Render2 av_vdpau_hwaccel_get_render2(const AVVDPAUContext *); void av_vdpau_hwaccel_set_render2(AVVDPAUContext *, AVVDPAU_Render2); /** + * Allocate an AVVDPAUContext. + * + * @return Newly-allocated AVVDPAUContext or NULL on failure. + */ +AVVDPAUContext *av_vdpau_alloc_context(void); + +/** * Get a decoder profile that should be used for initializing a VDPAU decoder. * Should be called from the AVCodecContext.get_format() callback. * |