On Wed, Nov 16, 2016 at 8:09 PM, Michael Niedermayer
wrote:
>> Sorry for the delay, it turned out to be more complex than that.
>>
>> There were a few potential violations that I had already identified in
>> a WIP patch but they did not apply to the fuzzed sample. That sample
>> triggered an inter
LGTM.
However,
On Sat, Oct 8, 2016 at 12:20 PM, Rostislav Pehlivanov
wrote:
> +/**
> + * linear congruential pseudorandom number generator
> + *
> + * @param previous_valpointer to the current state of the generator
> + *
> + * @return Returns a 32-bit pseudorandom integer
> + */
> +stati
On Mon, Oct 3, 2016 at 3:53 PM, Rostislav Pehlivanov
wrote:
> Hopefully whoever wants to have support for crazy formats can help.
> The table in aacenc.h (temporary position) tells the encoder what
> to put in the bitstream and how to encode. Problem is, the specifications
> dont specify anything.
On Sat, Sep 10, 2016 at 3:37 AM, Claudio Freire wrote:
> On Thu, Aug 25, 2016 at 8:57 AM, Rostislav Pehlivanov
> wrote:
>>> 64ed96a710787ba5d0666746a8562e7d.dee
>>>
>>> Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
>>> Signed-
On Thu, Aug 25, 2016 at 8:57 AM, Rostislav Pehlivanov
wrote:
>> 64ed96a710787ba5d0666746a8562e7d.dee
>>
>> Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
>> Signed-off-by: Michael Niedermayer
>> ---
>> libavcodec/aaccoder.c | 8 +++-
>> 1 file changed, 7 insertions(+), 1 deletion(-)
On Mon, May 16, 2016 at 4:10 PM, Michael Niedermayer
wrote:
> yes,
>
> with the patch fate fails:
>
> Test aac-pred-encode failed. Look at tests/data/fate/aac-pred-encode.err for
> details.
> make: *** [fate-aac-pred-encode] Error 134
>
>
>>
>> A threshold of 0 would in theory cause a zeroed band
On Mon, May 16, 2016 at 12:26 PM, Kieran Kunhya wrote:
>> Testcase is fate-aac-pred-encode
>>
>> Signed-off-by: Michael Niedermayer
>> ---
>> libavcodec/aacenc_is.c |3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/libavcodec/aacenc_is.c b/libavcodec/aacenc_is.c
>> index 473897b.
On Sun, Apr 10, 2016 at 4:13 PM, Michael Niedermayer
wrote:
> that said, to be blunt, make your encoder be capable to encode as fast
> and as good quality as libfaac and after that remove libfaac support
> if you want.
I could make a small patch that could do just that, I believe.
I've always m
On Mon, Apr 4, 2016 at 9:00 AM, Claudio Freire wrote:
>> http://fate.ffmpeg.org/report.cgi?time=20160403222945&slot=x86_64-archlinux-gcc-valgrindundef
>>
>> No memleaks, but a handful of "Conditional jump or move depends on
>> uninitialised value(s)" errors
On Sun, Apr 3, 2016 at 10:41 PM, James Almer wrote:
> On 4/3/2016 3:29 PM, Claudio Freire wrote:
>> On Sun, Apr 3, 2016 at 3:05 PM, Claudio Freire
>> wrote:
>>> On Sat, Apr 2, 2016 at 4:00 PM, Michael Niedermayer
>>> wrote:
>>>> Ideally that shoul
On Sun, Apr 3, 2016 at 3:05 PM, Claudio Freire wrote:
> On Sat, Apr 2, 2016 at 4:00 PM, Michael Niedermayer
> wrote:
>> Ideally that should be fixed before its pushed
>>
>> Signed-off-by: Michael Niedermayer
>> ---
>> tests/fate/aac.mak | 11 +
On Sat, Apr 2, 2016 at 4:00 PM, Michael Niedermayer
wrote:
> Ideally that should be fixed before its pushed
>
> Signed-off-by: Michael Niedermayer
> ---
> tests/fate/aac.mak | 11 +++
> 1 file changed, 11 insertions(+)
>
> diff --git a/tests/fate/aac.mak b/tests/fate/aac.mak
> index 32
On Wed, Mar 30, 2016 at 10:15 AM, Claudio Freire wrote:
> On Wed, Mar 30, 2016 at 8:33 AM, Michael Niedermayer
> wrote:
>> On Wed, Mar 30, 2016 at 02:04:20AM -0300, Claudio Freire wrote:
>>> On Wed, Mar 30, 2016 at 1:18 AM, Claudio Freire
>>> wrote:
>>
On Wed, Mar 30, 2016 at 8:33 AM, Michael Niedermayer
wrote:
> On Wed, Mar 30, 2016 at 02:04:20AM -0300, Claudio Freire wrote:
>> On Wed, Mar 30, 2016 at 1:18 AM, Claudio Freire
>> wrote:
>> > On Tue, Mar 29, 2016 at 10:51 PM, Michael Niedermayer
>> > wrote:
On Wed, Mar 30, 2016 at 1:18 AM, Claudio Freire wrote:
> On Tue, Mar 29, 2016 at 10:51 PM, Michael Niedermayer
> wrote:
>> This is a hotfix and not a real fix of the underlaying bug
>> The underlaying bug is ATM not fully understood
>>
>> iam not sure if we should
On Tue, Mar 29, 2016 at 10:51 PM, Michael Niedermayer
wrote:
> This is a hotfix and not a real fix of the underlaying bug
> The underlaying bug is ATM not fully understood
>
> iam not sure if we should apply this or not
>
> Signed-off-by: Michael Niedermayer
> ---
> libavcodec/aacenc_quantizatio
On Sun, Mar 13, 2016 at 10:30 PM, Ganesh Ajjanagadde wrote:
> /**
> * Calculate rate distortion cost for quantizing with given codebook
> @@ -105,7 +106,7 @@ static av_always_inline float
> quantize_and_encode_band_cost_template(
> curbits += 21;
>
On Thu, Mar 10, 2016 at 8:34 PM, Michael Niedermayer
wrote:
> Hi all
>
> if you fix speed regressions of the AAC encoder please backport them
> also to release/3.0
>
> Thanks
Even if that implies much bigger changes? (like the one I commented
about aacpsy allocation)
_
On Wed, Mar 9, 2016 at 3:52 PM, Reimar Döffinger
wrote:
> On Wed, Mar 09, 2016 at 02:20:35PM -0300, Claudio Freire wrote:
>> On Mon, Feb 29, 2016 at 11:30 PM, Ganesh Ajjanagadde
>> wrote:
>> > On Mon, Feb 22, 2016 at 11:34 PM, Andrey Utkin
>> > wrote:
>>
On Mon, Feb 29, 2016 at 11:30 PM, Ganesh Ajjanagadde wrote:
> On Mon, Feb 22, 2016 at 11:34 PM, Andrey Utkin
> wrote:
>> Hi!
>> I am aware of news that AAC encoder got stable status recently.
>>
>> But you could find this interesting. We've got an ffmpeg build from
>> October 2014, and it perform
On Fri, Jan 29, 2016 at 1:08 AM, Timothy Gu wrote:
> On Sun, Jan 24, 2016 at 04:33:31PM +, Kieran Kunhya wrote:
>> The internal encoder is superior to libvo-aacenc.
>> ---
>> configure | 6 --
>> doc/encoders.texi | 25 --
>> doc/general.texi | 8 --
>
On Wed, Jan 20, 2016 at 11:05 AM, Michael Niedermayer wrote:
> From: Michael Niedermayer
>
> This is needed as near infinite values on the input side result in only some
> output to be non finite.
> Also it may still be insufficient if subsequent computations overflow
>
> Fixes null pointer deref
On Thu, Jan 14, 2016 at 7:57 PM, Ganesh Ajjanagadde
wrote:
> Signed-off-by: Ganesh Ajjanagadde
> ---
> libavcodec/aacenc.c | 17 +
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
> index 9a7d3a8..2e0db7d 100644
> --- a/
On Mon, Jan 11, 2016 at 7:23 PM, Ganesh Ajjanagadde
wrote:
> This is quite an accurate approximation; testing shows ~ 2ulp error in
> the floating point result. Tested with FATE.
>
> Alternatively, if one wants "full accuracy", one can use powf, or sqrt
> instead of sqrtf. With powf, one gets 1 ul
On Wed, Dec 30, 2015 at 10:44 PM, Claudio Freire wrote:
> On Tue, Dec 29, 2015 at 1:12 PM, Claudio Freire
> wrote:
>> On Tue, Dec 29, 2015 at 6:18 AM, Rostislav Pehlivanov
>> wrote:
>>> Wouldn't it be simpler to just check if the maximum codebook was 0 after
&g
On Tue, Dec 29, 2015 at 1:12 PM, Claudio Freire wrote:
> On Tue, Dec 29, 2015 at 6:18 AM, Rostislav Pehlivanov
> 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 Tue, Dec 29, 2015 at 6:18 AM, Rostislav Pehlivanov
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 wrote:
>
>>
creating/removing zeroes, perhaps an
overly conservative approach, but a safe one. More permissive
and sophisticated approaches may be attempted in the future.
Attached
From dbda62b2a59054a76e317850a4a0a7037ca3cc02 Mon Sep 17 00:00:00 2001
From: Claudio Freire
Date: Tue, 29 Dec 2015 05:18:40 -0300
On Fri, Dec 18, 2015 at 10:59 AM, Rostislav Pehlivanov
wrote:
> The type of last_frame_pb_count was chosen to be an int since overflow
> is impossible (the spec says the maximum bits per frame is 6144 per
> channel and the encoder checks for that).
LGTM
__
On Wed, Dec 9, 2015 at 5:29 PM, Claudio Freire wrote:
> On Wed, Dec 9, 2015 at 4:42 PM, Andreas Cadhalpun
> wrote:
>>>> [...]
>>>> for (w2 = 0; w2 < sce->ics.group_len[w]; w2++) {
>>>> [...]
>>>> }
>>
>
On Wed, Dec 9, 2015 at 4:42 PM, Andreas Cadhalpun
wrote:
>>> [...]
>>> for (w2 = 0; w2 < sce->ics.group_len[w]; w2++) {
>>> [...]
>>> }
>
> Now we are after the w2-loop and thus:
> w2 = sce->ics.group_len[w] = 2
>
Ah, I see, it's outside the loop!
Pushing a fix.
On Sun, Dec 6, 2015 at 6:36 PM, Andreas Cadhalpun
wrote:
> The other is a regression since 01ecb71, so I hope you know how to fix that.
> In search_for_pns in libavcodec/aaccoder.c:
> for (w = 0; w < sce->ics.num_windows; w += sce->ics.group_len[w]) {
> [...]
> for (g = 0; g < sce->ic
On Wed, Dec 9, 2015 at 11:15 AM, Carl Eugen Hoyos wrote:
> On Sunday 06 December 2015 01:31:17 am Carl Eugen Hoyos wrote:
>> Hi!
>>
>> I prefer attached patch over removing the encoder immediately.
>
> No opinions?
>
> Carl Eugen
LGTM, but I don't use the libvo-aac, so... :-p
___
On Fri, Dec 4, 2015 at 9:52 PM, Andreas Cadhalpun
wrote:
> Pushed.
>
>> Do you have the problematic input at hand? If so, send it privately.
>
> Sure, I'll send you a sample.
>
>> If I find a better solution I may try to push that instead, or at
>> least add the file to fate tests.
>
> Thanks for
On Fri, Dec 4, 2015 at 9:21 PM, Andreas Cadhalpun
wrote:
> On 04.12.2015 23:49, Claudio Freire wrote:
>> On Fri, Dec 4, 2015 at 2:23 PM, Andreas Cadhalpun
>> wrote:
>>> If minq is negative, the range of sf_idx can be larger than
>>> SCALE_MAX_DIFF allows, ca
On Fri, Dec 4, 2015 at 2:23 PM, Andreas Cadhalpun
wrote:
> If minq is negative, the range of sf_idx can be larger than
> SCALE_MAX_DIFF allows, causing assertion failures later in
> encode_scale_factors.
>
> Signed-off-by: Andreas Cadhalpun
> ---
> libavcodec/aaccoder.c | 2 +-
> 1 file changed,
On Thu, Dec 3, 2015 at 3:01 PM, Rostislav Pehlivanov
wrote:
> Any opposition?
Not from me
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
On Wed, Dec 2, 2015 at 12:51 PM, Ganesh Ajjanagadde wrote:
> On Wed, Dec 2, 2015 at 10:37 AM, Claudio Freire
> wrote:
>> So, here comes the discussion again.
>>
>> This time, the AAC encoder is in good shape. It's not perfect. I have
>> a list of known bugs to
On Wed, Dec 2, 2015 at 4:47 PM, Rostislav Pehlivanov
wrote:
> This commit marks any coders beside twoloop as experimental and gives
> out a warning that some of they might be silently removed in the future.
>
> Users are highly encouraged to use the twoloop coder, which is the
> default.
> ---
>
On Wed, Dec 2, 2015 at 4:14 PM, Rostislav Pehlivanov
wrote:
> This commit removes the experimental flag from the native AAC Encoder
> and thus makes it the default.
>
> After a lot of work, done by myself and Claudio Freire, the quality of
> this encoder rivals and surpasses lib
On Wed, Dec 2, 2015 at 12:50 PM, Hendrik Leppkes wrote:
> On Wed, Dec 2, 2015 at 4:42 PM, Clément Bœsch wrote:
>> On Wed, Dec 02, 2015 at 12:37:00PM -0300, Claudio Freire wrote:
>>> So, here comes the discussion again.
>>>
>>> This time, the AAC encoder is in
So, here comes the discussion again.
This time, the AAC encoder is in good shape. It's not perfect. I have
a list of known bugs to address that still has some issues, but I'm
not really certain whether they should block the flag's removal.
The bugs will be addressed in time, but maybe the encoder
On Tue, Dec 1, 2015 at 11:12 PM, Claudio Freire wrote:
> On Tue, Dec 1, 2015 at 10:47 PM, Michael Niedermayer wrote:
>>> libavcodec/aaccoder.c | 60 --
>>> libavcodec/aaccoder_twoloop.h | 136
>>> -
On Tue, Dec 1, 2015 at 10:47 PM, Michael Niedermayer wrote:
>> libavcodec/aaccoder.c | 60 --
>> libavcodec/aaccoder_twoloop.h | 136
>> --
>> libavcodec/aacenc.c |2
>> libavcodec/aacenc_is.c| 11 ++-
>>
On Mon, Nov 30, 2015 at 1:04 PM, Hendrik Leppkes wrote:
> On Mon, Nov 30, 2015 at 4:50 PM, Claudio Freire
> wrote:
>> On Mon, Nov 30, 2015 at 12:27 PM, Rostislav Pehlivanov
>> wrote:
>>> On Sun, 2015-11-29 at 16:54 -0300, Claudio Freire wrote:
>>>> Befo
On Mon, Nov 30, 2015 at 2:20 PM, Rostislav Pehlivanov
wrote:
> On Mon, 2015-11-30 at 12:50 -0300, Claudio Freire wrote:
>> Also I don't see how a static var would help or even be correct here.
>> Perhaps you meant something else?
> static uint8_t cond1 = param1 &&
On Mon, Nov 30, 2015 at 1:04 PM, Hendrik Leppkes wrote:
> On Mon, Nov 30, 2015 at 4:50 PM, Claudio Freire
> wrote:
>> On Mon, Nov 30, 2015 at 12:27 PM, Rostislav Pehlivanov
>> wrote:
>>> On Sun, 2015-11-29 at 16:54 -0300, Claudio Freire wrote:
>>>> Befo
On Mon, Nov 30, 2015 at 12:27 PM, Rostislav Pehlivanov
wrote:
> On Sun, 2015-11-29 at 16:54 -0300, Claudio Freire wrote:
>> Before pushing this, I'd like some feedback,
>> especially about
>> the implementation of point 3. I'm not sure the AAC encoder
>> sett
weak makes PNS much less aggressive, though it can still
use some further tweaks.
From e236ab0021eb28012ed05f46e7e520b5cbec413e Mon Sep 17 00:00:00 2001
From: Claudio Freire
Date: Sun, 29 Nov 2015 16:33:31 -0300
Subject: [PATCH] AAC encoder: improve SF range utilization
This patch does 4 things
On Tue, Nov 10, 2015 at 1:41 AM, Timothy Gu wrote:
> On Sun, Nov 8, 2015 at 9:28 AM Claudio Freire
> wrote:
>>
>> This particular piece of code is going to disappear soon, so not sure
>> it's worth applying the patch.
>
>
> Oh, okay then.
Funny thing, in
On Sun, Nov 8, 2015 at 2:01 AM, Timothy Gu wrote:
> ---
> libavcodec/aaccoder_twoloop.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libavcodec/aaccoder_twoloop.h b/libavcodec/aaccoder_twoloop.h
> index e53257f..328d7c8 100644
> --- a/libavcodec/aaccoder_twoloop.h
> ++
On Fri, Sep 25, 2015 at 10:39 PM, James Almer wrote:
>> ffmpeg | branch: master | Claudio Freire | Fri
>> Sep 25 03:56:32 2015 -0300| [9458a62decfcaa1313b1ba69276466de536d0768] |
>> committer: Claudio Freire
>>
>> AAC encoder: tweak PNS usage to be more aggr
On Fri, Sep 18, 2015 at 3:10 PM, James Almer wrote:
> On 9/15/2015 4:24 AM, Claudio Freire wrote:
>> This patch refactors the AAC coders to reuse code
>> between the MIPS port and the regular, portable C code.
>> There were two main functions that had to use
>>
On Wed, Sep 16, 2015 at 12:30 PM, Nedeljko Babic
wrote:
Patch attached.
I thought it was worth a review.
It does include lots of copypaste.
FTR, I tested MIPS 74Kf and x86_64 with make fate-aac
>>>
>>> full fate passes on qemu mips here as well!
>>
>>If
On Tue, Sep 15, 2015 at 8:11 AM, Michael Niedermayer wrote:
> On Tue, Sep 15, 2015 at 04:24:02AM -0300, Claudio Freire wrote:
>> This patch refactors the AAC coders to reuse code
>> between the MIPS port and the regular, portable C code.
>> There were two main functions th
00:00:00 2001
From: Claudio Freire
Date: Tue, 15 Sep 2015 03:59:45 -0300
Subject: [PATCH] AAC encoder: refactor to resynchronize MIPS port
This patch refactors the AAC coders to reuse code
between the MIPS port and the regular, portable C code.
There were two main functions that had to use
hand-opt
I'm also looking into it.
It's simply that it tends to get out of sync with the rest really.
I will remove some duplicated code (namely the twoloop and trellis
functions which are verbatim copies of their counterparts in
aaccoder), while somehow keeping the fact that they used the optimized
quant
On Tue, Sep 1, 2015 at 5:54 AM, Robert Krüger wrote:
>> It's been the plan all along to negotiate the removal of the
>> experimental flag after pushing those changes discussed and heavily
>> tested in ticket #2686.
>>
>> If anything, this thread expresses support for that plan ;)
>>
>> So, I'd sti
On Mon, Aug 31, 2015 at 6:59 AM, Robert Krüger wrote:
> On Mon, Aug 31, 2015 at 10:44 AM, Carl Eugen Hoyos wrote:
>
>> Hi!
>>
>> I didn't test myself but iiuc, the aac encoder produces better
>> quality than all other libavcodec audio encoders and better
>> quality than the libvo-aac encoder that
On Sat, Aug 22, 2015 at 4:51 AM, Nicolas George wrote:
> Le quintidi 5 fructidor, an CCXXIII, Claudio Freire a écrit :
> > They were included in the symbol table but only as local, the
> libavcodec.v
> > file makes sure to make everything not explicitly mentioned fo
On Sat, Aug 22, 2015 at 1:01 AM, Timothy Gu wrote:
> On Fri, Aug 21, 2015 at 10:49:01PM -0400, Ganesh Ajjanagadde wrote:
> > There are too many entries here for me to verify which ones are exposed,
> etc.
> > I trust you identified them correctly.
>
> To the best of my knowledge, yes. To anyone r
On Wed, Jul 29, 2015 at 1:44 AM, Rostislav Pehlivanov
wrote:
> With the new method to determine the phase, the functions
> got sufficiently large to have their own file.
> There are absolutely no changes from the IS patch from
> this patchset, this commit simply moves it out of aaccoder.c
> Encodi
On Wed, Jul 29, 2015 at 1:44 AM, Rostislav Pehlivanov
wrote:
> As well as tables littered everywhere, functions were spread
> out all across the encoder's files. This moves them to a single
> place where they can be used by either the encoder's main files
> or additional encoder files. Additionall
On Wed, Jul 29, 2015 at 1:44 AM, Rostislav Pehlivanov
wrote:
> This commit moves any tables specific to the encoder from aacenc
> and aaccoder to a separate file called 'aacenctab.c/.h'.
> This was done as a clean up attempt as the encoder was filled with
> tables pasted in between functions which
On Wed, Jul 29, 2015 at 1:44 AM, Rostislav Pehlivanov
wrote:
> +if (cpe->ms_mode)
> +phase = 1 - 2 * cpe->ms_mask[w*16+g];
Shouldn't it be ?
phase *= 1 - ... ;
phase is an argument, the original code would step on it, with a value
that doesn't depend on phase, so it would fail to e
On Fri, Jul 31, 2015 at 9:56 PM, Michael Niedermayer
wrote:
>
> Rostislav, Claudio
> please both of you send me your public SSH keys, i think you both
> should have git write access
Sent mine on a private email. Let me know if you didn't get it.
___
ffm
On Wed, Jul 29, 2015 at 1:44 AM, Rostislav Pehlivanov
wrote:
> This commit removes a redundant argument from the functions in aaccoder.
> The argument lambda was redundant as it was just a copy of s->lambda,
> to which all functions have access to anyway. This cleans up the function
> pointers a b
On Wed, Jul 29, 2015 at 4:15 PM, Michael Niedermayer
wrote:
> On Mon, Jul 27, 2015 at 07:28:35PM +0200, Michael Niedermayer wrote:
>> On Mon, Jul 20, 2015 at 11:40:54PM -0300, Claudio Freire wrote:
>> > On Mon, Jul 20, 2015 at 11:39 PM, Claudio Freire
>> > wrote:
>
On Wed, Jul 22, 2015 at 6:18 AM, Nedeljko Babic
wrote:
>>On Mon, Jul 20, 2015 at 8:50 AM, Nedeljko Babic
>> wrote:
This commit moves the tables required for encoding and decoding
LTP and TNS AAC files out of the decoder's standalone tables file
and into the shared aactab.h, where they
On Tue, Jul 21, 2015 at 2:50 PM, Claudio Freire wrote:
> On Mon, Jul 20, 2015 at 5:08 AM, Venelin Efremov
> wrote:
>> The error message I get from the latest git head is:
>> [aac_latm @ 0x3a226e0] Non-byte-aligned audio-specific config is not
>> implemented. Update yo
On Mon, Jul 20, 2015 at 5:08 AM, Venelin Efremov wrote:
> The error message I get from the latest git head is:
> [aac_latm @ 0x3a226e0] Non-byte-aligned audio-specific config is not
> implemented. Update your FFmpeg version to the newest one from Git. If the
> problem still occurs, it means that y
On Mon, Jul 20, 2015 at 10:05 PM, Claudio Freire wrote:
> This will need rebasing, the fixed tablegen got in recently
>
>
> On Fri, Jul 17, 2015 at 6:20 PM, Rostislav Pehlivanov
> wrote:
>> This commit moves the generation of ff_aac_pow34sf_tab[] out of the
>>
On Mon, Jul 20, 2015 at 11:39 PM, Claudio Freire wrote:
> On Fri, Jul 17, 2015 at 8:42 PM, Michael Niedermayer
> wrote:
>>> If you mean a transition in time, I don't think it makes any
>>> difference. 0.95 is a ~0.5db change in intensity, which ought to be
>
the transition
Attached is a patch with something like that.
1. It measures per-window minimum clip avoidance factor
2. Computes a whole-frame factor (minimum of all)
3. Applies the clip avoidance factor to the whole frame (to make it
smooth and almost linear, and avoid adding harmonic distortion).
This will need rebasing, the fixed tablegen got in recently
On Fri, Jul 17, 2015 at 6:20 PM, Rostislav Pehlivanov
wrote:
> This commit moves the generation of ff_aac_pow34sf_tab[] out of the
> encoder and into the table generator. The original commit log for
> this table in 2011 actually mentions
On Fri, Jul 17, 2015 at 11:19 PM, Rostislav Pehlivanov
wrote:
>>But even if not used for avoding I/S, it can be used to pick whether
>>to invert the phases, where it was clearly more stable.
> In case the phase is very clearly wrong then there will be an increase in
> the distortion which should c
On Mon, Jul 20, 2015 at 8:50 AM, Nedeljko Babic
wrote:
>>This commit moves the tables required for encoding and decoding
>>LTP and TNS AAC files out of the decoder's standalone tables file
>>and into the shared aactab.h, where they can be used by both the
>>encoder and the decoder.
>>
>>This commi
On Mon, Jul 20, 2015 at 4:15 PM, Rostislav Pehlivanov
wrote:
> Yep, with this patch compute_lpc_coefs() (referenced in aacdec_template.c
> when applying TNS) in ltp.c prints a warning when compiling the fixed
> decoder, which is fine since it changed a type from INTFLOAT to float.
>
>>And it will
On Fri, Jul 17, 2015 at 10:32 PM, Rostislav Pehlivanov
wrote:
> That previous idea discriminated way too many bands for it to be actually
> useful. And it would require special cases for coefficients which 'blow up'
> and have an insane value.
...
>> What happened to the idea of comparing the ener
On Fri, Jul 17, 2015 at 8:42 PM, Michael Niedermayer
wrote:
>> If you mean a transition in time, I don't think it makes any
>> difference. 0.95 is a ~0.5db change in intensity, which ought to be
>> inaudible, and windowing will already take care to make the transition
>> smooth. And the logic woul
On Fri, Jul 17, 2015 at 6:20 PM, Rostislav Pehlivanov
wrote:
> This commit adds a slightly more robust way of determining whether the phases
> match or are too different for IS to be used.
> ---
> libavcodec/aaccoder.c | 7 +--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git
On Fri, Jul 17, 2015 at 7:09 PM, Rostislav Pehlivanov
wrote:
>>attachment.bin:357: trailing whitespace.
>>attachment.bin:436: trailing whitespace.
>>attachment.bin:454: trailing whitespace.
Oops
> You should probably configure your editor to strip that off automatically.
I don't like it to be d
On Fri, Jul 17, 2015 at 7:36 PM, Michael Niedermayer
wrote:
>> diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
>> index f05f51b..6ff95b1 100644
>> --- a/libavcodec/aacenc.c
>> +++ b/libavcodec/aacenc.c
>> @@ -46,6 +46,7 @@
>> #include "psymodel.h"
>>
>> #define AAC_MAX_CHANNELS 6
>> +#def
cally weighted error would make for
a representative test, so that will be left for a future patch.
From 9da94f02574b34025a56c225c11269802f49949b Mon Sep 17 00:00:00 2001
From: Claudio Freire
Date: Fri, 17 Jul 2015 05:47:25 -0300
Subject: [PATCH] AAC Encoder: clipping avoidance
Avoid clipping d
On Thu, Jul 2, 2015 at 3:13 PM, Rostislav Pehlivanov
wrote:
> This commit enables the function added with commit 7c10b87 and uses that new
> function for setting any special scalefactor indices. This commit does not
> change the behaviour of the encoder since no bands are being marked as either
On Thu, Jul 2, 2015 at 3:13 PM, Rostislav Pehlivanov
wrote:
> This commit undoes commit c5d4f87e8427c0952278ec247fa8ab1e6e52 and
> removes PNS band marking from the twoloop coder, which has been reimplemented
> in a better way in this series of patches.
LGTM as long as the rest of the patc
On Thu, Jul 2, 2015 at 3:13 PM, Rostislav Pehlivanov
wrote:
> This commit implements intensity stereo coding support to the native aac
> encoder. This is a way to increase the efficiency of the encoder by zeroing
> the right channel's spectral coefficients (in a channel pair) and rederiving
> t
t; marking M/S as present in encode_ms_info() is okay). Much of the changes here
> were taken from the decoder and inverted. This commit does not change the
> functionality of the decoder as the previous patch in this series zeroes
> ms_mask and is_mask.
>
> Reviewed-by: Cla
nges from the previous version being that
> this version uses the new band->spread metric from aacpsy and normalizes the
> energy using the group size. These changes were suggested by Claudio Freire
> on the mailing list. Another change is the use of lambda to alter the
> frequenc
On Thu, Jul 2, 2015 at 3:13 PM, Rostislav Pehlivanov
wrote:
> There were some mistakes in the code for M/S stereo, this commit fixes them.
> The start variable was not being reset for every window and every access to
> the coefficients was incorrect as well. This fixes that by properly
> addres
On Thu, Jul 2, 2015 at 3:13 PM, Rostislav Pehlivanov
wrote:
> This commit resets any bands marked as M/S or IS upon encoding a frame. This
> is needed because the arrays may contain some residual information upon
> allocation on startup and because there isn't any mechanism to reset the
> array
o code
> as noise. The spread[w+g] used before this patch behaved more like a low-pass
> filter for PNS band_types, which could mistakingly mark some low frequency
> bands as noise.
>
> Reviewed-by: Claudio Freire
> ---
> libavcodec/aacpsy.c | 2 +-
> 1 file changed, 1
ode for PNS and moves it
>> into a seperate function which handles setting of scalefactor indices for
>> PNS and IS bands.
>>
>> Reviewed-by: Claudio Freire
>> Signed-off-by: Michael Niedermayer
>>
>> > http://git.videolan.org/gitweb
LGTM, but it cannot be committed without the others, or a memset to
zero of is_mask somewhere at the beginning of each frame (or encoder
init).
On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
wrote:
> This commit adds support for the coding of intensity stereo spectral
> coefficients. It a
On Tue, Jun 30, 2015 at 1:33 AM, Rostislav Pehlivanov
wrote:
>
> Why the need to have "sce->pns_ener[w*16+g] = energy /
> sce->ics.group_len[w];", normalization? The energy value is log2'd during
> scalefactor indices calculation so it's hardly going to change much. Will do
> some tests to see if
On Mon, Jun 29, 2015 at 10:58 PM, Claudio Freire wrote:
> On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
> wrote:
>> +if (spread > NOISE_SPREAD_THRESHOLD &&
>> +((sce->zeroes[w*16+g] && energy >= threshold) ||
On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
wrote:
> +++ b/libavcodec/aacpsy.c
> @@ -781,6 +781,7 @@ static void psy_3gpp_analyze_channel(FFPsyContext *ctx,
> int channel,
>
> psy_band->threshold = band->thr;
> psy_band->energy= band->energy;
> +
On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
wrote:
> +if (spread > NOISE_SPREAD_THRESHOLD &&
> +((sce->zeroes[w*16+g] && energy >= threshold) ||
> +energy < threshold*(NOISE_LAMBDA_NUMERATOR/lambda))) {
> +sce->b
On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
wrote:
> +if (dist2 <= dist1) {
> +cpe->is_mask[w*16+g] = 1;
> +cpe->ch[0].is_ener[w*16+g] = ener1/ener01;
> +cpe->ch[1].is_ener[w*16+g] = ener0/ener1;
> +
Seems straightforward enough. LGTM.
On Fri, Jun 26, 2015 at 5:16 PM, Rostislav Pehlivanov
wrote:
> This commit adds support for the coding of intensity stereo scalefactor
> indices. It does not do any marking of such bands and as such does no
> functional changes to the encoder. It removes any
1 - 100 of 153 matches
Mail list logo