Quoting Mark Thompson (2017-04-02 20:37:13) > On 31/03/17 20:14, Anton Khirnov wrote: > > Quoting Mark Thompson (2017-03-05 00:57:40) > >> Use the flags argument of av_hwframe_ctx_create_derived() to pass the > >> mapping flags which will be used on allocation. Also, set the format > >> and hardware context on the allocated frame automatically - the user > >> should not be required to do this themselves. > >> --- > >> libavutil/hwcontext.c | 14 +++++++++++++- > >> libavutil/hwcontext.h | 4 +++- > >> libavutil/hwcontext_internal.h | 5 +++++ > >> 3 files changed, 21 insertions(+), 2 deletions(-) > >> > >> diff --git a/libavutil/hwcontext.c b/libavutil/hwcontext.c > >> index 4a47e258a..03cdd4701 100644 > >> --- a/libavutil/hwcontext.c > >> +++ b/libavutil/hwcontext.c > >> @@ -459,6 +459,11 @@ int av_hwframe_get_buffer(AVBufferRef *hwframe_ref, > >> AVFrame *frame, int flags) > >> // and map the frame immediately. > >> AVFrame *src_frame; > >> > >> + frame->format = ctx->format; > >> + frame->hw_frames_ctx = av_buffer_ref(hwframe_ref); > >> + if (!frame->hw_frames_ctx) > >> + return AVERROR(ENOMEM); > > > > Shouldn't this be done in av_hwframe_map() below? > > No? hw_frames_ctx needs to be set on the destination frame for > av_hwframe_map() to work.
Right, I wasn't thinking. Should be ok then. -- Anton Khirnov _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel