I have a Android/iOS application that uses linphone xamarin sdk version number 4.1-161-g585c663.
It implement "Mute" operation by modifying the SDP of the call to indicate that it should not send rtp packets.
The problem happens on a secured call (using srtp) when I request it to mute after 20 minutes in a call.
It sends an INVITE with "recvonly" and new encryption keys (I had "keep_srtp_keys" set to 0).
It gets a 200OK response with new encryption key.
From that time it does not hear the remote party.
When I tried to unmute the call the problem was not solved – I still could not hear the other party.
The "AUDIO SESSION'S RTP STATISTICS" shows that the number of received packets did not change after I muted the call till it was disconnected.
I repeated this scenario with "keep_srtp_keys " set to 1.
The no voice problem still exists but this time there are many error messages like:
"ERROR srtp_unprotect() failed (7) on stream ctx [0x70d8bab380]"
The statistics line for received packets does not change.
I did some more tests with "keep_srtp_keys" set to 0 and found:
The error messages and no voice appear when the mute operation is 20:10 minutes after the call was answered.
If the call is not muted the voice is stable for a long time (at least 1 hour).
Note:
The microphone can't be muted when the application runs on an iPhone.
The call agent is located behind an AudioCodes Mediant server that handles the media.
I have a Android/iOS application that uses linphone xamarin sdk version number 4.1-161-g585c663. It implement "Mute" operation by modifying the SDP of the call to indicate that it should not send rtp packets. The problem happens on a secured call (using srtp) when I request it to mute after 20 minutes in a call. It sends an INVITE with "recvonly" and new encryption keys (I had "keep_srtp_keys" set to 0). It gets a 200OK response with new encryption key. From that time it does not hear the remote party. When I tried to unmute the call the problem was not solved – I still could not hear the other party. The "AUDIO SESSION'S RTP STATISTICS" shows that the number of received packets did not change after I muted the call till it was disconnected.
I repeated this scenario with "keep_srtp_keys " set to 1. The no voice problem still exists but this time there are many error messages like: "ERROR srtp_unprotect() failed (7) on stream ctx [0x70d8bab380]" The statistics line for received packets does not change.
I did some more tests with "keep_srtp_keys" set to 0 and found:
Note: The microphone can't be muted when the application runs on an iPhone. The call agent is located behind an AudioCodes Mediant server that handles the media.
Thank you,