I can't seem to resolve this issue in ALSA/pulseaudio where playing S24_LE pcm data does not seem to work. My hardware does not support 24 bits, but I was under the impression that alsa would do a conversion to 32 bits when using -D plug.<br>
<br><br>I get the following errors:<br><div style="margin-left: 40px;"><br>aplay -D plug:pulse test-sound-files/sine_1kHz_24bit_stereo_44kHz.wav -vvvv<br clear="all"></div><div style="margin-left: 40px;">Playing WAVE 'test-sound-files/sine_1kHz_24bit_stereo_44kHz.wav' : Signed 24 bit Little Endian in 3bytes, Rate 44100 Hz, Stereo<br>
<b style="color: rgb(255, 0, 0);">aplay: set_params:1022: Unable to install hw params:</b><br>ACCESS: RW_INTERLEAVED<br>FORMAT: S24_3LE<br>SUBFORMAT: STD<br>SAMPLE_BITS: 24<br>FRAME_BITS: 48<br>CHANNELS: 2<br>RATE: 44100<br>
PERIOD_TIME: 125000<br>PERIOD_SIZE: (5512 5513)<br>PERIOD_BYTES: (33072 33078)<br>PERIODS: (3 5)<br>BUFFER_TIME: 500000<br>BUFFER_SIZE: 22050<br>BUFFER_BYTES: 132300<br>TICK_TIME: 0<br></div><br>Using this device works with ALSA:<br>
<br><div style="margin-left: 40px;">aplay -D plug:hw:0 test-sound-files/sine_1kHz_24bit_stereo_44kHz.wav -vvvv<br>Playing WAVE 'test-sound-files/sine_1kHz_24bit_stereo_44kHz.wav' : Signed 24 bit Little Endian in 3bytes, Rate 44100 Hz, Stereo<br>
Plug PCM: Linear conversion PCM (S16_LE)<br></div><br>Also using paplay works as well:<br><br><div style="margin-left: 40px;">paplay test-sound-files/sine_1kHz_24bit_stereo_44kHz.wav -vvvv <br>Using sample spec 'float32le 2ch 44100Hz'<br>
Connection established.<br>Stream successfully created<br></div><br>Is there a problem with the intermediary step between ALSA and pulseaudio? It seems that ALSA will do linear pcm conversion, when the hardware does not support 24 bits when using -D plug, but does not seem to work when routing to pulseaudio. Is this a bug in the ALSA/pulseaudio plugin?<br>
<br>Baek<br>