[FFmpeg-cvslog] ffv1dec: plane_index is 1 in case of version 4 gray+alpha.

Jérôme Martinez git at videolan.org
Sun May 3 02:06:08 CEST 2015


ffmpeg | branch: master | Jérôme Martinez <jerome at mediaarea.net> | Sat May  2 13:23:12 2015 +0200| [14605a0b991585f55be07f23e53f263d97e46eac] | committer: Michael Niedermayer

ffv1dec: plane_index is 1 in case of version 4 gray+alpha.

Since version 4, plane_index for the alpha plane is 1 in the case chroma_planes is 0.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=14605a0b991585f55be07f23e53f263d97e46eac
---

 libavcodec/ffv1dec.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/ffv1dec.c b/libavcodec/ffv1dec.c
index fda3f09..78d947a 100644
--- a/libavcodec/ffv1dec.c
+++ b/libavcodec/ffv1dec.c
@@ -441,7 +441,7 @@ static int decode_slice(AVCodecContext *c, void *arg)
             decode_plane(fs, p->data[2] + ps*cx+cy*p->linesize[2], chroma_width, chroma_height, p->linesize[2], 1);
         }
         if (fs->transparency)
-            decode_plane(fs, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], 2);
+            decode_plane(fs, p->data[3] + ps*x + y*p->linesize[3], width, height, p->linesize[3], (f->version >= 4 && !f->chroma_planes) ? 1 : 2);
     } else {
         uint8_t *planes[3] = { p->data[0] + ps * x + y * p->linesize[0],
                                p->data[1] + ps * x + y * p->linesize[1],



More information about the ffmpeg-cvslog mailing list