diff options
author | Sebastien Zwickert <dilaroga@gmail.com> | 2015-06-20 13:19:29 +0200 |
---|---|---|
committer | Clément Bœsch <clement@stupeflix.com> | 2015-06-23 09:20:18 +0200 |
commit | c06fdacc3dc706e70d953917fea845532d3703ca (patch) | |
tree | cb58b93532a2d78d78e8282bab6269320109a589 /ffmpeg_vda.c | |
parent | 813b2f0da3a792b2122ada702b8488a9ecfce6f7 (diff) | |
download | ffmpeg-c06fdacc3dc706e70d953917fea845532d3703ca.tar.gz |
vda: unlock the pixel buffer base address.
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.
Diffstat (limited to 'ffmpeg_vda.c')
-rw-r--r-- | ffmpeg_vda.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ffmpeg_vda.c b/ffmpeg_vda.c index d15648dd8e..6fe4ed45ea 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; |