iOS7 iPhone5上的PJSIP没有出站音频,但在模拟器中工作

时间:2014-06-04 15:52:36

标签: ios iphone objective-c voip pjsip

我正在使用Gossip包装和最新版本的PJSIP来创建一款软电话。

  • 在iOS模拟器(iOS7)和iPod(iOS6)之间进行通话时,我会收到双向音频(通过TCP或UDP发送信号都有效)。
  • 当进行从iPhone5(iOS7)到iPod(iOS6)或模拟器(iOS7)的外拨呼叫时,我无法从被叫方听到来电者的音频,但可以在来电方听到来自iPod或Sim的音频。 Wireshark显示了两个RTP流,但由于它们是Speex,我无法验证音频是否从iPhone端传输(因为wireshark不解码Speex)。
  • 当从iPod或Sim接收到iPhone的入站呼叫时,我获得与上述相同的单向音频但是我只看到一个RTP流(iPod / Sim - > iPhone)。

我已将PJSIP日志级别设置为6,并且没有音频错误。我还在调用状态期间验证了iPod,iPhone和模拟器中的声音和音频设备ID,并尝试使用pjsua_set_snd_dev映射pjsua_enum_snd_dev返回的音频设备ID的所有可能组合。

我已经通过拨打移动电话验证了iPhone的麦克风工作情况,并且我还验证了AudioToolbox可以找到这样的麦克风:

// check if mic is available
UInt32 hasMicro, size;
size = sizeof(hasMicro);
AudioSessionGetProperty(kAudioSessionProperty_AudioInputAvailable,
                        &size, &hasMicro);

是否有人熟悉此问题或有进一步诊断的方法?

1 个答案:

答案 0 :(得分:0)

在iPhone5上使用PJSUA2进行VoIP。 Telnet示例适用于库构建。 使用PJSUA2包装器lib或cpp时,两侧都没有音频。