Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Questionable pre-echo handling with Apple's AAC encoder (Read 6287 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Questionable pre-echo handling with Apple's AAC encoder

Lately I have been planning to re-transcode my lossless music collection to a smaller bitrate to reduce the size for my iPhone and mini 16GB USB stick that I use for my car stereo. So I thought I will do some testing with AAC at 160 kbps. A small test was done with a small collection of lossless albums that I have laying about on my main computer's hard drive. Apple's AAC encoder does really well at 82 true VBR, however the pre-echo handling seems to be really bad to my ears.

I have encoded 6 albums at True VBR 82 and CVBR 160 kbps and found a couple of tracks that have obvious artifacts that seem to be very noticeable on Apple's AAC encoder:

True VBR q82:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 02:05:45

File A: C:\Temp\AAC VBR 82\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.m4a
File B: C:\Rips\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.flac

02:05:45 : Test started.
02:06:02 : 01/01  50.0%
02:06:05 : 02/02  25.0%
02:06:10 : 03/03  12.5%
02:06:15 : 04/04  6.3%
02:06:21 : 05/05  3.1%
02:06:29 : 06/06  1.6%
02:06:38 : 07/07  0.8%
02:06:45 : 08/08  0.4%
02:06:53 : 09/09  0.2%
02:06:59 : 10/10  0.1%
02:07:01 : Test finished.

----------
Total: 10/10 (0.1%)

Artifact appears at 0:02, due to the sharp percussion.

CVBR at 160kbps:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 02:11:24

File A: C:\Rips\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.flac
File B: C:\Temp\AAC CVBR 160\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.m4a

02:11:24 : Test started.
02:11:39 : 01/01  50.0%
02:11:47 : 02/02  25.0%
02:12:03 : 03/03  12.5%
02:12:09 : 04/04  6.3%
02:12:22 : 05/05  3.1%
02:12:40 : 06/06  1.6%
02:12:51 : 07/07  0.8%
02:12:58 : 08/08  0.4%
02:13:04 : 08/09  2.0%
02:13:15 : 09/10  1.1%
02:13:28 : Test finished.

----------
Total: 9/10 (1.1%)

The artifact stills appears, but it is less noticeable.

True VBR q91:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 02:08:56

File A: C:\Rips\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.flac
File B: C:\Temp\AAC VBR 91\Nine Inch Nails\Hesitation Marks\1.04. Find My Way.m4a

02:08:56 : Test started.
02:09:23 : 01/01  50.0%
02:09:34 : 02/02  25.0%
02:09:42 : 03/03  12.5%
02:09:51 : 04/04  6.3%
02:09:57 : 05/05  3.1%
02:10:07 : 06/06  1.6%
02:10:12 : 07/07  0.8%
02:10:17 : 08/08  0.4%
02:10:24 : 09/09  0.2%
02:10:35 : 10/10  0.1%
02:10:36 : Test finished.

----------
Total: 10/10 (0.1%)


The artifact still appears and sounds worse then 160 CVBR. The track seems fine with libfdk-aac 3.4.12 at VBR V4.

Another track from the collection pool, that produces obvious pre-echo artifacts that both appear on LAME and libfdk-aac:

True VBR q82:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 13:52:54

File A: C:\Rips\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).flac
File B: C:\Temp\AAC VBR 82\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).m4a

13:52:54 : Test started.
13:53:19 : 01/01  50.0%
13:53:24 : 02/02  25.0%
13:53:31 : 03/03  12.5%
13:53:37 : 04/04  6.3%
13:53:45 : 05/05  3.1%
13:53:51 : 06/06  1.6%
13:53:57 : 07/07  0.8%
13:54:05 : 08/08  0.4%
13:54:18 : 09/09  0.2%
13:54:26 : 10/10  0.1%
13:54:28 : Test finished.

----------
Total: 10/10 (0.1%)

A very obvious artifact appears past 0.01, which shares a similar problem to the Show Me Your Spine sample.

CVBR at 256kbps:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 14:07:50

File A: C:\Rips\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).flac
File B: C:\Temp\CVBR 256\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).m4a

