this post was submitted on 17 Jul 2023
948 points (98.1% liked)

Linux

45601 readers
1191 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

For context, LDAC is one of the few wireless audio codecs stamped Hi-Res by the Japan Audio Society and its encoder is open source since Android 8, so you can see just how long Windows is sleeping on this. I'm excited about the incoming next gen called LC3plus, my next pair is definitely gonna have that.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 147 points 11 months ago* (last edited 11 months ago) (3 children)

For context, LDAC is one of the few wireless audio codecs stamped Hi-Res by the Japan Audio Society and its encoder is open source since Android 8

LDAC is great, but simply stating that the encoder is "open source" is quite misleading (while technically correct). The codec is owned by Sony and heavily licensed. It's a savvy business move of Sony to make the encoder free to use though, so everyone else can support their standard while charging manufacturers who want to integrate it into their headphones.

If we want a really free and open high quality codec, we should push for opus support via bluetooth

[–] [email protected] 40 points 11 months ago* (last edited 11 months ago) (2 children)

Yes.. I made double sure to mention 'encoder' between that.

Xiph really won the lossy codec scene with Opus and I transcoded all my junk to that format. Hitting (my personal) transparency on 128k vbr is flat out impressive and it warms my heart that corpos won't have a reason to collect taxes for basic things like audio codec. However it's a different story with bluetooth audio codec in which I hope will change.

[–] [email protected] 14 points 11 months ago (8 children)

Xiph really won the lossy codec scene with Opus and I transcoded all my junk to that format. Hitting (my personal) transparency on 128k vbr is flat out impressive

Same here. I've left myself a bit of a safety margin at 144k vbr, but having my whole library at transparent quality AND portable size is very convenient.

Though, now that opus 1.4 is out I feel a bit of anxiety whether i should re-encode everything from flac->opus1.4

load more comments (8 replies)
[–] [email protected] 5 points 11 months ago* (last edited 11 months ago) (3 children)

If we want a really free and open high quality codec, we should push for opus support via bluetooth

Isn't the new default codec in BLE Audio LC3 free and open and high quality? And it's required for BLE Audio support, so there will be more and more devices that support it.

load more comments (3 replies)
load more comments (1 replies)
[–] [email protected] 50 points 11 months ago (9 children)

Not anything to do with the LDAC codec but why does wireless headphones on windows suck. On linux (even a wm) I just turn on my headphones and it works, on windows every time I have to remove the device and add it back again

[–] [email protected] 26 points 11 months ago* (last edited 7 months ago) (2 children)

[This comment has been deleted by an automated system]

load more comments (2 replies)
[–] [email protected] 18 points 11 months ago (1 children)

Bluetooth stacks are notorious for being gargantuan spaghetti code base. People have been trying to put out all those little fires because it's more possible on Linux than Windows.

[–] InverseParallax 5 points 11 months ago

The standards are terribly complex and the reference implementations were originally written by the standards groups.

Then to keep compatibility everything has to be broken in the same way as the reference implementations which put more effort into "it works this time" than any kind of resilience.

[–] [email protected] 17 points 11 months ago

I was trying to connect headphones on my partners Windows machine and it was a disaster. Most of the time it failed to pair, the rest of the time it paired but didn't recognize as an audio device. We tried with 2 different devices and both worked perfectly on Linux and Android.

[–] [email protected] 14 points 11 months ago (2 children)

It's the same for me. I thought it's due to the motherboard I'm using, windows being the problem never crossed my mind. The only thing that worked well and didn't have to be re-installed after a disconnect was the new xbox controller, so I feel like maybe there's something fishy going on here.

[–] [email protected] 5 points 11 months ago* (last edited 11 months ago)

Its windows, at which point wasn't it fishy?

The only thing in my head is the time where people didn't know it had backdoors and telemetry. I think Windows XP actually didn't have backdoors but I just assume this rn.

load more comments (1 replies)
[–] [email protected] 5 points 11 months ago

Soundstack has layers of legacy, old, and almost new.

