hw_params says "format: S32_LE" for all 24 bits files

Hi there,

I’m running Volumio 1.51 on RaspBerry Pi B+ and HifiBerry Digi+.

24 bits FLAC playback is fine, regardless of samplerate.
The WebUI correctly displays bit depth as “24 bit”, but /proc/asound/card0/pcm0p/sub0/hw_params prints “SE32_LE”

# cat /proc/asound/card0/pcm0p/sub0/hw_params access: RW_INTERLEAVED format: S32_LE subformat: STD channels: 2 rate: 192000 (192000/1) period_size: 16384 buffer_size: 65536

I added the following to the audio_output section of /etc/mpd.conf:

auto_resample "no" auto_channels "no" auto_format "no"

But i still always get “format: S32_LE” for all 24 bits files.

Is there anything to worry about?

Thanks & Cheers,

i have a similar problem as you. i can only get “format: S16_LE” .
besides, hifiberry digi+ doesn’t support 32bit output, isn’t it? :confused:

Although the samples stay 24bit, the alsa driver actually pads the remaining 8 bits for transfer. The sound card (or USB DAC) actually recognizes the padding and sends the original 24bit samples to the DAC.

To see what native formats your sound hardware support you could always try to run my [url=http://lacocina.nl/detect-alsa-output-capabilities]alsa-capabilities[/url] script, using:

bash <(wget -q -O - "http://lacocina.nl/alsa-capabilities") 

To also list the sample rates that are supported for each format, add the -s option (this makes the script a lot slower though):

bash <(wget -q -O - "http://lacocina.nl/alsa-capabilities") -s 

However it seems your hardware and software is running just fine.