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: exhale - Open Source USAC encoder (Read 304406 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.


Re: exhale - Open Source USAC encoder

Reply #827
enc v1.1.5-08ac873c, dec v1.23
#a-g - need tuning at high frequencies.
> Exodus-Blak_13.flac

 

Re: exhale - Open Source USAC encoder

Reply #829
exhale.exe -v returns a version string. That could be written as MP4 udta box along with the CVBR preset set in the new Converter GUI for exhale.

Chris
If I don't reply to your reply, it means I agree with you.

Re: exhale - Open Source USAC encoder

Reply #830
Where would it obtain this information? The files don't appear to be tagged with any such value.
Some programs and applications are tagging this information, look at the attached image.

Re: exhale - Open Source USAC encoder

Reply #831
When will foobar learn to display version-build number in file details?

Take that up with @Peter. Author of foobar2000
Where would it obtain this information? The files don't appear to be tagged with any such value.

My fault, thought about fb2ks version........

Re: exhale - Open Source USAC encoder

Reply #832
enc v1.1.5-08ac873c, dec v1.23
#a-g - need tuning at high frequencies.
> Exodus-Blak_13.flac
It's probably not  something to do with tuning. It's how SBR works and this particular sample is just hard for it.
You can try without SBR and see or resample your source to 64 kHz that would push SBR range to higher range only (15-20 kHz) making its impact pretty insignificant and very close to no-SBR mode. 


Re: exhale - Open Source USAC encoder

Reply #834
Exodus: Igor is (partially) right. SBR can, in principle, deal with such weird high-frequency sine tones to some extent, but exhale, with its simplified SBR encoder, cannot. Btw, do you actually hear high-frequency artifacts on that sample, or are you looking more at spectrograms?

Vangelis: Issue confirmed, I managed to reduce that effect, but need more time for checks since my fix changes the encoding of many samples when encoding with one of the SBR modes. You seem very experienced at spotting such issues. Are you a codec developer yourself? ;)

Chris
If I don't reply to your reply, it means I agree with you.

Re: exhale - Open Source USAC encoder

Reply #835
I hear the whistle that after encoding turns into hiss  :o Who else hears?
 I am the developer of the problems :D

Re: exhale - Open Source USAC encoder

Reply #836
After my comparison between SBR and non-NBR settings of Exhale at ~48 and ~64 kbps, here is my bling test comparison at ~80 kbps. 40 samples were tested, divided in four group of 10 samples—the last one being usually much harder for lossy encoders. Bitrate is not fully comparable: exhale d (SBR) is ~74 kbps and exhale 2 is ~80 kbps (and Exhale e is ~86 kbps on my bitrate table).



At this bitrate and on these 40 samples SBR and non-SBR settings are on par (3,78 vs 3,72) and statistically tied. The graph also show that SBR is here less reliable than non-SBR: more samples on the top and more samples on the bottom of the graph. With SBR Exhale shines more often than without SBR but seems to have stronger issues as well. It's not something new, SBR is like that…

If I split the whole picture into two separate groups (30 samples of "common" musical samples and a last group of problem samples):


Exhale d is not statistically better than exhale 2 on common music samples but is obviously worse on known as problematic samples (due to strong smearing for the most part). Moreover the slight quality bonus that appears with SBR is coming for a good part from the 10 classical samples group:


As a conclusion there's no evidence that SBR is of any benefit over non-SBR settings at 80 kbps but it's really clear that SBR harms sound quality on sharp transients (lower time resolution) and that quality is more volatile. SBR might nevertheless bring at this bitrate some quality gain on specific musical genre (classical music, atmospheric, that kind of ~tonal music).

Therefore I won't test SBR vs non-SBR at higher bitrate (eg 96 kbps).




_____



Re: exhale - Open Source USAC encoder

Reply #837
Now if I merge my two separate tests (48 & 64 kbps; 80 kbps) I get the following results:






Quality improvements between Exhale c and Exhale d is only +0.2 for a 12.5 kbps bonus. Without SBR the MOS improves by +0.5 between Exhale 1 and 2 for 15 additional kbps. It's clear that SBR struggles to increase quality past ~64 kbps.


Kamedo2 also made a table of test's results; the update version looks like this:

