小编ats*_*dis的帖子

使用 TURN 时,状态为“完成”的 WebRTCiceGatheringChanged 需要太长时间才能触发(〜分钟)

设想:

\n\n

我在 iOS 上使用 WebRTC(Google 的 libjingle),并且使用 TURN 服务器设置 PeerConnection,我正在等待所有候选者聚集,然后再将它们发送给对等点(我使用的是 SIP)。问题是,尽管所有候选者都在大约 1-3 秒内收集完毕(我可以在日志中看到),但直到大约一分钟后,iceGatheringChanged() 回调才会以状态 GatheringComplete 被调用!

\n\n

知道为什么会发生这种情况吗?

\n\n

使用 Google 的 AppRTCDemo for iOS 分析流量后,似乎要触发 GatheringComplete,客户端需要 \xe2\x80\x8b 才能从远程端 \xe2\x80\x8b 接收候选者,因为它似乎需要设置 TURN 分配并在新分配上添加权限,以便可以与对等方交换数据。是这样吗?如果是这样为什么?

\n\n

此致

\n

sip webrtc turn peer-connection restcomm

7
推荐指数
1
解决办法
954
查看次数

如何调试Mobicents媒体服务器

我正在使用RestComm Client iOS SDK来调用我在本地部署的RestComm实例,但是我在设置WebRTC调用时遇到了问题(作为ICE的一部分,STUN ping似乎有些问题).如何在RestComm媒体服务器上附加eclipse调试器?

最好的祝福

debugging webrtc server mobicents restcomm

5
推荐指数
1
解决办法
231
查看次数

使用android.net.rtp工具时,RTP媒体出现严重延迟

我正在为Android构建VOIP应用程序,并使用内置的RTP工具android.net.rtp。除以下问题外,一切工作正常:

  • 在传入的RTP流中,存在很大的延迟(大约在0.5-1秒钟之前,我听到对方的声音)-请注意,传出的流会立即到达对方
  • 在传出的RTP流中,有少量中断。

请记住,对于AudioStream,我正在使用PCMU编解码器,而远程方也是如此。

以下是一些关键代码:

初始化音频设施(一次):

public class SoundManager implements AudioManager.OnAudioFocusChangeListener {
    Context appContext;
    AudioManager audio;
    AudioStream audioStream;
    AudioGroup audioGroup;
    InetAddress localAddress;
    private static final String TAG = "SoundManager";

    public SoundManager(Context appContext, String ip){
        this.appContext = appContext;
        audio = (AudioManager) appContext.getSystemService(Context.AUDIO_SERVICE);
        try {
            localAddress = InetAddress.getByName(ip);
            audioGroup = new AudioGroup();
            audioGroup.setMode(AudioGroup.MODE_ECHO_SUPPRESSION);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
Run Code Online (Sandbox Code Playgroud)

初始化AudioSession(在每次通话开始之前一次)

public int setupAudioStream() {
    Log.i(TAG, "Setting up Audio Stream");
    try {
        audioStream = new AudioStream(localAddress);
        audioStream.setCodec(AudioCodec.PCMU);
        audioStream.setMode(RtpStream.MODE_NORMAL);
    }
    catch (SocketException …
Run Code Online (Sandbox Code Playgroud)

media android voip rtp

5
推荐指数
0
解决办法
196
查看次数

在 Travis CI 中运行时,xcodebuild 停留在协同设计步骤

在设置了证书和私钥进行签名后,我正在尝试让 iOS 存档构建在 Travis CI 上工作。一切顺利,直到签名发生,此时构建被卡住,直到 travis CI 在超时后杀死它:

...
/usr/bin/codesign --force --sign 15E2916907037CFB777FC5F494A6CA252EF0895C  --preserve-metadata=identifier,entitlements "/Users/travis/build/RestComm/restcomm-ios-sdk/build/Build/Intermediates/ArchiveIntermediates/restcomm-olympus/InstallationBuildProductsLocation/Applications/restcomm-olympus.app/Frameworks/sofiasip.framework"

No output has been received in the last 10m0s, this potentially indicates a stalled build or something wrong with the build itself
Run Code Online (Sandbox Code Playgroud)

起初我认为这是这里描述的问题,所以我在我的“安全导入...”命令中添加了 -A 标志,但无济于事。

任何提示?

更多细节:

  • 我创建了一个新的钥匙串,在其中添加了 Apple 的证书,以及我的开发和分发证书以及私钥
  • 我将该钥匙串设置为默认值并在任何构建操作之前将其解锁
  • 尝试使用 travis_wait 允许协同设计步骤运行超过 10 分钟以防万一,但仍然在 40 分钟后继续卡住。就好像它在等待一些永远不会到达的用户输入(可能在 UI 中)?

提前致谢,安东尼

xcode xcodebuild ios travis-ci

4
推荐指数
1
解决办法
1374
查看次数