[FFmpeg-devel] [PATCH 6/8] avcodec/h264_redundant_pps_bsf: implement a AVBSFContext.flush() callback
Mark Thompson
sw at jkqxz.net
Thu Aug 2 01:20:46 EEST 2018
On 28/07/18 22:59, Michael Niedermayer wrote:
> On Fri, Jul 27, 2018 at 11:57:47AM -0300, James Almer wrote:
>> Signed-off-by: James Almer <jamrial at gmail.com>
>> ---
>> I'm not 100% sure this is correct. I also don't know if the CBS contexts need
>> to be fully reinitialized or not in this scenario. Because if so, then every
>> bsf using cbs will require a flush() callback as well.
>>
>> libavcodec/h264_redundant_pps_bsf.c | 9 +++++++++
>> 1 file changed, 9 insertions(+)
>
> Do we have a fate test for this ?
No - I don't have a public file it applies to. (I can share an example privately.)
> Also from a quick look, isnt this filter lacking checks ?
> it removes PPS but i see no check that these PPS differ only in the qp
> related parameters. Also doesnt this filter miss that there can be multiple
> PPS with different id#
The problematic streams repeatedly overwrite PPS id 0 with different parameters, and that's what we're fixing up here - using a stream like that in any case with global extradata fails on seeking or fragmenting.
> Maybe iam missing something and this is of course not about the
> patch at hand but it looks like this is a quite specific filter that
> cannot saftely be applied to h264 in general and if so this is not
> obvious from the documentation.
The documentation says the filter "applies a specific fixup to some Blu-ray streams", which implies that it doesn't apply to anything else? Feel free to add some additional text which clarifies it to your reading if you don't agree.
Thanks,
- Mark
More information about the ffmpeg-devel
mailing list