load more comments (4 replies)
[–] huojtkeg 48 points 11 months ago (3 children)

I recommend you all to switch to Pipewire. Most bluethooth problems are fixed.

[–] mhz 32 points 11 months ago

Most destros default to Pipewire, even Debian 12.

[–] [email protected] 19 points 11 months ago (1 children)

Isn't that standard on most linux systems?

[–] [email protected] 9 points 11 months ago (1 children)

if your distro is not using Pipewire youre using a shitty one

[–] [email protected] 9 points 11 months ago (8 children)

I'm so confused, please don't confused a new linux user it doesn't help me

load more comments (8 replies)
load more comments (1 replies)
[–] [email protected] 28 points 11 months ago (3 children)

Sony did drop the ball with LDAC quite quickly, it could've been the new standard.

But with the release of the WH-1000XM3s (or was it the 4s?) they basically made most of the selling points incompatible with LDAC, so now almost no one uses it anymore.

[–] [email protected] 9 points 11 months ago (12 children)

Yes, LDAC and multipoint do not mix hence I'm looking forward to LC3plus that replaces it. To be fair it's not a big issue to roll back to AAC or even SBC to use multipoint, because you probably aren't gonna notice a difference when you don't listen to high res apps like Tidal. It also should be known that a good codec does not fix mediocre drivers and/or chips. Regardless, Linux shines in letting you use a feature you did pony up for. :)

load more comments (12 replies)
load more comments (2 replies)
[–] [email protected] 24 points 11 months ago* (last edited 11 months ago) (2 children)

Ldac is not actually that good, it's actually fairly rare that LDAC beats out something like SBC XQ let alone AAC

EDIT: for elaboration, LDAC works at 3 main data rate ranges 990/909, 660/606 and 330/303. Ldac is only high res at the 990 range, and even at that range, it still often looses when pipewire is compiled against libfdk. keep in mind that it's hard to get real numbers on LDAC because decoding is proprietary, meaning I had to disassemble headphones and connect those for verification, but typically AAC on supported headphones beat out 990kbps LDAC (which is hilarious btw considering LDAC can rarely actually work at 990kbps anyways) and both SBC-XQ and LC3Plus (both of which are usable with pipewire) regularly beat 660kbps LDAC.

