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

请教一些关于视频编码解码问题

  •  
  •   Daath · 2020-06-07 16:13:40 +08:00 · 1625 次点击
    这是一个创建于 377 天前的主题,其中的信息可能已经有所发展或是发生改变。

    诱因

    • 今天在 b 站随便点开了一个 4K 的视频,https://www.bilibili.com/video/BV1sv41167ZF?t=126
    • 然后发现电脑偶尔会顿顿的,然后就看了一下任务管理器,看到 CPU 占用了差不多 70%~80%吧,偶尔会到 95%以上这样子。
    • 之前没了解过视频编解码的问题,就觉得很疑惑,自己台式机 i7-6700K+1060 的,已经是直接使用独显了,讲道理应该 1060 是可以流畅解析 4K 视频的,但是在 chrome83 却没有直接使用独显去解析,却用 CPU 来解析视频,就导致了 CPU 高占用,独显却空摆的问题。
    • 开始以为是 chrome 的硬解加速没有起作用,但从设置上看,是有启动硬件加速的

    搜索相关知识

    • 大概了解搜了一下有 h264,vp9 这两种视频格式,但没细致的去深究它,以及 b 站宣传页,和部分 youtube 相关网页,大概得出来,b 站是使用 h264,而 youtube 是使用 vp9
    • 接下来也了解到 firefox 是支持 vp8/vp9,h264,但貌似 h264 只能支持到 1080P,所以我通过 firefox 打开上面那个 b 站视频后,视频框框直接处于加载中,无法播放。但改回 1080P 的视频,从 hwmonitor 可以看到明显独显在占用,cpu 没有占用了。
    • 同时了解到 chrome 貌似只支持 vp9,对于 h264 貌似没有硬件加速上支持不了,只能通过软解的样子。如果 youtube 想用 h264,通过硬件加速的方法,貌似可以通过一个叫 h264ify 的插件来支持,但具体我没怎么试。

    结果

    • 最后得出来 chrome 在播放 b 站的 4K 无法调用到独显去硬件加速,只能通过软解,这样子就导致了 CPU 占用很高
    • 此后我就在如何 firefox 上支持 h264 4k 播放,以及 chrome 如何跳过软解直接使用用硬件加速方式直接用独显对 b 站 4K 视频流畅播放这两个问题反复横跳。碌碌无为没有结果

    问题

    • v 站上大佬众多,所以就想能不能从这边得到一些相关途径或者解决方案来解决上面的问题
    • 以及有没有比较好思路顺序去了解视频编解码这块的内容(站在大佬的肩膀上少绕点弯)
    • 在此就先感谢各位 v 友们的不吝赐教了。
    第 1 条附言  ·  364 天前
    • 终于在今天有空,装了一下win10,然后打开那个4K视频,看到1060已经占用50%,cpu在10%以下了
    • 看来真是系统问题,刚好买了dell2720,也趁机顺带换了系统
    • 感谢各位v友的帮助。谢谢。结贴
    12 条回复    2020-06-20 12:17:54 +08:00
    watermeter
        1
    watermeter   2020-06-07 16:33:20 +08:00
    试了下,B 站 4k 可以显卡硬解啊,只有关了硬件加速才会用 CPU 解码
    hello2060
        2
    hello2060   2020-06-07 16:43:53 +08:00
    其实没怎么看懂你想要干啥。如果用不用硬解是浏览器的选择的话,你也没法改变他啊。你要实验的话可以自己写个 HTML,把本地 4K 视频放上去(就是 HTML5 的 VIDEO TAG) 看 FF 能不能打开,能不能硬解。而且 VP9 应该不是所有浏览器都支持的吧,这样的话 FF YouTube 4K 用的什么格式?
    Daath
        3
    Daath   2020-06-07 16:46:10 +08:00
    @watermeter 我也是开了硬件加速的,但还有一个可能因素在就是我用的是 win7 的系统
    msg7086
        4
    msg7086   2020-06-07 16:47:04 +08:00
    刚刚用 Chrome 跑了一下 4K,完美支持。CPU 5%,显卡 60%。

    是不是你显卡太弱了所以浏览器放弃了?
    msg7086
        5
    msg7086   2020-06-07 17:03:03 +08:00
    chrome://gpu/

    一路往下翻到 Video Acceleration Information 看看你那边写的是什么?
    Daath
        6
    Daath   2020-06-07 17:27:14 +08:00
    @msg7086
    Video Acceleration Information
    Decode h264 baseline 48x48 to 1920x1088 pixels
    Decode h264 main 48x48 to 1920x1088 pixels
    Decode h264 high 48x48 to 1920x1088 pixels
    imn1
        7
    imn1   2020-06-07 18:08:13 +08:00
    多数是你系统的 vp9 解码器没有勾选硬解,默认用软解
    unixeno
        8
    unixeno   2020-06-07 18:14:14 +08:00 via Android
    @Daath 看这个好像你浏览器只支持硬解 1080p

    所以你是啥显卡
    msg7086
        9
    msg7086   2020-06-07 18:25:54 +08:00
    @Daath 1060 按理是能支持 8K 回放的,至于为什么只有 1080P,你可能需要自己折腾一下,比如装个新驱动或者装个 Windows 10 试试。
    systemcall
        10
    systemcall   2020-06-07 18:32:28 +08:00
    特地试了一下,RX570 会卡,满占用。浏览器是 Edge Dev
    Daath
        11
    Daath   2020-06-07 19:42:27 +08:00
    @msg7086 只能等找个时间装个 win10 试一下了。谢谢了
    @unixeno gtx1060,
    Daath
        12
    Daath   364 天前 via Android
    @msg7086 装了 win10,就好了。🙃😂😂,看来老古董系统得升级了。
    关于   ·   帮助文档   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1567 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:33 · PVG 09:33 · LAX 18:33 · JFK 21:33
    ♥ Do have faith in what you're doing.