Target bitrateBest command lineMOS reported by testers
36kbpsexhale a in.wav out.mp4
48kbpsexhale b in.wav out.mp43.03, guruboolez
60kbpsexhale c in.wav out.mp43.34, Kamedo2 3.52, guruboolez
64kbpsrefalac64 in.wav --rate 32000 -D -b 32 -o in-32kHz.wav && exhale 1 in-32kHz.wav out.mp43.43, Kamedo2 3.05, guruboolez
75kbpsexhale d in.wav out.mp43.72, guruboolez
80kbpsexhale 2 in.wav out.mp43.79, Kamedo2 3.78, guruboolez
85kbpsexhale e in.wav out.mp43.64, Kamedo2
96kbpsexhale 3 in.wav out.mp44.15, Kamedo2 4.37, IgorC
112kbpsexhale 4 in.wav out.mp4
128kbpsexhale 5 in.wav out.mp44.39, Kamedo2
144kbpsexhale 6 in.wav out.mp4
160kbpsexhale 7 in.wav out.mp4
176kbpsexhale 8 in.wav out.mp4
192kbpsexhale 9 in.wav out.mp44.86, IgorC
At 80 kbps with Exhale 2 Kamedo2 and I share the exact same Mean Opinions Score (3.79 vs 3.78) despite different samples and test settings. SBR MOS are a bit different but not very far (3.64 with Exhale e/85kbps for Kamedo2 and 3.72 with exhale d/74kbps on my side).

Re: exhale - Open Source USAC encoder

Reply #838
We may want to remove the 85kbps exhale e, because one can both cut 5kbps and have the better rating, in other words 85kbps exhale e is not a current pareto frontier.

Target bitrateBest command line, based on tests and (when no data exists) anecdotal evidenceMOS reported by testers
36kbpsexhale a in.wav out.mp4
48kbpsexhale b in.wav out.mp43.03, guruboolez
60kbpsexhale c in.wav out.mp43.34, Kamedo2 3.52, guruboolez
64kbpsrefalac64 in.wav --rate 32000 -D -b 32 -o in-32kHz.wav && exhale 1 in-32kHz.wav out.mp43.43, Kamedo2 3.05, guruboolez
75kbpsexhale d in.wav out.mp43.72, guruboolez
80kbpsexhale 2 in.wav out.mp43.79, Kamedo2 3.78, guruboolez
96kbpsexhale 3 in.wav out.mp44.15, Kamedo2 4.37, IgorC
112kbpsexhale 4 in.wav out.mp4
128kbpsexhale 5 in.wav out.mp44.39, Kamedo2
144kbpsexhale 6 in.wav out.mp4
160kbpsexhale 7 in.wav out.mp4
176kbpsexhale 8 in.wav out.mp4
192kbpsexhale 9 in.wav out.mp44.86, IgorC

Re: exhale - Open Source USAC encoder

Reply #839
Bitrate is not fully comparable: exhale d (SBR) is ~74 kbps and exhale 2 is ~80 kbps (and Exhale e is ~86 kbps on my bitrate table).
Interesting test.  :) 
I guess It wouldn't be bad idea to test both SBR ~74 and ~86 kbps settings and calculate an estimate score (at imaginary ~80 kbps) by averaging both values.

Re: exhale - Open Source USAC encoder

Reply #840
Bitrate is not fully comparable: exhale d (SBR) is ~74 kbps and exhale 2 is ~80 kbps (and Exhale e is ~86 kbps on my bitrate table).
Interesting test.  :) 
I guess It wouldn't be bad idea to test both SBR ~74 and ~86 kbps settings and calculate an estimate score (at imaginary ~80 kbps) by averaging both values.
It's indeed a good but time expensive solution.

Some score/MOS estimation of mine for SBR:

50 kbps to 61 kbps [+11 kbps] = +0.49
61 kbps to 73 kbps [+12 kbps] = +0.20
73 kbps to 85 kbps [+12 kbps] = +0.10…0.15 [estimation]
so 80 kbps => +0.05 to +0.07 = 3.77 to 3.79



Re: exhale - Open Source USAC encoder

Reply #843
Some score/MOS estimation of mine for SBR:

50 kbps to 61 kbps [+11 kbps] = +0.49
61 kbps to 73 kbps [+12 kbps] = +0.20
73 kbps to 85 kbps [+12 kbps] = +0.10…0.15 [estimation]
so 80 kbps => +0.05 to +0.07 = 3.77 to 3.79
I see, means a conclusion is pretty the same:
SBR is useful at 36,48 and maybe 60 kbps bitrates and not higher.

Thanks!

Re: exhale - Open Source USAC encoder

Reply #844
I think the SBR preset d (target rate 72 kbps for stereo) is actually a good intermediate choice between the ~60 kbps of SBR preset c and the ~80 kbps of non-SBR preset 2. As guruboolez's results show, it allows you to save a few kbps with "easier-to-code" musical genres like pop or classical music. On the other hand, if you're listening more to rock or electronic music, you can spend only a few kbps more with preset 2 and get slightly better quality.

Btw, starting at SBR preset c, upsampling the input to 48 kHz may give very slightly better audio quality on transient samples (since SBR starts around 11.6 instead of 11 kHz). Just for the record, I haven't actually tested that myself since my high-frequency hearing isn't what it used to be.

