[FFmpeg-devel] [PATCH 2/3] avcodec/libx264:setting profile and level in avcodec context
Carl Eugen Hoyos
ceffmpeg at gmail.com
Thu Nov 23 17:03:42 EET 2017
2017-11-23 13:56 GMT+01:00 Jeyapal, Karthick <kjeyapal at akamai.com>:
> On 11/23/17, 5:33 PM, "Carl Eugen Hoyos" <ceffmpeg at gmail.com> wrote:
>>2017-11-23 12:47 GMT+01:00 Jeyapal, Karthick <kjeyapal at akamai.com>:
>>> On 11/23/17, 4:21 PM, "Carl Eugen Hoyos" <ceffmpeg at gmail.com> wrote:
>>>>2017-11-23 4:37 GMT+01:00 <vdixit at akamai.com>:
>>>>> + s = x264_encoder_headers(x4->enc, &nal, &nnal);
>>>>> + if (avctx->profile == FF_PROFILE_UNKNOWN)
>>>>> + avctx->profile = nal->p_payload;
>>>>> + if (avctx->level == FF_LEVEL_UNKNOWN)
>>>>> + avctx->level = nal->p_payload;
>>>>Why are these conditional?
>>> We didn’t want to overwrite profile and level, if user had already set it.
>>So if x264 changes these values because of contradicting user
>>requests, we write the wrong values into the hls header?
> Yes, that is true.
> We were afraid to set profile and level unconditionally, because we
> thought it could get rejected by maintainers
Very smart, you have learned quickly!
(I wish that wouldn't be the message we send to new contributors...)
> (due to that comment in avcodec.h).
I sent a patch.
> Now, if you suggest us to remove those conditions, we would be
> happy to do it.
I believe other encoders already overwrite it and I believe in this
case it would be a particularly bad idea not to overwrite it.
More information about the ffmpeg-devel