[FFmpeg-devel] [PATCH] ivfenc: incorrect fourcc for VP9 video

Victor Anjin virinext at gmail.com
Wed Apr 15 18:51:59 CEST 2015


VP80 fourcc are writed for all contexts (without ctx->codec_tag)
how to reproduce the issue:
1) Get any vp9 video (for example  http://base-n.de/webm/out9.webm)
2) ffmpeg  -i out9.webm -vcodec copy out9.ivf
3) out9.ivf have VP80 fourcc at ivf header
The proposed fix solves this issue
---
 libavformat/ivfenc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/ivfenc.c b/libavformat/ivfenc.c
index 5700f01..1d76c5c 100644
--- a/libavformat/ivfenc.c
+++ b/libavformat/ivfenc.c
@@ -38,7 +38,7 @@ static int ivf_write_header(AVFormatContext *s)
     avio_write(pb, "DKIF", 4);
     avio_wl16(pb, 0); // version
     avio_wl16(pb, 32); // header length
-    avio_wl32(pb, ctx->codec_tag ? ctx->codec_tag : AV_RL32("VP80"));
+    avio_wl32(pb, ctx->codec_tag ? ctx->codec_tag : ctx->codec_id == AV_CODEC_ID_VP9 ? AV_RL32("VP90") : AV_RL32("VP80"));
     avio_wl16(pb, ctx->width);
     avio_wl16(pb, ctx->height);
     avio_wl32(pb, s->streams[0]->time_base.den);
-- 
1.9.1



More information about the ffmpeg-devel mailing list