Chrome 104 Mac 终于支持硬解 HEVC 了 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ililu
V2EX    macOS

Chrome 104 Mac 终于支持硬解 HEVC 了

  •  4
     
  •   ililu 2022-08-03 10:01:32 +08:00 17605 次点击
    这是一个创建于 1172 天前的主题,其中的信息可能已经有所发展或是发生改变。

    添加下面这个启动参数就可以了 open /Applications/Google\ Chrome.app --args --enable-features=PlatformHEVCDecoderSupport

    B 站设置:更多播放设置-播放策略-HEVC

    83 条回复    2023-04-05 12:38:13 +08:00
    ililu
        1
    ililu  
    OP
       2022-08-03 10:02:17 +08:00
    wuyazuofeiji
        2
    wuyazuofeiji  
       2022-08-03 10:08:09 +08:00
    怎么添加启动参数啊
    w88975
        3
    w88975  
       2022-08-03 10:09:52 +08:00
    @wuyazuofeiji autorun
    wuyazuofeiji
        4
    wuyazuofeiji  
       2022-08-03 10:12:26 +08:00
    正式版才 103.0.5060.134 ,你是用的测试版本吗
    FringJX
        5
    FringJX  
       2022-08-03 10:12:37 +08:00
    在命令行启动吗?为啥设置完还是没有 hdr 的选项
    FringJX
        6
    FringJX  
       2022-08-03 10:13:07 +08:00
    @wuyazuofeiji 正式版 104 了
    cmu2chert
        7
    cmu2chert  
       2022-08-03 10:14:01 +08:00
    怎么设置啊
    Cavolo
        8
    Cavolo  
       2022-08-03 10:15:05 +08:00 via iPhone   1
    等明天 Brave 更新了看看
    wuyazuofeiji
        9
    wuyazuofeiji  
       2022-08-03 10:15:55 +08:00
    @hfl1995 #6 哈哈刚去检查了下更新,真的 104 了
    frankkly
        10
    frankkly  
       2022-08-03 10:16:14 +08:00
    这个升级可以解决 B 站看视频发热大的问题吗
    yyysuo
        11
    yyysuo  
       2022-08-03 10:27:13 +08:00
    win 上支持吗?
    tanrenye
        12
    tanrenye  
       2022-08-03 10:28:40 +08:00
    @frankkly 关弹幕就能降低发热,跟视频解码关系不大
    dufu1991
        13
    dufu1991  
       2022-08-03 10:33:10 +08:00
    开启这个与 inter 芯片和 M 系列有关吗?
    /table>
    A01514035
        14
    A01514035  
       2022-08-03 10:45:45 +08:00
    我靠,喜大普奔,我看 LPL 直播终于不用风扇呜呜转了
    tanrenye
        15
    tanrenye  
       2022-08-03 10:46:59 +08:00
    看了知乎的完整文章,说是最终可能到 105 才会集成到正式版里,再等一两个月吧,全平台都支持
    SpecterShell
        16
    SpecterShell  
       2022-08-03 10:47:57 +08:00   10
    这个功能是字节跳动开发并提交给 Chromium 的,用的是系统解码能力(例如 Windows 调用 D3D11 ,macOS 调用 VideoToolbox ),具体可以参考字节的文章。
    https://zhuanlan.zhihu.com/p/541082191
    aireason
        17
    aireason  
       2022-08-03 10:49:31 +08:00
    难道交专利费了?
    SpecterShell
        18
    SpecterShell  
       2022-08-03 10:51:12 +08:00
    @aireason #17 调用系统解码器,不用交专利费。
    SpecterShell
        19
    SpecterShell  
       2022-08-03 10:52:14 +08:00
    @yyysuo #11 全平台支持,但 Windows 7 及以下不行。https://github.com/StaZhu/enable-chromium-hevc-hardware-decoding/issues/2
    revalue
        20
    revalue  
       2022-08-03 10:52:56 +08:00
    好像之前 mac chrome 打开 b 站 HEVC ,电脑散热风扇就会狂转
    xiaooloong
        21
    xiaooloong  
       2022-08-03 10:54:36 +08:00
    万一走的是 wasm 软解呢?
    IslandOwnerHuang
        22
    IslandOwnerHuang  
       2022-08-03 10:59:03 +08:00
    不知道 Mac 版 Edge 何时会更新
    SpecterShell
        23
    SpecterShell  
       2022-08-03 11:01:00 +08:00   1
    @xiaooloong #21 视频统计信息第二行没有 wasm player 就是硬解。
    A01514035
        24
    A01514035  
       2022-08-03 11:01:40 +08:00
    https://pic.rmb.bdstatic.com/bjh/e7e5574e316f8cd1acc2713449d9756e.png
    话说怎么分辨出有没有用硬件解码。我这个用楼主的方式启动以后,怎么感觉还是软解呢。chrome 已经到 104 版本了。
    tnesa
        25
    tnesa  
       2022-08-03 11:02:50 +08:00
    我也挺喜欢小宁子
    ChangQin
        26
    ChangQin  
       2022-08-03 11:04:18 +08:00
    safari 支持 HEVC 吗
    AV1
        27
    AV1  
       2022-08-03 11:10:48 +08:00
    @A01514035 看到 wasm player ,应该是软解了
    cwbsw
        28
    cwbsw  
       2022-08-03 11:17:52 +08:00
    @A01514035
    看有没有 VTDecoderXPCSupport 进程的占用。
    我试了下确实支持了,chrome://gpu 里有显示 hevc 的解码能力,播放 hevc 视频也有调用硬解进程,但是 B 站还是在调用软解解码器。
    cwbsw
        29
    cwbsw  
       2022-08-03 11:20:57 +08:00
    @cwbsw 更新:清除网站数据后 B 站就能正确调用硬解了。
    Xusually
        30
    Xusually  
       2022-08-03 11:24:44 +08:00
    @cwbsw @A01514035 @DOLLOR
    根据字节跳动的文章内容看,https://zhuanlan.zhihu.com/p/541082191
    不然尝试修改 Chrome 的 UA 为 Safari 试试看?
    Cavolo
        31
    Cavolo  
       2022-08-03 11:44:00 +08:00 via iPhone
    @IslandOwnerHuang Mac 上用 Edge 意义何在
    Cavolo
        32
    Cavolo  
       2022-08-03 11:44:17 +08:00 via iPhone
    Windows 用 Edge 的理由又少了一个
    UrsulaTucker
        33
    UrsulaTucker  
       2022-08-03 12:00:13 +08:00
    @SpecterShell #19 又是 Linux 用户受伤的一天
    ronman
        34
    ronman  
       2022-08-03 12:01:11 +08:00 via Android
    @Cavolo edge 肯定会跟进啊
    windyskr
        35
    windyskr  
       2022-08-03 12:09:08 +08:00   4
    先更新 Chrome 到 104 ,再在 Chrome 里面 command + q 强制退出一下 Chrome ,terminal 输入 open /Applications/Google\ Chrome.app --args --enable-features=PlatformHEVCDecoderSupport 打开 Chrome 。
    再安装这个插件
    https://chrome.google.com/webstore/detail/user-agent-switcher-and-m/bhchdcejhohfmigjafbampogmaanbfkg
    修改成 safari 的 UA ,再打开https://www.bilibili.com/video/BV15z4y1Z734 测试一下,就可以了!!!
    ColorfulBoar
        36
    ColorfulBoar  
       2022-08-03 12:13:50 +08:00   6
    扫了一眼字节那位的文章真的说不出话来……

    「所谓硬解,即指使用 GPU 内专用于解码的芯片来处理解码工作,由于 GPU 多核心低频且专一的优势,在解码视频时发热和功耗显著低于 CPU 。」
    敢情调了半天包,愣是没整明白视频解码用的就不是通常的 GPU 核心,Apple 那套 GPU 性能宣传法骗骗外行也就算了,这亲自实现了代码都没搞懂到底是真傻还是装傻……

    「考虑到 Apple 其最新 Apple Silicon 芯片专门实现了支持 H.264 、HEVC 和 ProRes 的专用编解码媒体处理引擎,看在 Apple 这么努力的份上,我首先挑选了 macOS 平台来进行尝试 。」
    我寻思 GTX960 那一代就支持 HEVC 了,Apple 到底努力在哪了?

    「遂观察其实现逻辑,发现 Windows 的硬解实现逻辑与 macOS 完全不同」
    想来想去没想通这编解码个视频到底和操作系统有啥关系……整天跟 DirectX 过不去干嘛,就算 Vulkan 的视频相关扩展用不了不能一次性解决两个系统三家硬件(这玩意好像挺新的我也没试过不知道有啥坑),但反正硬件一共就三家,照着 SDK 里面的 sample 和文档抄一抄做三遍也完事了,照现在你这个搞法咋支持 Linux……哦不支持啊那没事了,虽然跟我没关系,但感觉 Linux 用户真是倒了大霉了,就因为实现者脑袋不咋转就莫名其妙失去了支持 (//●●)//
    bitdepth
        37
    bitdepth  
       2022-08-03 12:26:44 +08:00
    @ColorfulBoar GPU 直接示自己 codec 核心的像或者 render 效能就是比解好
    nvidia 早期的 hevc decoder 有的
    Linux 上硬加速方案不一,Intel AMD 用 vaapi, nvidia 用 nvcodec
    比好的用加速器支援 v4l2 m2m ,不大多都是打折的
    更多是不支援的

    最好的方案就是 Webkit 用 Gstreamer
    Jim142857
        38
    Jim142857  
       2022-08-03 13:02:34 +08:00
    已成功。用 Safari 的理由又少了一个
    IslandOwnerHuang
        39
    IslandOwnerHuang  
       2022-08-03 13:33:31 +08:00
    @Cavolo Safari 的插件太少了,而且部分插件只支持 Chrome 和 Edge ,不支持 Safari ,例如我们线上考试监考用的 Proctorio 。
    Cavolo
        40
    Cavolo  
       2022-08-03 13:41:38 +08:00 via iPhone
    @IslandOwnerHuang 所以我一般全平台选择 chrome 原版或者 Brave ,Edge 微软加料太多
    IslandOwnerHuang
        41
    IslandOwnerHuang  
       2022-08-03 13:51:59 +08:00
    @Cavolo Chrome 在 macOS 上内存占用太恐怖了,比 Edge 高。而且 Chrome 热得太快了,我的是 intel Mac ,Chrome 一开直接暖手......
    sgissb1
        42
    sgissb1  
       2022-08-03 14:44:27 +08:00
    @ColorfulBoar gpu 不等于一定有 hw codec ,或者连 hw decoder 都没有用。某些 mx 系列 gpu 就被阉割了。

    另外,win 上用 gpu 的 codec 有很多种办法,一种裸调 api ,还有通过 dxva 等等内置好的 api 去解码。解码延时和性能有点区别。另外如果直接调 gpu driver runtime 的 api 会有很多适配问题,所以 win 提供了一些教高级别的 api 去适配掉了。

    不过字节的那个文章,确实也有点那啥。本质客户端做 hw codec 适配确实是一个工作量相对较大的针线活。
    kxy09
        43
    kxy09  
       2022-08-03 15:33:58 +08:00
    @yyysuo 支持
    dufu1991
        44
    dufu1991  
       2022-08-03 15:47:57 +08:00
    @windyskr ,还是你这个具体,题主说的一句话我弄了半天没成功。
    boko
        45
    boko  
       2022-08-03 15:52:30 +08:00   2
    goodryb
        46
    goodryb  
       2022-08-03 16:02:40 +08:00
    @windyskr #35 插件其实也可以不装,视频播放设置里面有限 hevc 即可
    XiaoBaiYa
        47
    XiaoBaiYa  
       2022-08-03 16:20:10 +08:00
    按照该方法启动了 bilibili 的 hevc
    但是 emby 启动失败,直接显示没有兼容的流
    windyskr
        48
    windyskr  
       2022-08-03 17:38:47 +08:00
    @goodryb #46 不装插件可以放 hevc ,但是似乎没有 HDR 。
    lowsunndy
        49
    lowsunndy  
       2022-08-03 17:46:48 +08:00
    折腾了半天,还是要用 Chrome 伪装成 Safari 。。。那我为什么不直接用 Safari 看呢,还更省电。。。。。我现在就是看 netflix 和 youtube ,b 站用 Safari ,其他网页用 Chrome
    br00k
        50
    br00k  
       2022-08-03 19:05:02 +08:00
    @lowsunndy 本来就是尝鲜测试,目前还没在正式版 Chrome 默认开启,后面默认开启了 B 站应该也会适配。
    longbye0
        51
    longbye0  
       2022-08-03 19:13:09 +08:00 via iPhone
    看 b 站用 265 图啥,人是用来做成本省流量的,用户又不缺
    ililu
        52
    ililu  
    OP
       2022-08-03 20:31:58 +08:00
    @longbye0 图硬解不发烫,图码率高、效果好,图杜比视界
    goodryb
        53
    goodryb  
       2022-08-03 22:39:49 +08:00
    @windyskr #48 好像还真是,看来 b 站策略还没跟上,等 105 正式出来之后应该就有了
    janxin
        54
    janxin  
       2022-08-04 08:37:24 +08:00
    Firefox 用户哭泣
    execute
        55
    execute  
       2022-08-04 08:52:47 +08:00
    @longbye0 #51 之前看到过一个评论,大概意思是:以 B 站的辣鸡 CDN 来看,HEVC 很有必要,HEVC 移动用户多,CDN 缓存多,网页端用上能显著减少缓冲、卡顿
    mscsky
        56
    mscsky  
       2022-08-04 09:59:29 +08:00
    但是现在有直接用 av1 了啊
    fox233
        57
    fox233  
       2022-08-04 11:20:39 +08:00
    怎么添加启动参数呢?每次都用命令启动很明显狠不方便
    longbye0
        58
    longbye0  
       2022-08-04 13:34:13 +08:00
    @ililu 如果原视频上传是 265 且 b 站没做二次转码,可能会画质更好。杜比不了解,不谈。

    做转码的话,都是看 RD 曲线,找一个合适的码率。从成本来看,b 站肯定会选择更低码率的 265 来达到接近的画质。

    那对用户来讲,我选择更高码率的 264 有什么坏处呢。
    a707782628
        59
    a707782628  
       2022-08-04 20:15:55 +08:00 via iPhone
    B 站支持没有版权限制的 av1 ,也差不多了
    allin1
        60
    allin1  
       2022-08-05 15:09:01 +08:00
    @longbye0 我不是大会员,看低码率 1080p ,肉眼可见 avc 更糊。所以只看 hevc
    longbye0
        61
    longbye0  
       2022-08-05 17:29:56 +08:00 via iPhone
    @allin1 我选择原画 264 。
    那 b 站更不地道了,同档位做同码率 264 、265 编码。
    systemcall
        62
    systemcall  
       2022-08-05 20:42:13 +08:00
    @execute #55
    b 站已经开始上 av1 了
    av1 编码效率更高,而且 Chrome 和 Edge 之类的主流浏览器都是开箱即用,不需要折腾任何东西
    缺点是硬件解码器不普及,大多数用户只能够软解
    移动端几乎全军覆没,桌面端只有 RX6600 及以上、RTX3050 及以上、Intel 12 代核显支持
    不过 av1 软解的效率比 b 站的那个 wasm 软解 hevc 的效率高很多
    还有,软解不代表只能利用 CPU 。有一些解码的方法,是利用 CPU 和 GPU 里的流处理器一起解码,可以有效降低 CPU 的负载
    systemcall
        63
    systemcall  
       2022-08-05 20:48:44 +08:00
    @ColorfulBoar #36
    视频解码有很多方法的,可以全程用 CPU 软解,可以把部分计算丢给 GPU 的流处理器,也可以全程用 GPU 的专门的解码电路
    chroma 的 upscaling ,是可以用 video decode 的部分来做的,也可以用流处理器或者 CPU
    假如视频的分辨率和实际显示的分辨率不一样,也是要额外的处理,这个时候也可以选择用 CPU 或者 GPU ,GPU 的话有些是有专门的硬件,但是 PC 上一般还是用的流处理器吧
    还有 HDR 和 SDR 之间的映射,很多种方法,往深了说其实 Windows 一大堆的问题,Chrome 也是毛病一堆
    还有,根据 DXVA Checker 和维基百科等处的信息,GTX 650 TI 就开始支持 HEVC 4k 了
    但是 HEVC 10bit 是 GTX 950 开始
    Intel 差不多,AMD 落后很多
    但是 AMD 在 GCN 时代,显卡内部有专门的电路,可以对画面进行插帧,效果还不错。这个用 CPU 来处理的话,负载可不低
    moyunhai
        64
    moyunhai  
       2022-08-06 16:07:49 +08:00
    可是,bilibili 不是有官方 mac 端吗?为什么要用浏览器呢?
    cccb
        65
    cccb  
       2022-08-06 17:13:50 +08:00
    2020 macbook Air m1 + Macos 12.5 + Chrome 104 最新稳定版

    按照本帖内部提到的所有方法(带参数启动,强制退出,清楚缓存,修改 UA 等)都尝试了一遍 还是没能成功切换 HEVC

    这个是不是对 M1 无效啊 UA 工具也只有 Intel 对 UA 没有 m1 的
    ililu
        66
    ililu  
    OP
       2022-08-06 18:41:18 +08:00
    @cccb 本人使用的 m1 macbook pro 14,是不是你操作上有错误
    f165af34d4830eeb
        67
    f165af34d4830eeb  
       2022-08-06 18:43:49 +08:00
    @moyunhai #64 那个客户端体验稀烂,可以参考 t/854398 。而且网页端还能用 js 解锁番剧,不需要挂梯子。
    f165af34d4830eeb
        68
    f165af34d4830eeb  
       2022-08-06 18:50:01 +08:00
    @systemcall #63 AMD Fluid Motion 在当年是真的补帧神器,可惜 RDNA 给砍了。
    cccb
        69
    cccb  
       2022-08-06 20:44:06 +08:00
    @ililu 刚刚检查 Chrome 浏览器设置 发现设置系统使用硬件加速模式(如果可用) 选项是关闭的。我开启并重新操作之后,能正常使用 Hevc 硬件解码了,感谢
    lslqtz
        70
    lslqtz  
       2022-08-07 00:22:11 +08:00
    @ColorfulBoar
    1. 「所谓硬解,即指使用 GPU 内 [专用于解码的芯片] 来处理解码工作,由于 GPU 多核心低频且专一的优势,在解码视频时发热和功耗显著低于 CPU 。」
    半对半错吧。

    2. 「遂观察其实现逻辑,发现 Windows 的硬解实现逻辑与 macOS 完全不同」
    VideoToolBox 是 Apple 的专有 API ,且 macOS 下无任何其它 API ,硬解实现逻辑必定不同,没有任何问题。

    其它不予评价。
    lslqtz
        71
    lslqtz  
       2022-08-07 00:25:07 +08:00
    @longbye0 新设备支持新编码,可以获得更高画质,还是比较合理的。
    你可以说 H264 码率给的应该比 HEVC 要高,而不是 HEVC 码率应该给的比 H264 低,这不应该是用户的思路。

    另:我比较在乎的是有没有 DRM 支持。
    Slurp
        72
    Slurp  
       2022-08-07 03:18:56 +08:00
    @f165af34d4830eeb 本质上,所谓 js 解锁番剧,不过是别人帮你套了一层代理… 自己做个 bilibili API 和视频分流,是一样的效果。而且把 cookie 交给别人,心安吗?
    f165af34d4830eeb
        73
    f165af34d4830eeb  
       2022-08-07 11:51:16 +08:00 via iPhone
    @Slurp #72 当然要用自建云函数 /代理,用别人的确实有 cookie 泄漏的风险。但是 js 解锁我觉得确实比开代理软件分流更方便,而且还能自己选择 cdn
    moyunhai
        74
    moyunhai  
       2022-08-09 18:18:32 +08:00
    @f165af34d4830eeb 并没有稀烂啊,我是 m1 macbook air 用起来很安静啊,看了下耗电也很正常啊,系统显示原生支持 m1
    neiltroyer849
        75
    neiltroyer849  
       2022-08-31 18:02:44 +08:00
    今天新版的 Chrome Mac 105 了还是要参数才能开 HEVC 选项,有点无语
    cccb
        76
    cccb  
       2022-08-31 19:09:27 +08:00
    @neiltroyer849 +1 还是得带参数启动
    ililu
        77
    ililu  
    OP
       2022-09-11 21:09:45 +08:00
    @neiltroyer849 我看有些人已经不用启动参数了,说明这东西在灰度测试,你要带参数启动说明还没灰度到你
    ililu
        78
    ililu  
    OP
       2022-09-11 21:12:12 +08:00
    @neiltroyer849 我试了下,我已经不用启动参数了
    shikkoku
        79
    shikkoku  
       2022-09-15 15:08:26 +08:00
    刚刚新装 105 ,要启动参数。不然 gpu 信息没有 hevc 。
    neiltroyer849
        80
    neiltroyer849  
       2022-09-28 13:44:34 +08:00
    更新:新推出的 106 stable 应该是完全开放了。不用参数也有 HEVC 了
    liuyinltemp
        81
    liuyinltemp  
       2022-10-17 09:33:37 +08:00
    mac m1 上 safari 我看 B 站是支持 hevc 的,但是 edge 更新到 106 还是不行,mac 上 safari 插件太少,感觉不如 edge 好用
    liuyinltemp
        82
    liuyinltemp  
       2022-10-17 09:33:56 +08:00
    m1 下 edge 有办法开启 hevc 吗?
    Microi
        83
    Microi  
       2023-04-05 12:38:13 +08:00
    @XiaoBaiYa #47 我也遇到这个问题了,请问你解决了吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2692 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 14:16 PVG 22:16 LAX 07:16 JFK 10:16
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86