V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Valyrian
V2EX  ›  问与答

请教一下熟悉苹果 Metal 和视频解码的大牛

  •  
  •   Valyrian · 2017-08-04 07:11:31 +08:00 · 2688 次点击
    这是一个创建于 2654 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 Metal 适不适合用来加速视频解码?

    Kaby Lake 处理器和 AMD Poaris 开始的显卡都支持硬解 VP9,也就是 Youtube 的编码器。而且 Youtube 4K 以上的视频现在只有 VP9 格式,并没有 H264。(也就是 safari 看不到 4k 的原因。)所以苹果电脑上新款的硬件是支持硬解 VP9 的。但现在完全没法调用。。。导致 Chrome 看 Youtube 视频完全是 CPU 软件解码,非常占资源,而且 8k 基本没有希望。

    所以我想法是一个折中的办法,通过 Metal 写一个解码器,不知道可不可行。

    (不过即使技术上可行,写解码器这种巨大的工程也需要很多人力啊。。而且给一个支持硬解的显卡写一个解码器,有一种做无用功的感觉)

    6 条回复    2017-09-10 21:00:38 +08:00
    phoxtail
        1
    phoxtail  
       2017-08-04 08:58:54 +08:00
    可行性很低吧。新版本的 macOS 支持 HEVC,或许等 Youtube 支持 H.265 更靠谱一点。
    gggxxxx
        2
    gggxxxx  
       2017-08-04 09:10:15 +08:00
    Metal 是图形接口标准,等同于原来的 opengl。你听说过用 opengl 作视频编解码的吗?
    编解码的本质是一些信号系统处理算法合集,所谓的硬件加速也就是加速这些算法函数的效率。
    我司有人自己做过硬解码,但是那是基于 intel 的 sdk 开发包。
    现在 mac 的情况是基本只有最新硬件才支持 265 的硬件加速,出于兼容性的考虑。目前对于 h265 软解方案是最适合的。
    Valyrian
        3
    Valyrian  
    OP
       2017-08-04 09:15:20 +08:00 via iPhone
    @gggxxxx metal 2 不是可以加速机器学习算法吗?是一个类似 cuda/vulkan 的接口吧。另外我说的是 VP9 不是 HEVC …支持的硬件确实比较少
    gggxxxx
        4
    gggxxxx  
       2017-08-04 09:35:01 +08:00
    @Valyrian VP9 难道不是 265 标准?
    想自己从算法层面重写解码器可以先看看 265 协议的标准文档,然后再决定要不要做。
    inflationaaron
        5
    inflationaaron  
       2017-08-04 10:18:31 +08:00
    @gggxxxx 当然不是啊,VP9 是谷歌家的开源算法。H.265 是 MPEG 的。
    macOS 上的硬件解码只能等 Apple 的 videotoolbox 实现,除非你能直接调用 AMD 的底层 API。
    tyhunter
        6
    tyhunter  
       2017-09-10 21:00:38 +08:00
    同关注,现在只能先装个插件把 VP9 转为 H.264 https://github.com/erkserkserks/h264ify
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2767 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:59 · PVG 09:59 · LAX 17:59 · JFK 20:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.