iOS MobileVLCKit 和 VideoCore 冲突

iOS MobileVLCKit and VideoCore conflict

我正在使用 MobileVLCKit 从 Wowza RTMP 服务器流式传输视频和音频。同时,我正在使用 VideoCore]1 将音频流式传输到 Wowza RTMP 服务器(我关闭了 VideoCore 中的视频通道)。现在我正在尝试制作这种电话会议解决方案。现在我仅限于 RTMP 或 RTSP,而不是电话会议解决方案(WebRTC 或 SIP 或其他...我目前不熟悉这些),因为线路另一端的限制。

以上设置无效。分别打开这两个功能(视频和音频流和音频流)运行 没问题。但当 运行 同时出现时则不会,因为另一端听不到音频。事实上,当应用程序开始使用 VideoCore 上游流式传输音频时,只要我开始通过 MobileVLCKit 向下游传输,即使流是打开的,另一端也听不到音频。麦克风似乎以某种方式从 VideoCore 中夺走了,即使 MobileVLC 不需要麦克风。

但是,当我将这两个变成两个应用程序并允许它们在后台 运行(音频和播放背景模式)时,这两个 运行 可以在一个应用程序中流式传输视频& 音频,另一个拾取麦克风声音并流式传输到另一端。

这两个功能在同一个应用程序中似乎有冲突,是否有任何原因,以及如何解决冲突的想法?

我遇到了同样的问题。假设我有两个对象,一个 vlc 播放器和另一个收听麦克风的音频处理器。它在模拟器中运行良好,可以同时运行这两个功能。但是在 iPhone 设备中发生冲突。我认为根本原因是听话筒只有一个位置或权利。而vlc占权让我的音频处理器无法工作。但是由于某些原因,我无法修改vlc代码。所以我想找出解决方法。我找到了一个。

问题出在 vlc 上,它占用了右边但没有使用麦克风,而我的音频处理器却使用了。所以这条路就显得很清楚了。也就是说,vlc 播放器首先播放,然后我们新建另一个对象实例,在我的例子中是音频处理器,它需要听麦克风。由于音频处理器在vlc播放器之后,它收回了麦克风收听的权利。他们都工作正常。

供您参考,希望对您有所帮助。