[FFmpeg-devel] [PATCH] avformat/ivfenc: fix writing codec tag
Jan Ekström
jeebjp at gmail.com
Mon Sep 24 20:54:24 EEST 2018
On Mon, Sep 24, 2018 at 3:57 AM, James Almer <jamrial at gmail.com> wrote:
> The value in AVCodecParameters->codec_tag may not be correct for IVF,
> as it's the case when remuxing AV1 streams from mp4, so ignore it and
> write the correct value based on codec ID instead.
>
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
> libavformat/ivfenc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavformat/ivfenc.c b/libavformat/ivfenc.c
> index af803d59ee..66441a2a43 100644
> --- a/libavformat/ivfenc.c
> +++ b/libavformat/ivfenc.c
> @@ -46,7 +46,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, par->codec_tag ? par->codec_tag :
> + avio_wl32(pb,
> par->codec_id == AV_CODEC_ID_VP9 ? AV_RL32("VP90") :
> par->codec_id == AV_CODEC_ID_VP8 ? AV_RL32("VP80") : AV_RL32("AV01"));
In the future we might want to make a mapping array, but for now this
looks a-OK. Unfortunately the tags for AV1 do not match between IVF
and ISOBMFF.
LGTM.
Jan
More information about the ffmpeg-devel
mailing list