You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
The text was updated successfully, but these errors were encountered:
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.
The text was updated successfully, but these errors were encountered: