On Wed Jul 26 19:17:48 2023 +0000, Nikolay Sivov wrote:
I had to learn what's going on in there once again. I think what we need to do is basically stop using 'presenter->cs' in the streaming thread entirely, MFVP_MESSAGE_ENDSTREAMING handling will remain unchanged. This means two things:
- queue itself should be protected with its own lock;
- video_presenter_process_input() should not be called in the streaming
thread all. Instead it could be called right in video_presenter_allocator_cb_NotifyRelease(), with appropriate locking.
It's slightly more complicated, I can see now why EVRM_PROCESS_INPUT was added - it was probably to avoid interacting with tracking thread. The point still stands, I think we'll need to remove remaining presenter lock from streaming thread, one way or another.