Hi,
I am playing with virtual balanced inputs https://www.diyaudio.com/forums/pc-based/326747-virtual-balanced-regular-sou... . For proper functionality it needs a regular recalibration of the ttable multiplication coefficients of route plugin in .asoundrc.
The audio stack is alsa -> wine -> Arta measurement software. When I stop measuring in arta (without exiting the software), the soundcard gets closed - confirmed in /proc/asound/.../hw_params. Now I change the ttable coeffs. After re-opening the device (continuing with measurement in the running arta instance) the changes in .asoundrc are ignored. I have to restart the arta application for the changes to take effect.
When I run e.g. aplay inbetween, it accepts the changes right away. Upon continuing in arta, the original ttable coeffs are still loaded for this instance.
I understand it is the way wine handles the device somewhere in https://github.com/wine-mirror/wine/blob/master/dlls/winealsa.drv/mmdevdrv.c .
Please when is the alsa-lib config loaded by the library/application? Is there any way to force a config reload from outside?
Would e.g. calling snd_config_update before snd_pcm_open on line https://github.com/wine-mirror/wine/blob/master/dlls/winealsa.drv/mmdevdrv.c... help? If so, what overhead does it impose? Perhaps I could ask the wine guys to consider such change if it worked and required minimum overhead.
I very much appreciate any help.
Best regards,
Pavel.