avformat/img2: Add support for AVIF mux in image2

Add support for AVIF muxing in the image2 muxer.

Tested with this example:
ffmpeg -lavfi testsrc=duration=1:size=320x320 -g 1 -flags global_header -c:v libaom-av1 -f image2 img-%2d.avif

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
This commit is contained in:
Vignesh Venkatasubramanian 2022-05-16 10:40:21 -07:00 committed by Gyan Doshi
parent b8ede4d637
commit dd99d34d67
1 changed files with 3 additions and 1 deletions

View File

@ -58,6 +58,8 @@ static int write_header(AVFormatContext *s)
img->muxer = "gif";
} else if (st->codecpar->codec_id == AV_CODEC_ID_FITS) {
img->muxer = "fits";
} else if (st->codecpar->codec_id == AV_CODEC_ID_AV1) {
img->muxer = "avif";
} else if (st->codecpar->codec_id == AV_CODEC_ID_RAWVIDEO) {
const char *str = strrchr(s->url, '.');
img->split_planes = str
@ -265,7 +267,7 @@ const AVOutputFormat ff_image2_muxer = {
.long_name = NULL_IF_CONFIG_SMALL("image2 sequence"),
.extensions = "bmp,dpx,exr,jls,jpeg,jpg,jxl,ljpg,pam,pbm,pcx,pfm,pgm,pgmyuv,"
"png,ppm,sgi,tga,tif,tiff,jp2,j2c,j2k,xwd,sun,ras,rs,im1,im8,"
"im24,sunras,vbn,xbm,xface,pix,y",
"im24,sunras,vbn,xbm,xface,pix,y,avif",
.priv_data_size = sizeof(VideoMuxData),
.video_codec = AV_CODEC_ID_MJPEG,
.write_header = write_header,