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

腾讯视频的网页版为什么会如此卡顿?

  •  
  •   thinkershare · 265 天前 · 1450 次点击
    这是一个创建于 265 天前的主题,其中的信息可能已经有所发展或是发生改变。

    网速都是 300MB 的电信(家庭带宽)和 1000MB 的电信(企业带宽)

    • 台式机
      • Intel 13600K 主机(无独显)
      • Intel 12400 主机(无独显)
      • AMD 7840HS 主机(无独显)
      • Mac Mini M2 版本(无独显)
    • 笔记本
      • Surface Lpatop 3
      • MateBook 14

    1080P 偶尔会卡,4k 动漫几乎必卡,看一个 24 分钟左右的视频,中间必然会有 1/2 次卡住,其间 CPU/GPU 占用并不高,腾讯这破网页做的也太垃圾了,B 站的 8K 我看着都不卡,就它这个网页看视频几乎必卡。然后换成腾讯视频的 PC 客户端就一点问题没有,找了各种办法,也联系不到腾讯视频的客服人员。 各位有用腾讯视频网页端的没有,我这是个例吗?有什么解决办法没?

    34 条回复    2024-08-02 01:59:50 +08:00
    deno2h
        1
    deno2h  
       265 天前
    有没有可能是装了什么插件导致的
    thinkershare
        2
    thinkershare  
    OP
       265 天前
    @deno2h 没有,我浏览器只有少数几个安装了 GitZip for github 这个插件,其它机器没有任何插件。主要是只有腾讯视频网页会卡顿,另外 Windows 上面全部是最新的 Edge ,Mac 也是自带的 Safari
    cslive
        3
    cslive  
       265 天前
    把去广告的关了,腾讯视频暂停过一会必定导致 chrome 奔溃
    thinkershare
        4
    thinkershare  
    OP
       265 天前
    @cslive 我根本就没安装去软件的插件。
    thinkershare
        5
    thinkershare  
    OP
       265 天前
    去广告
    Berlino
        6
    Berlino  
       265 天前
    我也是,最近这段时间网页卡,PC 客户端也卡。
    thinkershare
        7
    thinkershare  
    OP
       264 天前
    @Berlino 我这里直接会卡死浏览器,见鬼了。
    只要不全屏,卡死的概率就很小,只要选择全屏看视频,就要高概率卡住。
    salmonwrap
        8
    salmonwrap  
       263 天前
    哈喽,这里是腾讯视频的开发者。
    请问下
    1. 具体是什么表现的卡顿?是视频缓冲还是页面卡死未响应?
    2. 以上 6 台设备均有卡顿的现象吗?

    可以在播放器上点击右键 -> 点击视频信息,弹出的面板中有一个“播放流水”字段,可以将这串流水号贴在这里,我们看下具体的情况,请放心这段 ID 不会包含个人信息
    thinkershare
        9
    thinkershare  
    OP
       263 天前
    @salmonwrap 等我晚上回去给你试一试。
    thinkershare
        10
    thinkershare  
    OP
       263 天前
    @salmonwrap 全部都有出想过,mac 上出现的概率最低。笔记本特别是 Surface Laptop 3 & MateBook 14(最新款) 这 2 台机器高频出现问题
    JackCh3ng
        11
    JackCh3ng  
       259 天前
    @salmonwrap 今天晚上看视频,发现 4k 一直报错,选了 1080p 之后再选 4k 直接弹需要客户端的弹窗,请问是认真的吗?网页以后不支持 4k 了?
    salmonwrap
        12
    salmonwrap  
       256 天前
    @JackCh3ng
    可以提供下上面提到的播放流水 ID ,1080p 及以上都是 HEVC 编码的,如果 Chromium 的硬解异常会被强制降级导致看不见 1080p 以上的清晰度,然后 4K 的话有单独做一个客户端的拉动所以是这个体验。
    salmonwrap
        13
    salmonwrap  
       256 天前
    @thinkershare 哈喽,你这个卡顿是什么样的卡顿呢?是那种画面掉帧还是就卡住缓冲了?
    JackCh3ng
        14
    JackCh3ng  
       256 天前
    @salmonwrap 感谢回复,刚刚用工作笔记本看了一下,发现没有弹窗了。
    但是家里的台式机昨天晚上还是有这个问题的,所以你的意思是网站会检测一下硬件,如果硬件有什么条件不符合就不会让选 4k 的选项,选了之后只会弹窗提示下载客户端,是吗?
    如果是这样的,想了解一下有可能是什么因素会导致网站检测硬件不符合 4k 播放要求,我电脑的情况是仅仅休眠开启之后,打开网站就无法播放 4k 了。
    暂时没办法提供播放流水 id 。
    thinkershare
        15
    thinkershare  
    OP
       256 天前
    @salmonwrap 我最近来香港了,估计要下周才回深圳,到时候发给你
    salmonwrap
        16
    salmonwrap  
       256 天前
    @JackCh3ng
    是的,这里有两重检测,第一个是你的浏览器到底是否有 HEVC 的硬解能力,第二重检测是在播放过程中是否高频解码异常/丢帧,如果有的话也会触发降级。最近确实发现丢帧的检测逻辑在休眠恢复的场景下有误触发的情况,目前已经在修复了。如果本身播放 4K 觉得不卡的话,可以清空一下 LocalStorage / 本地浏览数据和缓存,应该就可以恢复了,这里丢帧降级会有 24 小时左右的有效期,。

    另外就是如果播放 4K 频繁报错的话,不知道是使用的 Edge 还是 Chrome 呢? Edge 上最近数个版本似乎微软一直在调整这一块的东西,经常会出现一些 bug 。可以尝试用 Chrome 播放
    JackCh3ng
        17
    JackCh3ng  
       256 天前
    @salmonwrap 了解了,谢谢,我回去试试。是使用的 Chrome 播放。
    JackCh3ng
        18
    JackCh3ng  
       255 天前
    @salmonwrap
    你好,这是 Chrome 里的播放流水号
    dcc4b01e5bbf49de88accdf8f18c432e 。
    在 Chrome 里还是不行,只有客户端 4k 选项,选了之后弹下载客户端的弹窗。但是我试了用 edge 播放就可以有臻彩视听和 4k 超高清 sdr 选项了,选了之后可以正常播放。这是 edge 的播放流水号
    049d19f186423e4d2f32509c0084c614 。
    salmonwrap
        19
    salmonwrap  
       249 天前
    @JackCh3ng 抱歉这几天忘了回复

    如果 Chrome 还是有问题的话,可以看下是不是没打开硬件加速?理论上 windows 平台上,edge 的要求还高一些,需要有微软的 HEVC extension (目前 win10 不会自带,win11 看起来 OEM 版本都有包含)
    thinkershare
        20
    thinkershare  
    OP
       249 天前
    @salmonwrap 我昨天回家了,弄了个 4070 独显,发现没啥问题,不卡了。但是我的 MateBook 和 Surface 上的 Windows 11 的 Edge 的 4k 选项都找不到了,最高只有 1080P 可选了。
    salmonwrap
        21
    salmonwrap  
       249 天前
    @thinkershare 可以给个流水 ID 我看看。Edge 的话,你那边的硬件加速是开启的吗?
    JackCh3ng
        22
    JackCh3ng  
       249 天前
    @salmonwrap 硬件加速是打开的,但是因为之前有显示器闪屏的问题,所以我将浏览器的 Chrome://flags 中的 Choose ANGLE graphics backend 这个选项手动选中为 OpenGL 了,不知道是不是这个原因,目前没办法测试。
    salmonwrap
        23
    salmonwrap  
       249 天前
    @JackCh3ng 好的,我试试看
    salmonwrap
        24
    salmonwrap  
       249 天前
    @JackCh3ng 也可以在 about://gpu 页面中观察一下,Video Acceleration 中是否有包含 HEVC decoding
    JackCh3ng
        25
    JackCh3ng  
       249 天前
    @salmonwrap 好的,我回去看看
    JackCh3ng
        26
    JackCh3ng  
       249 天前
    @salmonwrap #24
    我对比了一下 edge 和 chrome 的 gpu 信息,chrome 里 Video Acceleration Information Decoding 下面一项都没有了。
    Video Acceleration Information
    ==============================
    Decoding :
    Encoding :
    Encode h264 baseline : 32x32 to 1920x1088 pixels, and/or 30.000 fps.
    Encode h264 baseline : 32x32 to 1088x1920 pixels, and/or 30.000 fps.
    Encode h264 main : 32x32 to 1920x1088 pixels, and/or 30.000 fps.
    Encode h264 main : 32x32 to 1088x1920 pixels, and/or 30.000 fps.
    Encode h264 high : 32x32 to 1920x1088 pixels, and/or 30.000 fps.
    Encode h264 high : 32x32 to 1088x1920 pixels, and/or 30.000 fps.
    Encode av1 profile main: 32x32 to 1920x1088 pixels, and/or 30.000 fps.
    Encode av1 profile main: 32x32 to 1088x1920 pixels, and/or 30.000 fps.

    还有一些我觉得重要的不一样的信息
    Chrome 里是这样的:
    Graphics Feature Status
    =======================
    * Canvas: Hardware accelerated
    * Canvas out-of-process rasterization: Disabled
    * Direct Rendering Display Compositor: Disabled
    * Compositing: Hardware accelerated
    * Multiple Raster Threads: Enabled
    * OpenGL: Enabled
    * Rasterization: Unavailable
    * Raw Draw: Disabled
    * Skia Graphite: Disabled
    * Video Decode: Hardware accelerated
    * Video Encode: Hardware accelerated
    * Vulkan: Disabled
    * WebGL: Hardware accelerated
    * WebGL2: Hardware accelerated
    * WebGPU: Hardware accelerated
    ……

    Problems Detected
    =================
    * GPU rasterization should only be enabled on NVIDIA, Intel, AMD RX-R2 GPUs with DX11+, certain QC devices+drivers or any GPU using ANGLE's GL backend.:
    ( http://crbug.com/1047002), ( http://crbug.com/1462800)
    Disabled Features: gpu_tile_rasterization

    * Some drivers are unable to reset the D3D device in the GPU process sandbox
    Applied Workarounds: exit_on_context_lost


    Edge 里:
    Graphics Feature Status
    =======================
    * Canvas: Hardware accelerated
    * Canvas out-of-process rasterization: Enabled
    * Direct Rendering Display Compositor: Disabled
    * Compositing: Hardware accelerated
    * Multiple Raster Threads: Enabled
    * OpenGL: Enabled
    * Rasterization: Hardware accelerated
    * Raw Draw: Disabled
    * Skia Graphite: Disabled
    * Video Decode: Hardware accelerated
    * Video Encode: Hardware accelerated
    * Vulkan: Disabled
    * WebGL: Hardware accelerated
    * WebGL2: Hardware accelerated
    * WebGPU: Hardware accelerated
    ……

    Problems Detected
    =================
    * Some drivers are unable to reset the D3D device in the GPU process sandbox
    Applied Workarounds: exit_on_context_lost

    上面主要是这两项 Canvas out-of-process rasterization 和 Rasterization 不一致,还有 Chrome 里多了一项
    * GPU rasterization should only be enabled on NVIDIA, Intel, AMD RX-R2 GPUs with DX11+, certain QC devices+drivers or any GPU using ANGLE's GL backend.:
    ( http://crbug.com/1047002), ( http://crbug.com/1462800)
    Disabled Features: gpu_tile_rasterization
    JackCh3ng
        27
    JackCh3ng  
       249 天前
    @salmonwrap
    Choose ANGLE graphics backend 将这个选项改回去就可以了,但是当初刚改这个选项的时候没有引起这个问题,不知道是不是 Chrome 更新引起的。
    JackCh3ng
        28
    JackCh3ng  
       249 天前
    @JackCh3ng 改回去又开始闪屏了,我太难了……
    JackCh3ng
        29
    JackCh3ng  
       249 天前
    @salmonwrap 你们这个没开硬件加速就不让看网页 4k 的限制是不是最近才加的啊,如果说我电脑之前硬件加速其实就没算开,但是我看 4k 也不卡啊,为啥要有这种限制啊。
    salmonwrap
        30
    salmonwrap  
       243 天前
    @JackCh3ng ANGLE 这个应该只影响类似 canvas 和图形渲染的部分,我查了一下没有看到 chromium 里这个跟 video decoding 有关联。不过如果你在 video decoding 里面确实看不到的话,说明硬解相关的能力都没有了。

    回答另外一个问题,腾讯视频的 1080p 以上清晰度( 4K 、臻彩、甚至 NBA 直播的高帧率)只有 HEVC 编码的,而 Google Chrome 下的 HEVC 解码是依赖设备本身提供的硬件解码器,也就意味着如果硬件加速关闭(配置或 driver 异常),Chrome 就丧失了 HEVC 解码能力。所以这个地方其实是从一开始,播放 4K 这些清晰度就强制要求硬件加速的。
    salmonwrap
        31
    salmonwrap  
       243 天前
    @JackCh3ng 方便提供一下 GPU 的型号和驱动版本么,我们看看有没有相同的环境测试一下。如果你没有特意去操作过硬件加速,我怀疑可能是驱动直接挂了,引起的硬件加速关闭。
    JackCh3ng
        32
    JackCh3ng  
       243 天前
    @salmonwrap
    NVIDIA GeForce RTX 4060
    驱动版本:31.0.15.5176
    thinkershare
        33
    thinkershare  
    OP
       229 天前
    @salmonwrap

    y4100m5bkg1
    播放流水
    d51a6efc6452bf1782efa2046127d956
    播放内核
    m3u8/hls.js (1.32.11-p2p-1.6.1)
    显示器信息
    2008*1188 / 2016*1344*1.25 (ext:false)
    love2328
        34
    love2328  
       143 天前
    @salmonwrap 开加速 ,打开腾讯视频就会 内存炸 , 浏览器 edge beta
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   845 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 20:56 · PVG 04:56 · LAX 12:56 · JFK 15:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.