用 Metal 适不适合用来加速视频解码?
Kaby Lake 处理器和 AMD Poaris 开始的显卡都支持硬解 VP9,也就是 Youtube 的编码器。而且 Youtube 4K 以上的视频现在只有 VP9 格式,并没有 H264。(也就是 safari 看不到 4k 的原因。)所以苹果电脑上新款的硬件是支持硬解 VP9 的。但现在完全没法调用。。。导致 Chrome 看 Youtube 视频完全是 CPU 软件解码,非常占资源,而且 8k 基本没有希望。
所以我想法是一个折中的办法,通过 Metal 写一个解码器,不知道可不可行。
(不过即使技术上可行,写解码器这种巨大的工程也需要很多人力啊。。而且给一个支持硬解的显卡写一个解码器,有一种做无用功的感觉)
1
phoxtail 2017-08-04 08:58:54 +08:00
可行性很低吧。新版本的 macOS 支持 HEVC,或许等 Youtube 支持 H.265 更靠谱一点。
|
2
gggxxxx 2017-08-04 09:10:15 +08:00
Metal 是图形接口标准,等同于原来的 opengl。你听说过用 opengl 作视频编解码的吗?
编解码的本质是一些信号系统处理算法合集,所谓的硬件加速也就是加速这些算法函数的效率。 我司有人自己做过硬解码,但是那是基于 intel 的 sdk 开发包。 现在 mac 的情况是基本只有最新硬件才支持 265 的硬件加速,出于兼容性的考虑。目前对于 h265 软解方案是最适合的。 |
3
Valyrian OP @gggxxxx metal 2 不是可以加速机器学习算法吗?是一个类似 cuda/vulkan 的接口吧。另外我说的是 VP9 不是 HEVC …支持的硬件确实比较少
|
4
gggxxxx 2017-08-04 09:35:01 +08:00
@Valyrian VP9 难道不是 265 标准?
想自己从算法层面重写解码器可以先看看 265 协议的标准文档,然后再决定要不要做。 |
5
inflationaaron 2017-08-04 10:18:31 +08:00
@gggxxxx 当然不是啊,VP9 是谷歌家的开源算法。H.265 是 MPEG 的。
macOS 上的硬件解码只能等 Apple 的 videotoolbox 实现,除非你能直接调用 AMD 的底层 API。 |
6
tyhunter 2017-09-10 21:00:38 +08:00
同关注,现在只能先装个插件把 VP9 转为 H.264 https://github.com/erkserkserks/h264ify
|