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: xHE-AAC. Is it ready yet? Any encoders out there? (Read 50297 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #50
About codec2 hold your breath because we have now parametric-WaveNet, basically codec2 at 2.4Kbps decoded using a wavenet model.

https://arxiv.org/abs/1712.01120
https://storage.googleapis.com/downloads.webmproject.org/icassp2018/index.html
WOW that's some serious audio black magic and witchcraft!
Makes me wonder if the idea of deep machine learning could be applied on a general purpose codec (instead of just speech codec) to achieve a similar efficiency ratio.
Deep machine learning is really revolutionarizing computing as we knew it up until now.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #51
I think xHE-AAC is ready to rock! I run 4 Internet Radio stations and all 4 have xHE-AAC streams (as well as 64kbps HE-AACv1, 320 kbps AAC stereo and 320kbps AAC 5.1 Surround streams). The encoders I use are software called StreamS Hi-Fi Encoders running on a Windows 10 Pro PC. The same PC is also running Orban Optimod PCn audio processing. Output from the Orban travels via Virtual Audio Cables to the StreamS Encoders.

I have both legacy Icecast and HLS streams running. At the moment StreamS Hi-Fi Radio for iOS and tvOS is the only player I'm aware of that can play the xHE-AAC streams. Last year Via Licensing changed the terms for xHE-AAC making it freely available to all existing AAC licensees which should encourage development of a lot more xHE-AAC players on various platforms.

My main xHE-AAC streams are 40kbps (average bit-rate) 48kHz sampling rate HLS format and are listed in the StreamS Hi-Fi Radio app directory. I also have 32kbps (constant bit-rate) 48kHz sampling rate Icecast format xHE-AAC streams for testing purposes. I think the 32kbps streams sound very good but to my ears 40kbps is the sweet spot for achieving true high-fidelity sound. Others' opinions may vary.

I archived a bit over half an hour of one of my stations off the 40kbps xHE-AAC HLS feeding my iPhone running StreamS Hi-Fi Radio to my Mac using AirPlay and Airfoil Satellite (on May 7th 2018 starting at 5:48 pm Pacific). I then output Airfoil Satellite to a virtual audio device with an app called Loopback and then recorded that with Audio Hijack in Apple Lossless Codec format (48kHz sampling rate). AirPlay also uses Apple Lossless Codec so the resulting recording should provide an accurate listening experience comparable to hearing the live broadcast with the iPhone app.

Anyone interested in this listening experience can download the file at this URL: LG73 xHE-AAC Sample in Apple Lossless Codec (zip format). The download will be available for a limited time. Anyone who has StreamS Hi-Fi Radio for iOS and tvOS can find my four xHE-AAC streams in the app directory and experience the xHE-AAC streams live. The stations are LG73.CA, MaxRadio.CA, NewWestRock.CA and UptownRadio.CA. Formats are Pop, Eclectic, Classic Soul and Classic Rock respectively. At the moment all four stations are running identical Optimod settings.

I may be considered a blasphemer around these parts for saying the following (seems like there are a lot of open source fans here), but I believe xHE-AAC is the best codec for any stream running between 8kbps and 40kbps bitrate. I've done some extensive testing with Opus (v1.2.1 encoder in the app LadioCast) and found it was tolerable at 48kbps but even at that higher bit-rate to my ears was inferior to 40kbps xHE-AAC. At 40kbps and below I found Opus v1.2.1 was unacceptable. I have no experience yet with "Codec" or with Opus v1.3 beta.


Regards,
Phil
Cheers,
Phil

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #52
Well, we kinda identified the application is very niche. So that kinda proves the point.

However, I'd like to know where you got your encoders from, and whether these are the xHE-AAC hardware encoders or just a program running on (presumably) a Windows computer.

Codec2 isn't geared to be a general-purpose codec. It's specifically geared to be a speech codec for extremely band-limited channels. It tries to be better than analog SSB, the target is legibility, not audio quality in the sense like music transparency, etc.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #53
Guys, you're wasting your time on something that will not happen. xHE-AAC won't be publicly available.

Some good news,

https://www.businesswire.com/news/home/20180608005558/en/Fraunhofer%E2%80%99s-xHE-AAC-Audio-Codec-Software-Extends-Native

Quote
ERLANGEN, Germany--(BUSINESS WIRE)--With the release of the Android P beta 3 preview, Fraunhofer IIS announces a new version of the popular FDK library which has been a part of Android since 2012. The FDK2 version will bring several new technologies to Android OEMs, service providers and developers, including xHE-AAC for video and music delivery down to 12kbit/s for stereo sound and MPEG-D DRC dynamic range control for better listening in noisy environments.

Finally it will be possible to do public listening tests comparing Opus and xHE-AAC. Also being open source, it will guarantee support for the codec regardless of its commercial future,

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #54
Hi, Ivan,

I should eat my own words now.  I admit it  :)

