4 ms·
Decent bluetooth receivers can decode mp3 / mp4 & a correctly setup sound path should pass the mp3 packets straight from source to speaker without a decode/enco
by pja 10y ago
Decent bluetooth receivers can decode mp3 / mp4 & a correctly setup sound path should pass the mp3 packets straight from source to speaker without a decode/encode stage.
Weirdly, this seems to be one of those tech things where it’s impossible to actually find out whether a bluetooth devices supports more than just the mandatory codecs & it’s equally impossible to find out whether your sound path is passing the source through or not. It’s all completely opaque.
- pimeys 10y agoI really need a technology like Bluetooth, but there seems to be no other that works with all devices. Bluetooth audio is a black box and you never can't be sure what happens between the device and receiver.
- voltagex_ 10y agoAre you talking about apt-x?
- pja 10y agoAPT-X is a proprietary codec that performs far better than the original bluetooth audio codec & can be used for things that said codec really was’t up to. (It also includes a lossless mode for the audio purists amongst us.) Modern bluetooth devices can also negotiate various other codecs as part of the A2DP spec: https://en.wikipedia.org/wiki/List_of_Bluetooth_profiles#Advanced_Audio_Distribution_Profile_.28A2DP.29 https://en.wikipedia.org/wiki/List_of_Bluetooth_profiles#Adv... including mpeg3/mpeg4 encodings but only SBC is mandatory and it seems to be impossible to tell what codec any particular Bluetooth audio device is using on any platform: I’ve not seen anything that will tell you what it’s really sending over the air.
- TD-Linux 10y agoI have never seen a subjective comparison where Apt-X beats SBC. It seems to bee all marketing hype.
- voltagex_ 10y agoIf you're able to test with an Android device running 4.4 or later, you should be able to turn on Bluetooth Logging in Developer Options. Wireshark can read bt_hcisnoop.log as a Symbian OS Bluetooth Log (really). From a bit of fiddling you're looking for a series of AVDTP requests with GetCapabilites (to your speakers/headset/whatever) and then SetConfiguration (from your phone/player). Filtering by btavdtp.service will get you this. I can tell you my phone is ignoring SBC and AAC support and asking for APT-X only.
- pja 10y agoThat is impressively convoluted. I have a feeling it ought to be possible to write a gstreamer plugin to do this, but it’s one of those minor projects that never got over the do-I-care-that-much hump.
- voltagex_ 10y agoI've got a feeling that by the time an audio stream gets to GStreamer it's not in the original format. Also you'd have to get an A2DP sink working (to make your phone think the computer is a headset / speaker)