diff --git a/libavformat/img2enc.c b/libavformat/img2enc.c index e0d6c99b49..58236eb1d5 100644 --- a/libavformat/img2enc.c +++ b/libavformat/img2enc.c @@ -100,6 +100,10 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt) if(img->split_planes){ int ysize = codec->width * codec->height; int usize = ((-codec->width)>>desc->log2_chroma_w) * ((-codec->height)>>desc->log2_chroma_h); + if (desc->comp[0].depth_minus1 >= 8) { + ysize *= 2; + usize *= 2; + } avio_write(pb[0], pkt->data , ysize); avio_write(pb[1], pkt->data + ysize , usize); avio_write(pb[2], pkt->data + ysize + usize, usize);