Hi,
I am working on c++ applications with WebRTC (M84). They run on Windows and Android.
The applications can send and receive video, audio and data without problem on Windows and Android.
Now, I would like to mute the audio channel of a publisher. So I tried to call set_enabled on the AudioTrack. It works on Windows but it crashes on Android.
Here is the error message:
# Fatal error in: ../../src/pc/audio_track.cc, line 47
# last system error: 115
# Check failed: thread_checker_.IsCurrent()
#
Here is the creation of the PeerConnectionFactory:
mPeerConnectionFactory = webrtc::CreatePeerConnectionFactory(
nullptr /* network_thread */, nullptr /* worker_thread */,
nullptr /* signaling_thread */, nullptr /* default_adm */,
webrtc::CreateBuiltinAudioEncoderFactory(),
webrtc::CreateBuiltinAudioDecoderFactory(),
webrtc::CreateBuiltinVideoEncoderFactory(),
webrtc::CreateBuiltinVideoDecoderFactory(), nullptr /* audio_mixer */,
nullptr /* audio_processing */);
So if I understand the WebRTC code, the signaling_thread should be the main thread.
If I break in my method before calling set_enabled, I am in the main thread... So I don't understand the error message...
Do you have an idea ?
Thanks,
Christophe