In other hand You  as developer know better than anyone else that everything will depend on encoder. 
FDK is known to be somewhat inferior to Apple and FhG (Winamp) (HE)-AAC encoders. Whether FDK xHE-AAC will be superior or not to extremely well tuned AAC encoders is still question.

Competition is welcome anyway!

Quote
Finally it will be possible to do public listening tests comparing Opus and xHE-AAC
Agree. Especially now when new version of Opus 1.3 will be released soon.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #55
For me, it would be interesting to see how much impact in quality remains at such low bit-rates between "good enough" codec implementations where large part of the spectrum is parametrically generated, not transform-coded.

But for that we'd need more than one available implementation of xHE-AAC.


Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #56
There's maybe also some potential to exploit temporal self-similarity. In music, many sounds are often repeated with minimal changes. Sometimes even without any changes (samples, techno, etc). 
So far I haven't heard of any codec which uses it and actually works.
a fan of AutoEq + Meier Crossfeed

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #57
Just a note, with the release of android pie the repository is updated with FDK2 source including the goodies for xhe-aac.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #58
Awesome, can't wait till we have some win32 binaries


Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #60
Well, now it has come: https://android.googlesource.com/platform/external/aac/
Has anybody seen it?
I'm afraid xHE-AAC support is DECODER ONLY in FDKv2.
As for encoder side, AAC-ELDv2 seems to be added, which seems to be activated by specifying special channel mode for it.



Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #62
Well, having xHE-AAC for decode-only kinda makes sense.

xHE-AAC isn't a low-delay codec, so for telephony, etc. it's not really suitable. The only thing it was used for in my corner of the world, was DRM (Digital Radio Mondiale), which failed and got cancelled.

AAC-ELD is a low-delay codec, so using that for telephony makes sense, and that's why they put encoders into Android.

https://www.iis.fraunhofer.de/en/ff/amm/prod/kommunikation/komm/aaceld.html <-- I gotta say, it's kinda funny and sad how they don't include Opus in their little graphs, there.


Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #64
Because AAC-ELD v1/v2 is old, outdated and  outperformed by Opus, EVS and low delay 3DA.
Do we have any stats on that?

AAC-ELD doesn't seem to be that old, the first release is from 2008: https://www.iso.org/standard/46457.html
Work on EVS started in 2008 and it hasn't been finalized yet, iirc.

Also, it seems EVS is gonna be patent-pool'd by MPEG-LA.

As to MPEG-H low-delay 3DA, I know only of a couple talks and presentations, I've never seen anything practical happening with low-delay 3DA so far.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #65
AAC-ELD uses low delay SBR and PS which are 14-15 years old.

AAC-(ELD) vs Opus
Opus has outperformed AAC family codecs with long delay settings.   Obviously AAC-ELD will be worse than Opus with low delay settings.

AAC-ELD vs EVS
EVS is superior to AAC-ELD by definition.
EVS is a successor of AAC-ELD and AMR families.  EVS is mentioned as low delay USAC/xHE-AAC which is based on enhanced versions of AAC and AMR in whitepapers.
EVS core format has been already approved as a standard in December 2014 and already implemented by some carriers. There are some extensiones going through standardization.

P.S. There is also very interesting and useful site http://www.ecodis.de/audio.htm by Chris H. Some information about last generation audio codecs can be found there.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #66
There's an encoder available for testing:

exhale - xHE-AAC encoder

Compile it yourself for Windows or Linux or your favorite Unix-alike. Aims for medium* to high* bitrate targets:

- high bit-rates those at and above the sweetspot of (1990s) MPEG-2 AAC-LC, i.e., 128 kbit/s stereo
- medium bit-rates those at and above the sweetspot of (2000s) HE-AAC, i.e., 64 kbit/s stereo, up to 128 kbit/s stereo

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #67
I'm catching up on posts right now, and this kinda caught my eye just now.
xHE-AAC for "medium to high" bitrate targets is a bit odd to me, as xHE-AAC is supposed to be used at very low bitrates. It's used in very narrow bandwidth digital radio, etc.

I'll definitely try it and see how it performs and how it sounds.

Also: finally ¦D

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #68
@polemon Please read the more recent posts. For this instance of "medium to high", "medium" is about 96-112kbps, and "high" is "128+" kbps.

So, it's attempting to compete with maybe Opus at mono and stereo encoding.

Note that his current encoder doesn't use any form of SBR, so it's not really going to be able to drop much below 48kbps per channel without either reducing the sample rate comparable to LC AAC, or impacting the quality significantly.





Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #73
New audio codec MPEG-H 3D will be probably supported in Android 12. 
https://www.xda-developers.com/google-sony-360-reality-audio-support-android/

MPEG-H 3D brings new multi-channels modes and some new compression tools on top of xHE-AAC/USAC like IGF (which finally replaces [e]SBR) and some other interesting improvements.

Re: xHE-AAC. Is it ready yet? Any encoders out there?

Reply #74
All of which may be really useful for the latest in excessive speaker count surround systems.