[FFmpeg-devel] [PATCH 7/7] avformat/dashenc: fix writting the AV1 codec string in mp4 mode
James Almer
jamrial at gmail.com
Sat Aug 3 18:49:38 EEST 2019
On 8/2/2019 11:13 AM, James Almer wrote:
> On 7/30/2019 5:19 PM, James Almer wrote:
>> From https://aomediacodec.github.io/av1-isobmff/#codecsparam, the parameters
>> sample entry 4CC, profile, level, tier, and bitDepth are all mandatory fields.
>> All the other fields are optional, mutually inclusive (all or none).
>>
>> Fixes ticket #8049
>>
>> Signed-off-by: James Almer <jamrial at gmail.com>
>> ---
>> libavformat/dashenc.c | 16 ++++++++++++++++
>> 1 file changed, 16 insertions(+)
>>
>> diff --git a/libavformat/dashenc.c b/libavformat/dashenc.c
>> index 50eba370d9..a3d8168110 100644
>> --- a/libavformat/dashenc.c
>> +++ b/libavformat/dashenc.c
>> @@ -35,6 +35,7 @@
>> #include "libavutil/time.h"
>> #include "libavutil/time_internal.h"
>>
>> +#include "av1.h"
>> #include "avc.h"
>> #include "avformat.h"
>> #include "avio_internal.h"
>> @@ -389,6 +390,21 @@ static void set_codec_str(AVFormatContext *s, AVCodecParameters *par,
>> av_strlcatf(str, size, ".%02x%02x%02x",
>> extradata[1], extradata[2], extradata[3]);
>> av_free(tmpbuf);
>> + } else if (!strcmp(str, "av01")) {
>> + AV1SequenceParameters seq;
>> + if (!par->extradata_size)
>> + return;
>> + if (ff_av1_parse_seq_header(&seq, par->extradata, par->extradata_size) < 0)
>> + return;
>> +
>> + av_strlcatf(str, size, ".%01u.%02u%s.%02u",
>> + seq.profile, seq.level, seq.tier ? "H" : "M", seq.bitdepth);
>> + if (seq.color_description_present_flag)
>> + av_strlcatf(str, size, ".%01u.%01u%01u%01u.%02u.%02u.%02u.%01u",
>> + seq.monochrome,
>> + seq.chroma_subsampling_x, seq.chroma_subsampling_y, seq.chroma_sample_position,
>> + seq.color_primaries, seq.transfer_characteristics, seq.matrix_coefficients,
>> + seq.color_range);
>> }
>> }
>
> Will push the set soon.
Pushed with the suggested changes.
Thanks.
More information about the ffmpeg-devel
mailing list