On Sat, Jun 20, 2015 at 01:19:29PM +0200, Sebastien Zwickert wrote:
> The pixel buffer base address is never unlocked this causes
> a bug with some pixel format types that are produced natively
> by the hardware decoder: the first buffer was always used.
> Unlock the pixel buffer base address fixes the issue.
> 
> ---
>  ffmpeg_vda.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/ffmpeg_vda.c b/ffmpeg_vda.c
> index d15648d..6fe4ed4 100644
> --- a/ffmpeg_vda.c
> +++ b/ffmpeg_vda.c
> @@ -77,6 +77,8 @@ static int vda_retrieve_data(AVCodecContext *s, AVFrame 
> *frame)
>                    frame->width, frame->height);
>  
>      ret = av_frame_copy_props(vda->tmp_frame, frame);
> +    CVPixelBufferUnlockBaseAddress(pixbuf, kCVPixelBufferLock_ReadOnly);
> +
>      if (ret < 0)
>          return ret;
>  

Applied, thanks.

-- 
Clément B.

Attachment: pgpUN1SDPTi0K.pgp
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to