vdpau: restore compatibility with deprecated fields in AVVDPAUContext
Fixes ticket #3133. Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com> Tested-by: EricV Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:

committed by
Michael Niedermayer

parent
a1ed1c2193
commit
23bc1351ad
@@ -69,6 +69,15 @@ int ff_vdpau_mpeg_end_frame(AVCodecContext *avctx)
|
|||||||
struct vdpau_picture_context *pic_ctx = pic->hwaccel_picture_private;
|
struct vdpau_picture_context *pic_ctx = pic->hwaccel_picture_private;
|
||||||
VdpVideoSurface surf = ff_vdpau_get_surface_id(pic);
|
VdpVideoSurface surf = ff_vdpau_get_surface_id(pic);
|
||||||
|
|
||||||
|
#if FF_API_BUFS_VDPAU
|
||||||
|
FF_DISABLE_DEPRECATION_WARNINGS
|
||||||
|
hwctx->info = pic_ctx->info;
|
||||||
|
hwctx->bitstream_buffers = pic_ctx->bitstream_buffers;
|
||||||
|
hwctx->bitstream_buffers_used = pic_ctx->bitstream_buffers_used;
|
||||||
|
hwctx->bitstream_buffers_allocated = pic_ctx->bitstream_buffers_allocated;
|
||||||
|
FF_ENABLE_DEPRECATION_WARNINGS
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!hwctx->render) {
|
if (!hwctx->render) {
|
||||||
res = hwctx->render2(avctx, &pic->f, (void *)&pic_ctx->info,
|
res = hwctx->render2(avctx, &pic->f, (void *)&pic_ctx->info,
|
||||||
pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
|
pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
|
||||||
@@ -79,6 +88,14 @@ int ff_vdpau_mpeg_end_frame(AVCodecContext *avctx)
|
|||||||
ff_mpeg_draw_horiz_band(s, 0, s->avctx->height);
|
ff_mpeg_draw_horiz_band(s, 0, s->avctx->height);
|
||||||
av_freep(&pic_ctx->bitstream_buffers);
|
av_freep(&pic_ctx->bitstream_buffers);
|
||||||
|
|
||||||
|
#if FF_API_BUFS_VDPAU
|
||||||
|
FF_DISABLE_DEPRECATION_WARNINGS
|
||||||
|
hwctx->bitstream_buffers = NULL;
|
||||||
|
hwctx->bitstream_buffers_used = 0;
|
||||||
|
hwctx->bitstream_buffers_allocated = 0;
|
||||||
|
FF_ENABLE_DEPRECATION_WARNINGS
|
||||||
|
#endif
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@@ -195,6 +195,15 @@ static int vdpau_h264_end_frame(AVCodecContext *avctx)
|
|||||||
struct vdpau_picture_context *pic_ctx = pic->hwaccel_picture_private;
|
struct vdpau_picture_context *pic_ctx = pic->hwaccel_picture_private;
|
||||||
VdpVideoSurface surf = ff_vdpau_get_surface_id(pic);
|
VdpVideoSurface surf = ff_vdpau_get_surface_id(pic);
|
||||||
|
|
||||||
|
#if FF_API_BUFS_VDPAU
|
||||||
|
FF_DISABLE_DEPRECATION_WARNINGS
|
||||||
|
hwctx->info = pic_ctx->info;
|
||||||
|
hwctx->bitstream_buffers = pic_ctx->bitstream_buffers;
|
||||||
|
hwctx->bitstream_buffers_used = pic_ctx->bitstream_buffers_used;
|
||||||
|
hwctx->bitstream_buffers_allocated = pic_ctx->bitstream_buffers_allocated;
|
||||||
|
FF_ENABLE_DEPRECATION_WARNINGS
|
||||||
|
#endif
|
||||||
|
|
||||||
if (!hwctx->render) {
|
if (!hwctx->render) {
|
||||||
res = hwctx->render2(avctx, &pic->f, (void *)&pic_ctx->info,
|
res = hwctx->render2(avctx, &pic->f, (void *)&pic_ctx->info,
|
||||||
pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
|
pic_ctx->bitstream_buffers_used, pic_ctx->bitstream_buffers);
|
||||||
@@ -205,6 +214,14 @@ static int vdpau_h264_end_frame(AVCodecContext *avctx)
|
|||||||
ff_h264_draw_horiz_band(h, 0, h->avctx->height);
|
ff_h264_draw_horiz_band(h, 0, h->avctx->height);
|
||||||
av_freep(&pic_ctx->bitstream_buffers);
|
av_freep(&pic_ctx->bitstream_buffers);
|
||||||
|
|
||||||
|
#if FF_API_BUFS_VDPAU
|
||||||
|
FF_DISABLE_DEPRECATION_WARNINGS
|
||||||
|
hwctx->bitstream_buffers = NULL;
|
||||||
|
hwctx->bitstream_buffers_used = 0;
|
||||||
|
hwctx->bitstream_buffers_allocated = 0;
|
||||||
|
FF_ENABLE_DEPRECATION_WARNINGS
|
||||||
|
#endif
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user