TLDR LDAC is crap and SBC-XQ is typically more accurate and lower latency, and LC3Plus is even better then that. and if you have AAC compatible headphones assuming latency isnt a major issue (which you are using LDAC so it's not) just use AAC, both fidelity and latency is better

EDIT: I should mention, it is known that vendors will tune codecs, I believe Valdikks article in habr briefly goes over this. so it's very possible that tuning could mean that x codec, including LDAC could be the only good codec, however with how badly LDAC maintains 990kbps, I doubt it will make much of a difference

[–] [email protected] 20 points 11 months ago* (last edited 11 months ago) (9 children)

keep in mind that it’s hard to get real numbers on LDAC because decoding is proprietary

I used to think the same. But as it turns out, a decoder exists. Maybe some people don't want anyone to know about it to keep the myths alive ;)

EDIT: Also, as a golden rule, whenever anyone sees the words High-Res in an audio context, they should immediately realize that they are being bullshitted.

load more comments (9 replies)
[–] [email protected] 13 points 11 months ago (5 children)

LDAC claims are completely bullshit.

LC3plus is worse than AAC quality wise (to be expected). Lower latency is the only thing going for it. And that's just because AAC is a very high-latency codec. Opus (as a format) would win on both fronts, although there could be issues with creating a high-quality encoder for it that is not too complex, and power-efficient.

load more comments (5 replies)
[–] ramble81 11 points 11 months ago (6 children)

I actually prefer AptX HD but I wish my Android would default to it instead of LDAC

[–] [email protected] 5 points 11 months ago (3 children)
[–] InverseParallax 5 points 11 months ago (3 children)

The HD version is pretty good, lower bitrate, but solid quality and tolerance for distance.

Ldac if it's an option, aptx HD otherwise.

load more comments (3 replies)
[–] ramble81 5 points 11 months ago

Side by side test with my headphones showed better speration of the range (including bass) and a more solid connection, especially while flying. Kept having LADC constantly try to bitrate switch on me, and when I set it on highest quality it kept cutting in and out at times. Sample size of 1 so YMMV.

load more comments (1 replies)
load more comments (5 replies)
[–] [email protected] 10 points 11 months ago

Definitely. I have a pair of pixel buds that give me very noticeable latency when paired in Windows. I've never been able to find a way to use the low latency codecs to fix this.

In Linux it's a complete opposite experience. I have a menu with every codec in the book, and I can actually watch video in Linux without even noticing any latency now.

[–] [email protected] 9 points 11 months ago (4 children)

I'm still wondering how to make my headphones work on pop os without crackling

[–] efff 4 points 11 months ago (1 children)

You will not believe this. Solution was adding a line in some config file.

[–] [email protected] 8 points 11 months ago (1 children)

Are you thinking of the standby timeout? Cause I get static on my speakers on any and all distros when no audio is playing. It always happens after 5 seconds of silence. Kinda infuriating that I have to do this on EVERY SINGLE DAMN INSTALL.

For Pulseaudio:
Quickfix (until reboot):

sudo su
echo 0 > /sys/module/snd_hda_intel/parameters/power_save

permanent fix is to add the line:
options snd-hda-intel power_save=0
to the file /etc/modprobe.d/alsa-base.conf

For pipewire:
create folder /etc/wireplumber/main.lua.d/ if it does not exist
if you had to create it yourself just copy over the file from /usr/share/wireplumber/main.lua.d/50-alsa-config.lua
otherwise it probably is there already then just edit it
pretty much at the bottom there is a line that says "session.suspend-timout-seconds"
uncomment it and set its value to 0
then reboot

load more comments (1 replies)
load more comments (3 replies)
[–] [email protected] 8 points 11 months ago (16 children)

Shame about headsets though - has anyone been able to get the mic to work without the audio quality dropping to trash? It is a shame to have to pick between good quality audio and the ability to use your mic.

[–] flubba86 24 points 11 months ago* (last edited 11 months ago) (1 children)

It's because all the good codecs (aptX, LDAC, even SBC) all operate over the A2DP Bluetooth profile, meaning your computer's Bluetooth adapter is running in a particlar mode called A2DP. Unfortunately, A2DP is unidirectional, (ie, not Duplex) it doesn't support sending audio to headphones and receiving audio from the mic at the same time, due to bandwidth limitations. So when you open Zoom or Teams or something that needs to access your mic, your Bluetooth adapter switches to a different mode like HSP (Handset Profile) and HFP (Hands Free Profile). These profiles do support duplex connection to the mic and headphones, but don't have fancy high definition codecs. They are designed to be very low bitrate. That's why you encounter such a big audio quality difference when it switches.

Note, having said that, pipewire on Linux does support some fancy faststream duplex modes that operate on A2DP, outside the constraints of what I explained above. Eg, it gives me the option to enable AptX-LL with faststream, that passes the mic through using whatever little leftover bandwith is on the connection. This doesn't work with heavier codecs like AptX-HD. I think Android does something similar, that is why you don't notice the profile swapping behaviour as badly on Android.

load more comments (1 replies)
[–] [email protected] 5 points 11 months ago

I don't think there are any hifi headset profiles, AFAIK.

load more comments (14 replies)
[–] [email protected] 5 points 11 months ago (1 children)

I have the exact same headphones hahaha, this is perfect how are you liking them by the way? I had some connection problems on the first month but this 2nd month they've been behaving good

load more comments (1 replies)
[–] Dreadful6644 5 points 11 months ago

Any way to see which bitrate is currently being used? I know you can set it to use only 909kbps, 606kbps or 303kbps in the wireplumber config, but I am curious which bitrate the adaptive mode (usually) uses.

load more comments
view more: next ›