14:07:50 : Test started.
14:08:04 : 01/01  50.0%
14:08:12 : 02/02  25.0%
14:08:21 : 03/03  12.5%
14:08:31 : 04/04  6.3%
14:08:40 : 05/05  3.1%
14:08:49 : 06/06  1.6%
14:09:02 : 07/07  0.8%
14:09:09 : 08/08  0.4%
14:09:23 : 09/09  0.2%
14:09:38 : 10/10  0.1%
14:09:41 : Test finished.

----------
Total: 10/10 (0.1%)

Since the artifact was really obvious, I jumped to constrained VBR at 256kbps. The artifact is still present but is more softer and tolerable.

Libfdk-AAC at VBR 4:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 18:40:31

File A: C:\Temp\Fhg AAC VBR 4\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).m4a
File B: C:\Rips\Gary Numan\Splinter (Songs from a Mind) [Deluxe Edition]\2.05. I Am Dust (Roman Remains Remix).flac

18:40:31 : Test started.
18:40:55 : 01/01  50.0%
18:41:07 : 01/02  75.0%
18:41:54 : 02/03  50.0%
18:42:04 : 03/04  31.3%
18:42:10 : 04/05  18.8%
18:42:16 : 05/06  10.9%
18:42:20 : 06/07  6.3%
18:42:28 : 07/08  3.5%
18:42:50 : 08/09  2.0%
18:43:01 : 09/10  1.1%
18:43:42 : 10/11  0.6%
18:43:50 : 11/12  0.3%
18:44:03 : Test finished.

----------
Total: 11/12 (0.3%)

A couple of artifacts appear at 0:09 - 0:13, however the libfdk-aac encode is harder to ABX compared to the samples that was encoded with Apple's AAC encoder.

Samples can be found on this link.
"I never thought I'd see this much candy in one mission!"

Questionable pre-echo handling with Apple's AAC encoder

Reply #1
Dude, You rock.

I didn't have much of experience with FDK. It has more aggressive lowpass at lower bitrate (like 96 kbps) so I didn't pay much attention to it.
But FDK can be actually pretty good at higher bit rate. In past I gave a try to it, just fast listening (not ABX) at 128 kbps and I was actually pretty pleased.


And Nine Inch Nails has great stuff to tests. A load of extremely sharp transients those break a bunch of codecs.

P.S. So it might be worth to test AAC encoders FDK, FhG, Apple etc ...  at 128 kbps or higher

Questionable pre-echo handling with Apple's AAC encoder

Reply #2
Dude, You rock.

Thanks.

I didn't have much of experience with FDK. It has more aggressive lowpass at lower bitrate (like 96 kbps) so I didn't pay much attention to it.
But FDK can be actually pretty good at higher bit rate. In past I gave a try to it, just fast listening (not ABX) at 128 kbps and I was actually pretty pleased.


Your totally right about the aggressive lowpass, it's even too aggressive at VBR 4! Sadly VBR 5 has no lowpass filter and produces bitrates at 180 - 200 kbps, which still too low to keep full the frequency in my opinion.

I have tried some heavy metal music with FDK at VBR 4:
Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/15 00:02:34

File A: C:\Temp\Fhg AAC VBR 4\Mastodon\Once More 'Round the Sun\03. High Road.m4a
File B: C:\Rips\Mastodon\Once More 'Round the Sun\03. High Road.flac

00:02:34 : Test started.
00:02:51 : 01/01  50.0%
00:02:55 : 02/02  25.0%
00:02:59 : 03/03  12.5%
00:03:03 : 04/04  6.3%
00:03:09 : 05/05  3.1%
00:03:15 : 06/06  1.6%
00:03:21 : 07/07  0.8%
00:03:26 : 08/08  0.4%
00:03:31 : 09/09  0.2%
00:03:34 : 10/10  0.1%
00:03:36 : Test finished.

----------
Total: 10/10 (0.1%)

Warbling on guitars and smeared drums.

Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/14 23:56:48

File A: J:\Music\Metallica - Ride the Lightning\05. Trapped Under Ice.flac
File B: C:\Temp\Fhg AAC VBR 4\Metallica\Ride the Lightning\05. Trapped Under Ice.m4a

