5 ms·
whoa, bit perfect CD/flac playback in 44.1, that's a killer feature.
by functionmouse 5mo ago
whoa, bit perfect CD/flac playback in 44.1, that's a killer feature.
- IshKebab 5mo agoThere are many audio resampling libraries available that can convert from 44.1 to 48 kHz with no perceptible quality loss. E.g. see https://github.com/hasenbanck/resampler#quality-analysis https://github.com/hasenbanck/resampler#quality-analysis This is presumably what Apple does. You kind of have to anyway or you have the stupid situation Linux used to have where only one app could play audio at a time.
- chronogram 5mo agoHardware often reports supporting 44.1kHz but internally resamples it to 48kHz so you're better off properly resampling it yourself.
- embedding-shape 5mo ago> you have the stupid situation Linux used to have where only one app could play audio at a time When was that? I think my first Linux distribution was Ubuntu 8.04 and fairly sure it shipped with PulseAudio which in mind always been able to play audio from multiple sources at the same time, maybe I misremember?
- mixmastamyk 5mo agoCame later I believe. They had esd and other sound “servers” back then however. Might have had to install it yourself.
- skydhash 5mo agoIf you have two audio streams, you can't play them as is on the audio device, you have to mix them together. The same happens with analog speakers as you can't just add two signals together. I believe at one point with Alsa, when an application takes control of the audio device, no one else could play with it. Now Alsa comes with dmix (a digital mixer feature) enabled in its default configuration, so two applications may play how they want. And we have PulseAudio, Jack, and Pipewire on top of Alsa to add more features. OpenBSD still present raw audio devices, but they have sndio which provides a more helpful interface for applications including resampling (not the best algorithms there, according to them).
- anthk 5mo agoWell, good enough it you read the OpenBSD FAQ section on Multimeda for RT throughput and the like.
- Matl 5mo agoPure ALSA would behave like that because the currently playing process would take exclusive control of the hardware. Upsite: Highest quality playback. Downside: Only one process could play audio at a time.
- seba_dos1 5mo agoOnly if you had no hardware nor software mixing configured, which probably should be considered a misconfiguration of your system.
- LtWorf 5mo agoMost distributions shipped ALSA preconfigured with dmix, which means multiple applications could play sound at the same time just fine. Which is why the whole "we must use pulseaudio even if it's terrible and has awful standards that blast volume or multiple streams won't work!" was so weird… everybody who tried knew that just removing pulseaudio the multiple streams kept working :) So only those who never applied the scientific method kept insisting that without PA it was not possible to do that.
- skydhash 5mo agoI think PA allows for setting applications volumes and have a modular design. But it's kinda the poster child of overengineering (challenged by systemd now). Something like sndiod is more sensible for most desktop distro. People that need a more complex setup can bring in the big gun like pipewire.
- LtWorf 5mo agoI don't think the problem was over-engineering. I think the problem was that if you plugged in headphones it would instantly set the volume to 100% from whatever value it was before. Plus of course, initially you had to regularly run killall -9 pulseaudio to fix the sound. All in a moment when ALSA with dmix worked just fine. Sometimes I think fedora and ubuntu are trying to hinder linux as mainstream desktop.
- 5mo ago
- loeg 5mo agoIn the time before PulseAudio, when it was ALSA (and OSS).
- hedora 5mo agoEven back then, it could play more than one stream. You had to have a sound card or kernel drivers that supported it (and all non-obsolete ones did by the time pulse audio came out). I still don’t know what purpose pulseaudio serves, other than adding latency and making stuff less reliable. PipeWire is better, but it turns out you can just use OSS under freebsd these days, and everything just works, but with lower latency. If you have some sort of potato sound card that can’t mix output channels in hardware, note that OSS added sw mixing by 2007 (with support for 16 channels by default).
- mjg59 5mo agoNonsense - HDA systems were overwhelmingly the majority of Linux systems at that point, and didn't have any hardware support for multiple streams. OSS with software mixing was a commercial product that wasn't upstream. ALSA had userspace mixing but it was very much not an out of the box experience, and didn't take advantage of hardware capabilities in the way Pulseaudio did to reduce wakeups and power consumption.
- AnonymousPlanet 5mo agoThere was a time when OSS was the only option and ALSA was rarely supported by software. ALSA's dmix also didn't exist from the start. Around 2000 I was only able to play sound from different apps because my soundcard exposed two sound devices /dev/dsp0 and /dev/dsp1
- rasz 5mo agoNo its not. You wont be able to hear the difference between 44.1 vs 48.