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
https://www.github.com/ggarra13/mrv2
https://www.github.com/ggarra13/tlRender # auxiliary video library that uses RtAudio
uses RtAudio, currently 5.2.0. The application is heavily multithreaded and, after some setup calls in the main thread, calls RtAudio functions from a child thread for each video loaded.
I found that the pulse api of RtAudio was misbehaving, due to the server not returning on time and the function getDeviceCount() returning 0 as rt_pa_info.dev would sometimes be empty.
I created a patch, which I can no longer apply to the current HEAD and which I attach here. It caches the rt_pa_info.dev vector after the first call to the server. Also, I am calling pa_operation_unref from each pa_context_* call, as it seems that might be missing.
I am attaching the diff to the 5.2.0 branch in case it is useful.
I tried porting to the current HEAD (beta), and after some code changes -- DeviceInfo.probed gone, setErorCallback, openStream with no error callback--but the results were worse. The playback would not work at all as the RtAudo error callback would report that the device ID was not initialized (or something similar).
The text was updated successfully, but these errors were encountered:
I'm afraid I cannot investigate this problem without a significant amount of further details. I will close this issue if there is no further communications within the next month or so.
@garyscavone I am sorry I haven't followed through. Not sure how else I can help out to debug it, as providing a simple test is not easy at all. If there has been progress with the latest HEAD, I can try checking it again.
My video player application:
uses RtAudio, currently 5.2.0. The application is heavily multithreaded and, after some setup calls in the main thread, calls RtAudio functions from a child thread for each video loaded.
I found that the pulse api of RtAudio was misbehaving, due to the server not returning on time and the function getDeviceCount() returning 0 as rt_pa_info.dev would sometimes be empty.
I created a patch, which I can no longer apply to the current HEAD and which I attach here. It caches the rt_pa_info.dev vector after the first call to the server. Also, I am calling pa_operation_unref from each pa_context_* call, as it seems that might be missing.
I am attaching the diff to the 5.2.0 branch in case it is useful.
5.2.0.txt
I tried porting to the current HEAD (beta), and after some code changes -- DeviceInfo.probed gone, setErorCallback, openStream with no error callback--but the results were worse. The playback would not work at all as the RtAudo error callback would report that the device ID was not initialized (or something similar).
The text was updated successfully, but these errors were encountered: