0

我正在为通过 HTTP 传输的视频流构建一个播放器。流的来源是第三方提供商,我无法控制它们。看起来他们的提要几乎与 AVFonudation 和 AVPlayer 提供的解码器兼容。但经常有一个帧破坏了内置解码器,它永远不会恢复。使用 VLC Player 或 MPlayer 在 Mac 上可以正常播放相同的流。

由于 AVPlayer 和 feed 的来源不兼容,并且考虑到有多少黑盒 AVPlayer,我正在寻找一个可以在我的应用程序中使用的第三方库,而不是僵化且不可调试的 AVPlayer。

我知道有一个适用于 iOS 的 VLC Player 端口,但构建它非常棘手。我正在寻找像 MPlayer 这样有据可查且灵活的东西,但以库的形式而不是像 libvlc 这样的单独的独立应用程序。

任何提示或链接将不胜感激。

4

1 回答 1

1

事实证明,好的旧 FFMPEG 可以在 iOS 平台上成功编译和使用。如果您熟悉 GCC 工具链及其使用的参数,构建并不是很困难。在 OSX 上为 armv7、armv7s 和 i386 构建它大约需要 30 分钟。然后,您可以在真正的 Apple 硬件以及 iOS 模拟器中使用结果。

将 ffmpeg 和 Apple 专有的视频接口结合起来,尤其是音频接口是一个挑战,但它是可行的。我能够让 iPad 解码具有 H264 视频和 AAC 音频的第三方流,所有解码都在 ffmpeg 和几个简单的手写适配器中完成。

此外,ffmpeg 许可证比 VLC 更灵活,对某些人来说它可能会开辟新的可能性。

于 2013-06-10T01:09:38.213 回答