Does ALSA not offer 24-bit end-to-end with the Audigy2 ZS?
by iodeanrantala from LinuxQuestions.org on (#587P4)
Distribution: Ubuntu 20.04
Hardware in question: SB Audigy 2 ZS
Overview:
I have not been able to get playback of 24-bit audio files with one of my desktops. Honestly, never really tried 24-bit playback under Linux previously - but now that I have moved my hi-fi setup to be driven by the workstation - I notice it is not working.
Of coarse, playing a 24-bit wav DOES work when trying to play it back under mplayer or VLC - but this is because it is piping it to the pulse server. The pulse server (for those who are unaware) down samples according to your hardwares limitations.
I have the SB Audigy 2 zs hooked up via digital coax to my Marantz receiver. This way I let the DAC's in the Marantz handle the grunt (sounds FAAAR better). All works more-or-less - but the SB audigy only passes 16-bit audio to the Marantz.
I knew I was not receiving 24-bit audio because the Marantz receiver lets me see the signal details it is receiving.
The Marantz supports 24/192 as well as AC3/DTS/DSD/etc. So no problem there.
So I decided to take a look under the hood and try playing the file directly with aplay:
-------------------------
dean@t3500:~$ aplay -v -D iec958:CARD=Audigy2,DEV=0 TestHiFi.wav
Playing WAVE 'TestHiFi.wav' : Signed 24 bit Little Endian in 3bytes, Rate 88200 Hz, Stereo
aplay: set_params:1343: Sample format non available
Available formats:
- U8
- S16_LE
-------------------------
So ALSA is telling me only 16-bit is supported by the underlying hardware (the SB Audigy). I decided to take a deeper look:
-------------------------
root@t3500:/home/dean# cat /proc/asound/Audigy2/pcm0p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 16384
buffer_size: 16384
-------------------------
According to the loaded ALSA module, the hardware (or driver?) only supports 16-bit with a max sample rate of 48k.
I am well aware of the pulse audio setting that re-configures it for 24-bit. That setting is useless if the underlying ALSA module is not enabled for 24-bit.
So anyone have any clues here? I know the original SB Audigy (EMU10k1) were crippled from the factory: although they DID have 24-bit DAC's, the DSP engine was still 16-bit. However, it is my understanding that the Audigy2 / EMU10k2 (especially the ZS) supposedly corrected this and even allowed the card to completely bypass the DSP for true end-to-end 24-bit sound.
Perhaps a limitation with the ALSA drivers? I checked driver documentation on ALSA site and no mention was really made specifically about 24-bit audio. No mention of any needed kernel params, or driver loading args. From what I have seen, everything should JustWork(tm).
Anyone else here got true 24-bit audio running on their Linux desktop? If so, what card did you use? I don't mind dishing out another $100-$200 for another card if needed. Kinda a bummer since I already got this Audigy2 - and it **should** work. Don't run windows, so have no idea if this card ever was truly capable of 24-bit under windows.
Maybe an excuse to splurge on an X-Fi series? But even then, I would hate to drop money on this to find out this is a limitation with the Linux ALSA drivers.
It's a matter of: fix this, or just use my MacBook for my Hi-Fi audio playback.


Hardware in question: SB Audigy 2 ZS
Overview:
I have not been able to get playback of 24-bit audio files with one of my desktops. Honestly, never really tried 24-bit playback under Linux previously - but now that I have moved my hi-fi setup to be driven by the workstation - I notice it is not working.
Of coarse, playing a 24-bit wav DOES work when trying to play it back under mplayer or VLC - but this is because it is piping it to the pulse server. The pulse server (for those who are unaware) down samples according to your hardwares limitations.
I have the SB Audigy 2 zs hooked up via digital coax to my Marantz receiver. This way I let the DAC's in the Marantz handle the grunt (sounds FAAAR better). All works more-or-less - but the SB audigy only passes 16-bit audio to the Marantz.
I knew I was not receiving 24-bit audio because the Marantz receiver lets me see the signal details it is receiving.
The Marantz supports 24/192 as well as AC3/DTS/DSD/etc. So no problem there.
So I decided to take a look under the hood and try playing the file directly with aplay:
-------------------------
dean@t3500:~$ aplay -v -D iec958:CARD=Audigy2,DEV=0 TestHiFi.wav
Playing WAVE 'TestHiFi.wav' : Signed 24 bit Little Endian in 3bytes, Rate 88200 Hz, Stereo
aplay: set_params:1343: Sample format non available
Available formats:
- U8
- S16_LE
-------------------------
So ALSA is telling me only 16-bit is supported by the underlying hardware (the SB Audigy). I decided to take a deeper look:
-------------------------
root@t3500:/home/dean# cat /proc/asound/Audigy2/pcm0p/sub0/hw_params
access: MMAP_INTERLEAVED
format: S16_LE
subformat: STD
channels: 2
rate: 48000 (48000/1)
period_size: 16384
buffer_size: 16384
-------------------------
According to the loaded ALSA module, the hardware (or driver?) only supports 16-bit with a max sample rate of 48k.
I am well aware of the pulse audio setting that re-configures it for 24-bit. That setting is useless if the underlying ALSA module is not enabled for 24-bit.
So anyone have any clues here? I know the original SB Audigy (EMU10k1) were crippled from the factory: although they DID have 24-bit DAC's, the DSP engine was still 16-bit. However, it is my understanding that the Audigy2 / EMU10k2 (especially the ZS) supposedly corrected this and even allowed the card to completely bypass the DSP for true end-to-end 24-bit sound.
Perhaps a limitation with the ALSA drivers? I checked driver documentation on ALSA site and no mention was really made specifically about 24-bit audio. No mention of any needed kernel params, or driver loading args. From what I have seen, everything should JustWork(tm).
Anyone else here got true 24-bit audio running on their Linux desktop? If so, what card did you use? I don't mind dishing out another $100-$200 for another card if needed. Kinda a bummer since I already got this Audigy2 - and it **should** work. Don't run windows, so have no idea if this card ever was truly capable of 24-bit under windows.
Maybe an excuse to splurge on an X-Fi series? But even then, I would hate to drop money on this to find out this is a limitation with the Linux ALSA drivers.
It's a matter of: fix this, or just use my MacBook for my Hi-Fi audio playback.