iOS - 如何硬件加速 MKV(+ 其他不支持的)播放

标签 ios ffmpeg

我看到一些视频播放器(例如 AVPlayerHD)正在 iOS 上为不受支持的容器(如 MKV)进行硬件加速播放。您认为他们是如何实现这一目标的?

我正在考虑用 ffmpeg 读取数据包,用 Core Video 解码。那有意义吗?我正在努力实现同样的目标。

谢谢!

最佳答案

我认为由于硬连线逻辑,用于视频渲染(解码)的硬件加速器支持固定格式。我不知道有任何硬件加速器能够从 MKV 转码。

另一种加速视频播放的方法是使用 OpenCL 并利用设备上的集成 GPU。这种方法可以为更广泛的应用领域提供硬件加速。

这种方法的问题在于,如果你没有幸运地找到一个使用 OpenCL 来做转码/解码的 GPU 加速的框架,你可能需要自己做。

添加信息

要实现完全硬件加速的解决方案,您首先需要将 MKV 转码为 H264 和 sub,然后您可以使用硬件解码器渲染 H264 组件。

对于硬件加速转码操作,您可以使用 GPU(通过 OpenCL)和/或多线程。

我找到了 https://handbrake.fr/可能具有一些 OpenCL 转码功能。

干杯!

关于iOS - 如何硬件加速 MKV(+ 其他不支持的)播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26231080/

相关文章:

ios - 如何围绕多个轴并以不同角度旋转 SCNNode?

ios - 仅在必要时允许 iOS 应用用户通过 Facebook 进行身份验证

java - 对编写媒体转换器感到困惑

bash - 生成特殊文件列表

ffmpeg - 在 h265 中关闭帧内预测

video - 根据ffmpeg视频动态调整jwplayer大小

objective-c - 使用带有pop over的drawRect,需要显示图像

iOS 自动更新

ios - Firebase 的 snapshot.value 转换为 Bool 突然返回 nil

android-ndk - 在 Android 中使用 stagefright 库的 H264 硬件加速解码