[FFmpeg-devel] [PATCH] AAC encoder: fix assertion error with prediction

Claudio Freire klaussfreire at gmail.com
Tue Dec 29 17:12:38 CET 2015


On Tue, Dec 29, 2015 at 6:18 AM, Rostislav Pehlivanov
<atomnuker at gmail.com> wrote:
> Wouldn't it be simpler to just check if the maximum codebook was 0 after
> calculating cost1 and skipping the rest of the code in the loop?
>
> On 29 December 2015 at 08:23, Claudio Freire <klaussfreire at gmail.com> wrote:
>
>> Fixes an assertion error reported in #2686 that happens when
>> using prediction (either explicitly or implicitly by setting
>> the AAC main profile), since prediction code would allow
>> creating new zeroes or removing existing ones, without
>> properly checking for SF delta violations.
>>
>> This patch forbids creating/removing zeroes, perhaps an
>> overly conservative approach, but a safe one. More permissive
>> and sophisticated approaches may be attempted in the future.


It is possible, and in fact does happen and it helps considerably to
hide some artifacts, to use prediction in zeroed bands.

It basically uses the predicted coefficient with no correction.

May well be better than using a zero.


More information about the ffmpeg-devel mailing list