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 / FDK2 for Android - also available on Linux soon? (Read 6429 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

xHE-AAC / FDK2 for Android - also available on Linux soon?

In light of CES 2019, Fraunhofer announced that xHE-AAC decoding capabilities will be part of FDK2 which is shipping with Android 9.

As typical with press releases and sales-talk on conventions, etc. I'm a little confused what this means. Does that mean decoding only? Since FDK2 is going to be "mandatory" for Android 9, does that mean, that technically this will bring xHE-AAC decoding to Linux? And what about encoding? With FDK, we got an AAC encoder which proves to be pretty good. It's the only really viable option on Linux, as things like FAAC are pretty bad, and QuickTime AAC isn't available on Linux.

So, allegedly, xHE-AAC can scale between 12kb/s to 500kb/s, does that mean the encoder has to provide for the entire spectrum of bitrates for that function to be available? The Sales guy suggested it is, but I kinda fail to see how that is accomplished, aside from using a plethora for streams in tandem. Or does it provide some form of interlacing, where by sending sending only the first couple samples contain a course set of values, and the more you receive, the more detailed the data is? Also, I thought that technology is rather coming from MPEG-H, rather than xHE-AAC (the container, rather than the codec itself).

I got all that from this video:
https://www.youtube.com/watch?v=yArrLvMYng8

I found it a bit more easier to follow, by setting the playback speed to 1.25, because the monologue by the sales guy is a bit long and boring.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #1
If there's a codec available for Android it should be simple to run it in Linux too, although you might have to pay a license fee yo do so legally.

I think this is probably too little too late for xAAC xthough.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #2
Well, it would seem it's gonna drop onto Linux one way or the other. But all reason aside, the technicalities, like the dynamic bitrate and whether it's gonna be just the decoder or also an encoder in FDK2, is nebulous to me. Also I remember it's supposed to be a speech codec, so just streaming content or also telephony? I doubt the latter, I don't remember it being a low-latency codec.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #3
It is hard to figure out precise date public availability of xHE-AAC.

I have doubts on that we really need xHE-AAC ?
Reason is simple - lack of competition.

From perspective, I think about years 2001-2007 nowadays commerce hardly hit common programmers creativity and of course audio codecs/standards.
We must keep in mind, that in time I pointed out many different audio codecs and encoders were competitive. That state was also internal motor of developing process.

For example, all of us  "consumers" could choose between MP3, OGG, MPC and even AAC. The more can be say, that all of these were sufficient for 90% public at bitrates from 160 kbps to 224 kbps.
The funniest audio episode is related to MP3, because MP3 created internal rivalry between MP3-Pro (as first audio standard with parametric stereo after so slooooow Twin VQF) and MP3-HD (lossless standard compatible with all players).

Even if we obtain in final step full possibility of listening xHE-AAC, still we cannot encode ours WAV’s because we do not have encoder. In my point of view that do not change anything.
One available encoder on market still does not resolve anything, because according to AAC people could choose encoder between: FAAC , Fraunhofer,  Apple CoreAAC, from Winamp, CT AAC+, 3GGP AAC+ and even more.

Internal competition guarantees final quality.  Lack of this aspect is stagnation.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #4
I see no sign of xHE-AAC decoder in any of the devices I own with Android Pie. Is it gonna be added on some kind of .1 version?

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #5
I see no sign of xHE-AAC decoder in any of the devices I own with Android Pie. Is it gonna be added on some kind of .1 version?
Can't say, I just go by what that sales dude said. I don't think i'd make sense /not/ to put it to use on phones (decoding at least). It is supposed to be a broadcasting codec as I understand it. Not putting in onto mobile would be just idiotic. They might as well scrap it at that point. From what I understand, xHE-AAC can never really be utilized as a low-latency codec, so telephony isn't gonna happen with it.

 

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #6
Not sure what's the point of it if there's Opus already which is also completely free unlike these AAC things.
a fan of AutoEq + Meier Crossfeed

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #7
From here https://android.googlesource.com/platform/external/libxaac/ file README.experimental:

Code: [Select]
This xaac codec (external/xaac) is experimental; it is not yet intended
to be used on production devices.
This codec should not be configured into any production Android Pie
(Android 9) device that will be shipped.

In the file tree I can see only a decoding part of the codec.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #8
Lot of neat arm assembly code in there. Would be nice to have in other codecs.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #9
From here https://android.googlesource.com/platform/external/libxaac/ file README.experimental:

Code: [Select]
This xaac codec (external/xaac) is experimental; it is not yet intended
to be used on production devices.
This codec should not be configured into any production Android Pie
(Android 9) device that will be shipped.

In the file tree I can see only a decoding part of the codec.

So it makes sense why when you ask for a decoder list on Android Pie devices why it doesn't come up. It's because it's commented out. Now despite that I would expect LineageOS to adopt it faster than Google, it was the case with OPUS aswell.
This guy on the video is quite cheeky, through clever wording he makes it sound like Android devices come shipped with the decoder and it's ready to be used.

Re: xHE-AAC / FDK2 for Android - also available on Linux soon?

Reply #10
In the file tree I can see only a decoding part of the codec.
Thanks for the find, that's exactly what I was looking for!

So it makes sense why when you ask for a decoder list on Android Pie devices why it doesn't come up. It's because it's commented out. Now despite that I would expect LineageOS to adopt it faster than Google, it was the case with OPUS aswell.
This guy on the video is quite cheeky, through clever wording he makes it sound like Android devices come shipped with the decoder and it's ready to be used.
I can see what you mean, and now that you mention it, it does makes sense. It comes "technically" shipped in Android Pie, but isn't usable as such.

I'm wondering when it'll trickle down into FFmpeg so I can use it with lavcodec in mpv.

The sales guy confused me with his wide range of bit rates though. I wasn't aware xHE-AAC can be used at such high bandwidths. I though it's constrained to be only used with relatively low bandwidths. And the bandwidth switching isn't really making sense to me either.