I hear the whistle that after encoding turns into hiss  :o Who else hears?
I am the developer of the problems :D
:) Any further problems to report? I also hear the whistle, but only when I turn up the volume so much that the loudness of the music hurts my ears.

Chris
If I don't reply to your reply, it means I agree with you.

Re: exhale - Open Source USAC encoder

Reply #845
I can hear it at the lowest volume. Is it worth it for us to add a key to expand the high range for SBR?

Re: exhale - Open Source USAC encoder

Reply #846
I think the SBR preset d (target rate 72 kbps for stereo) is actually a good intermediate choice between the ~60 kbps of SBR preset c and the ~80 kbps of non-SBR preset 2. As guruboolez's results show, it allows you to save a few kbps with "easier-to-code" musical genres like pop or classical music. On the other hand, if you're listening more to rock or electronic music, you can spend only a few kbps more with preset 2 and get slightly better quality.
Yep, more than fair enough!

Btw, starting at SBR preset c, upsampling the input to 48 kHz may give very slightly better audio quality on transient samples (since SBR starts around 11.6 instead of 11 kHz).
I have unfinished test of older version exhale 1.1.0, SBR, 44.1 vs 48 kHz @ ~ 48 kbps.
48kHz helps a lot actually even  at 48 kbps.
Code: [Select]
	48 kbps , exhale 1.1.0					
exhale noSBR exhale sbr exhale sbr 48 kHz Opus 47.2k MP3 96k MP3 128k
01 Castanets 2.8 1.8 3.2 2.6 2.6 2.8
02 Fatboy 1.3 1.3 1.3 4.2 1.5 3.6
03 EIG 4.1 2.5 2.7 3.6 1.6 2.9
04 Bachpsichord 2.3 2.9 4.5 1.8 2.5 4.5
05 Enola 3 2.9 2.9 2.1 3.1 4.5
06 Trumpet 3.2 3.5 3.2 3.9 2.7 2.9
07 applaud
08 Velvet
09 Linchpin
10 spill_the_blood

Kamedo2’s samples:
11 final fantasy bach
12 A train Jazz
13 Big Yellow
13 Fatboy
14 Floor Essence
15 Macabre Orchestral
16 mybloodrusts guitar
17 quizas
18 VelvetRealm
19 Amefuribana Pops
20 Trust Gospel
21 Waiting
22 Experiencia
23  Heart to Heart
24 Tom's Dinar
26 French Speech
27 undelete

MOS (Mean Opinion Score) 2.78 2.48 2.97 3.03 2.33 3.53

min 1.3 1.3 1.3 1.8 1.5 2.8

Another unfinished test on 3-band vs 1-band SBR .  (exhale 1.1.1 vs 1.1.0)
Code: [Select]
	48 kbps SBR	
Exhale 1.1.1 Exhale 1.1.0
01 Castanets 3 3
02 Get Your shirt 4.1 3.8
03 EIG 2.5 2.5
04 Bachpsichord 3.4 3.1
05 Enola
06 Trumpet
07 applaud
08 Velvet
09 Linchpin
10 spill_the_blood
11 female_speech
12 french ad
13 fatboy

MOS (Mean Opinion Score) 3.25 3.10

min 2.5 2.5


Re: exhale - Open Source USAC encoder

Reply #847
EZ CD Audio Converter 9.3.2 now includes

Exhale Extended HE-AAC encoder 1.1.5-a327f120
and
Fraunhofer xHE-AAC encoder 3.5.5

Exhale can be enabled with CTRL+E for testing purposes.

You know what is changed in Exhale. The new Fraunhofer xHE-AAC encoder includes a fix for a bug that affected the audio quality on certain cases.

Is anyone interested performing audio quality tests Exhale vs Fraunhofer xHE-AAC or Fraunhofer FDK AAC vs Fraunhofer IIS AAC vs Apple AAC ? I will give free EZ CD Audio Converter license for testing purposes for those who are interested and have performed listening tests before here on hydrogenaud.io.

* If you consider this message as spam or advertisement please delete this message because it is not my intention *

Re: exhale - Open Source USAC encoder

Reply #848
The last version of Fraunhofer's xHE-AAC changes the bitrate allocation of VBR 0 and VBR 1 mode. See my bitrate table (on the dedicated tab):
https://docs.google.com/spreadsheets/d/18lGNoBB0ZB2A4SGAw3_z-5L7gzl54MG3D_V7tf2jII8/edit?usp=sharing

Other VBR modes looks unchanged.


For the anecdote, I've completed ~70% of my new listening test which compares OPUS to Fraunhofer's xHE-AAC at very low bitrate (translation=I'm interested by a KEY for making more tests in the future  :P )

Re: exhale - Open Source USAC encoder

Reply #849
I did a quick Dynamic Range test with foobar2000 and EZ CD Audio Converter 9.3.2

The FLAC DR is higher?