Hi,
I have a C++ audio application that plays back audio data on the sound card, Digigram VX882e. https://www.digigram.com/support/vx882e-support/ The application runs on HPE ProLiant DL380 Gen9 Server. HPE ProLiant DL380 Gen9 Server
It has worked well under RHEL 7 (kernel 3.10) and RHEL 8 (kernel 4.x). Asthe OS is upgraded to RHEL 9 (kernel 5.14), there is an buffer underrun. When investigating the issue, I run “speaker-test” utility. It fails with the error below. I'm just wonder if this has something to do with the changes in ALSA driver from kernel 4.x to kernel 5.14? If not, what could cause the buffer underrun issue? Your advice/help is highly appreciated, Thanks, Kevin Nguyen
sudo speaker-test -D plughw:VX882e0 -c 2
speaker-test 1.2.9
Playback device is plughw:VX882e0
Stream parameters are 48000Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 48000Hz (requested 48000Hz)
Buffer size range from 128 to 8192
Period size range from 64 to 4096
Using max buffer size 8192
Periods = 4
was set period_size = 2048
was set buffer_size = 8192
0 - Front Left
Write error: -5,Input/outputerror
xrun_recovery failed:-5,Input/output error
Transfer failed: Input/outputerror
The Digigram card is detected with “aplay -l” command.
sudo aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: VX882e0 [Digigram [PCM #0]], device 0: pcxhr 0[pcxhr 0]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 1: VX882e1 [Digigram [PCM #1]], device 0: pcxhr 1[pcxhr 1]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 2: VX882e2 [Digigram [PCM #2]], device 0: pcxhr 2 [pcxhr2]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 3: VX882e3 [Digigram [PCM #3]], device 0: pcxhr 3[pcxhr 3]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3