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

上面的设置不起作用。分别打开两个功能(降低视频和音频流以及提高音频流)可以正常运行。但是不能同时运行,因为另一端听不到声音。实际上,当应用程序从VideoCore上游流式传输音频开始时,只要我通过MobileVLCKit开始向下游传输音频,即使流是打开的,也无法在另一端听到音频。看起来,即使MobileVLC不需要麦克风,麦克风还是会从VideoCore手中夺走。

但是,当我将这两个应用程序分成两个应用程序并允许它们在后台运行时(音频和空中播放背景模式),两个应用程序可以正常运行,其中一个应用程序可以向下传输视频和音频,另一个应用程序可以拾取麦克风声音,然后流向另一个结束。

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

最佳答案

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

问题来自vlc,该vlc占用正确的权限,但不会使用麦克风,而我的音频处理器确实使用了麦克风。因此,方法看起来很清晰。也就是说,vlc Player首先播放,然后我们新建另一个对象实例,在我的情况下是音频处理器,需要监听麦克风。由于音频处理器紧随vlc播放器之后,因此它收回了麦克风收听的权利。而且它们都可以正常工作。

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

关于ios - iOS MobileVLCKit和VideoCore冲突,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29689160/

10-09 04:20