我正在尝试制作一个应用程序,该应用程序将允许注册客户端使用Wi-Fi向另一个注册客户端进行音频呼叫(它不需要互联网(。
我能够使用 SIP 成功注册和拨打电话。
接听电话后,我不知道如何处理RTP流并将其与手机的麦克风和扬声器(Android和IOS(连接以执行正常的通话功能。
我正在使用Xamarin和SIP Sorcery库。我是Xamarin和移动应用程序开发的新手。
下面是一段代码,可以更好地解释我自己:
async Task Call()
{
Console.WriteLine("Start of Calling section");
rtpSession = new RTPMediaSession((int)SDPMediaFormatsEnum.PCMU, AddressFamily.InterNetwork);
// May be somthing like this to connect audio devices to RTP session.
//get microphone
//get speaker
//ConnectAudioDevicesToRtp(rtpSession, microphone, speaker);
// Place the call and wait for the result.
bool callResult = await userAgent.Call(DESTINATION, ssid, userName, registerPassword, domainHost, rtpSession);
if (callResult)
{
Console.WriteLine("Call attempt successful. Start talking");
//I am reaching to this point and need help with how to move forward from here to support audio calling functionality for both Android and IOS
}
else
{
Console.WriteLine("Call attempt failed.");
}
}
任何帮助或指导将不胜感激。谢谢。
我查看了 SIP Sorcery 的文档,在那里我只找到了 Windows (https://sipsorcery.github.io/sipsorcery/articles/sipuseragent.html( 的示例,但没有找到 iOS 或 Android 的示例。
以下是SIP巫术对跨平台(https://sipsorcery.github.io/sipsorcery/(的描述。我认为你需要SIPSorceryMedia.FFmpeg库