-
- Downloads
media_decoder: refactor locking model
In SIPCall, requestKeyFrame & setVideoOrientation are using pjsip on the main thread. To avoid this, use the io thread as it's io operations that should not be done on main thread. Moreover, some operations from recorder were called from pjsip but not retriggered, causing jami->pjsip->jami operations called with lock that could be called from pjsip nor jami causing potential deadlocks. Finally, audioDecoder_/receiveThread_ should be protected in AudioRtpSession. This fixes crashes for ut_conference GitLab: #900 GitLab: #901 GitLab: #902 Change-Id: I055b297d25bc417e685f4c31d6105e4f6dab52e6
Showing
- src/media/audio/audio_receive_thread.cpp 4 additions, 0 deletionssrc/media/audio/audio_receive_thread.cpp
- src/media/audio/audio_receive_thread.h 1 addition, 0 deletionssrc/media/audio/audio_receive_thread.h
- src/media/audio/audio_rtp_session.cpp 49 additions, 19 deletionssrc/media/audio/audio_rtp_session.cpp
- src/media/audio/audio_rtp_session.h 1 addition, 1 deletionsrc/media/audio/audio_rtp_session.h
- src/media/media_decoder.cpp 4 additions, 0 deletionssrc/media/media_decoder.cpp
- src/media/media_recorder.cpp 13 additions, 4 deletionssrc/media/media_recorder.cpp
- src/media/video/video_rtp_session.cpp 30 additions, 13 deletionssrc/media/video/video_rtp_session.cpp
- src/media/video/video_rtp_session.h 1 addition, 1 deletionsrc/media/video/video_rtp_session.h
- src/sip/sipcall.cpp 2 additions, 2 deletionssrc/sip/sipcall.cpp
Loading
Please register or sign in to comment