alsa-plugins icon indicating copy to clipboard operation
alsa-plugins copied to clipboard

Crash when trying to capture vdownmix

Open s09bQ5 opened this issue 5 years ago • 0 comments

Our game captures audio from microphones and tests the available devices on startup. For some reason PortAudio tells us that vdownmix is a 6 channel capture device. When the game tries to test that device, the plugin crashes inside vdownmix_transfer because the src_areas array contained only two valid pointers while mix->channels is 6. I assume the plugin is not prepared to handle the swapped roles of input and output during capture.

A simple way to cause the crash is to execute arecord -D vdownmix -f dat -c 6.

The expected behavior is that the plugin either enforces 2 channel capture with a 4/5/6 channel slave pcm or completely rejects capture. In any case, it should not crash with a SIGSEGV.

s09bQ5 avatar Aug 30 '20 22:08 s09bQ5