23:56:48 : Test started.
23:57:20 : 01/01  50.0%
23:57:26 : 02/02  25.0%
23:57:32 : 03/03  12.5%
23:57:47 : 04/04  6.3%
23:57:53 : 05/05  3.1%
23:58:04 : 06/06  1.6%
23:58:09 : 07/07  0.8%
23:58:17 : 08/08  0.4%
23:58:25 : 09/09  0.2%
23:58:39 : 10/10  0.1%
23:58:44 : Test finished.

----------
Total: 10/10 (0.1%)

Warbling appears at the start when the guitar distorts, which is possibly due to the low-pass filter.

Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/15 00:06:32

File A: J:\Music\Mastodon - Leviathan\02. I Am Ahab.flac
File B: C:\Temp\Fhg AAC VBR 4\Mastodon\Leviathan\02. I Am Ahab.m4a

00:06:32 : Test started.
00:07:14 : 01/01  50.0%
00:07:18 : 02/02  25.0%
00:07:25 : 03/03  12.5%
00:07:30 : 04/04  6.3%
00:07:36 : 05/05  3.1%
00:07:42 : 06/06  1.6%
00:07:46 : 07/07  0.8%
00:07:50 : 07/08  3.5%
00:07:54 : 08/09  2.0%
00:07:59 : 09/10  1.1%
00:08:03 : 10/11  0.6%
00:08:07 : 11/12  0.3%
00:08:09 : Test finished.

----------
Total: 11/12 (0.3%)

Drum sounds weak or too clear, possible smearing artifact.

Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/15 00:08:59

File A: J:\Music\Mastodon - Leviathan\04. Island.flac
File B: C:\Temp\Fhg AAC VBR 4\Mastodon\Leviathan\04. Island.m4a

00:08:59 : Test started.
00:09:21 : 01/01  50.0%
00:09:27 : 02/02  25.0%
00:09:30 : 03/03  12.5%
00:09:38 : 04/04  6.3%
00:09:43 : 05/05  3.1%
00:09:51 : 06/06  1.6%
00:10:00 : 07/07  0.8%
00:10:08 : 08/08  0.4%
00:10:14 : 09/09  0.2%
00:10:19 : 10/10  0.1%
00:10:25 : 11/11  0.0%
00:10:29 : 12/12  0.0%
00:10:31 : Test finished.

----------
Total: 12/12 (0.0%)

Warbling artifacts on the guitar distortion.

After that quick test, it seems that FDK might not be suitable for me at VBR 4. However VBR 4 does produce low bitrates compared to q 82, so I will have to test a lower VBR setting with Apple's AAC encoder.


"I never thought I'd see this much candy in one mission!"

Questionable pre-echo handling with Apple's AAC encoder

Reply #3
A very obvious artifact appears past 0.01, which shares a similar problem to the Show Me Your Spine sample.

Indeed, pre-echo on the second bass kick (at 1.6s) of "I Am Dust (Roman Remains Remix)" is way too obvious to miss. Sounds much blighter on Apple AAC.

Questionable pre-echo handling with Apple's AAC encoder

Reply #4
I have tried the I Am Dust sample at True VBR q 127 and 320Kbps ABR. True VBR q127 produces the file at 348kbps while the 320kbps ABR is at 322kbps. What is interesting is that I'm having trouble doing a successful ABX with the 320kbps ABR encode, while the artifact still appears at q127 but much softer then q82:

Code: [Select]
foo_abx 1.3.4 report
foobar2000 v1.3.6
2015/06/15 12:39:39

File A: C:\Temp\I Am Dust (Roman Remins Remix).flac
File B: C:\Temp\I Am Dust (Roman Remins Remix) q127.m4a

12:39:39 : Test started.
12:39:57 : 01/01  50.0%
12:40:04 : 02/02  25.0%
12:40:13 : 03/03  12.5%
12:40:30 : 04/04  6.3%
12:40:40 : 05/05  3.1%
12:40:48 : 05/06  10.9%
12:40:58 : 06/07  6.3%
12:41:26 : 07/08  3.5%
12:41:36 : 08/09  2.0%
12:41:44 : 09/10  1.1%
12:42:01 : Test finished.

----------
Total: 9/10 (1.1%)
"I never thought I'd see this much candy in one mission!"