summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-12-31 23:39:21 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-12-31 23:39:21 +0000
commitc07dec1a4a6e6e0695f3893c60a42e9a14daefaf (patch)
tree9ed5a55a6536b757232ab77b72e8af0019dcd49f
parent0ff930da825b29fc0e7c9955c33695dbe784dbb3 (diff)
downloadmpv-c07dec1a4a6e6e0695f3893c60a42e9a14daefaf.tar.bz2
mpv-c07dec1a4a6e6e0695f3893c60a42e9a14daefaf.tar.xz
Also pass the 4th plane for planar formats on to libavcodec.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30156 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libmpcodecs/vd_ffmpeg.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libmpcodecs/vd_ffmpeg.c b/libmpcodecs/vd_ffmpeg.c
index a3cb9ee1d8..ded6feb4f8 100644
--- a/libmpcodecs/vd_ffmpeg.c
+++ b/libmpcodecs/vd_ffmpeg.c
@@ -639,6 +639,7 @@ static int get_buffer(AVCodecContext *avctx, AVFrame *pic){
pic->data[0]= mpi->planes[0];
pic->data[1]= mpi->planes[1];
pic->data[2]= mpi->planes[2];
+ pic->data[3]= mpi->planes[3];
#if 0
assert(mpi->width >= ((width +align)&(~align)));
@@ -663,6 +664,7 @@ static int get_buffer(AVCodecContext *avctx, AVFrame *pic){
pic->linesize[0]= mpi->stride[0];
pic->linesize[1]= mpi->stride[1];
pic->linesize[2]= mpi->stride[2];
+ pic->linesize[3]= mpi->stride[3];
pic->opaque = mpi;
//printf("%X\n", (int)mpi->planes[0]);
@@ -884,9 +886,11 @@ static mp_image_t *decode(sh_video_t *sh, void *data, int len, int flags){
mpi->planes[0]=pic->data[0];
mpi->planes[1]=pic->data[1];
mpi->planes[2]=pic->data[2];
+ mpi->planes[3]=pic->data[3];
mpi->stride[0]=pic->linesize[0];
mpi->stride[1]=pic->linesize[1];
mpi->stride[2]=pic->linesize[2];
+ mpi->stride[3]=pic->linesize[3];
}
if (!mpi->planes[0])