mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
avformat/movenc: Write 'av01' as a compatible brand when muxing AV1
This is a requirement of the AV1-ISOBMFF spec. Section 2.1. General Requirements & Brands states: * It SHALL have the av01 brand among the compatible brands array of the FileTypeBox Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
This commit is contained in:
parent
157feea041
commit
94bac7b3f8
@ -4875,7 +4875,7 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s)
|
||||
{
|
||||
MOVMuxContext *mov = s->priv_data;
|
||||
int64_t pos = avio_tell(pb);
|
||||
int has_h264 = 0, has_video = 0;
|
||||
int has_h264 = 0, has_av1 = 0, has_video = 0;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < s->nb_streams; i++) {
|
||||
@ -4886,6 +4886,8 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s)
|
||||
has_video = 1;
|
||||
if (st->codecpar->codec_id == AV_CODEC_ID_H264)
|
||||
has_h264 = 1;
|
||||
if (st->codecpar->codec_id == AV_CODEC_ID_AV1)
|
||||
has_av1 = 1;
|
||||
}
|
||||
|
||||
avio_wb32(pb, 0); /* size */
|
||||
@ -4909,6 +4911,8 @@ static int mov_write_ftyp_tag(AVIOContext *pb, AVFormatContext *s)
|
||||
ffio_wfourcc(pb, "cmfc");
|
||||
if (mov->flags & FF_MOV_FLAG_FRAGMENT && !(mov->flags & FF_MOV_FLAG_NEGATIVE_CTS_OFFSETS))
|
||||
ffio_wfourcc(pb, "iso6");
|
||||
if (has_av1)
|
||||
ffio_wfourcc(pb, "av01");
|
||||
} else {
|
||||
if (mov->flags & FF_MOV_FLAG_FRAGMENT)
|
||||
ffio_wfourcc(pb, "iso6");
|
||||
|
@ -1,3 +1,3 @@
|
||||
0388467214421a19ba65d10a74dc35c0 *tests/data/lavf-fate/lavf.av1.mp4
|
||||
55936 tests/data/lavf-fate/lavf.av1.mp4
|
||||
4eed679a1d3e18edfd95b268167d8060 *tests/data/lavf-fate/lavf.av1.mp4
|
||||
55940 tests/data/lavf-fate/lavf.av1.mp4
|
||||
tests/data/lavf-fate/lavf.av1.mp4 CRC=0x7c27cc15
|
||||
|
Loading…
Reference in New Issue
Block a user