[FFmpeg-devel] [PATCH v2 1/3] [GSoC] [AAC] aaccoder: Implement Perceptual Noise Substitution

Rostislav Pehlivanov atomnuker at gmail.com
Wed Apr 15 01:19:37 CEST 2015


Nevermind, I failed to read your suggestion to just use a separate
minscaler for noise sf_idx.

On 15 April 2015 at 00:05, Rostislav Pehlivanov <atomnuker at gmail.com> wrote:

> You're right. Unfortunately letting the sf_idx be clipped to the minscale
> (+SCALE_MAX_DIFF) causes clipped noise values to be reported by the
> decoder. Seems like that magic number 4 you suggested might need to be
> adjusted after all. I also tried testing to see if advancing the minscaler
> based off of the noise sf_idx would work, but it didn't.
> Still, something weird happens at around 1.295 constant value for the
> threshold. The noise becomes clipped so increasing the value further yields
> no change in result. Any idea what could be causing this sudden increase in
> noise as the parameter is increased? Other than that the resolution of
> energy and threshold values is low enough.
>
> On 14 April 2015 at 22:06, Claudio Freire <klaussfreire at gmail.com> wrote:
>
>> On Tue, Apr 14, 2015 at 4:52 PM, Rostislav Pehlivanov
>> <atomnuker at gmail.com> wrote:
>> > Uhh, can't replicate bug here (freshly built ffmpeg, just applied this
>> patch
>> > only), (md5 for file = 473edd68b91123c3a9c1825271012357). tried other
>> files
>> > and they encode and play fine. Spectrum also looks fine. I also tested
>> other
>> > random files out of the samples and they all seem file.
>> > Know of any other problematic files?
>>
>> I did a pull, replaced:
>>
>> if (s->options.pns && start*freq_mul > NOISE_LOW_LIMIT && energy <
>> uplim * 1.2f) {
>>
>> with
>>
>> if (s->options.pns && start*freq_mul > NOISE_LOW_LIMIT && energy <
>> uplim * 2.2f) {
>>
>> And ran
>>
>> /home/claudiofreire/src/ffmpeg/ffmpeg -i
>> /home/claudiofreire/tmp/audiosamples/ffsamples/aac/ct_faac-adts.aac
>> -strict -2 -c:a aac -b:a 48k -cutoff 22050 -f adts -aac_pns 1 -y
>> test.adts
>>
>> And got the assertion failure. You can try playing with that constant
>> or simply commenting out the "energy < uplim * X" term to force all
>> noise, and you will get it.
>>
>
>


More information about the ffmpeg-devel mailing list