云游戏技术专题全层级14 / 30 已发布

云游戏画质主观评估方法论与用户测试体系

· 0 分钟阅读
云游戏画质主观评估方法论与用户测试体系 When PSNR Says "Great" and Players Say "Blurry" — 云游戏技术专题

云游戏画质主观评估方法论与用户测试体系 When PSNR Says "Great" and Players Say "Blurry"

为什么“好不好看”这件事,值得单独立一套尺子

先讲个我亲身经历的场景。某次版本评审,投屏上挂着一条漂亮的 VMAF 曲线,全程 95 分往上,工程师拍拍胸脯说这版的画质比上个版本提升明显。当天晚上社区群里炸了,玩家截图刷屏:“这版本糊成一片,草地像抹了黄油。”

两边都没说谎。指标确实涨了,玩家的眼睛也确实在受罪。问题出在:我们拿影视行业传下来的尺子,去量一个完全不同的东西。

云游戏这个行当有个很奇怪的现象:所有人都在聊编码、聊 ABR、聊超分、聊边缘节点,这些技术章节随便拎一个出来都能写五千字;但真正决定“这套技术到底成不成功”的那个判据——“玩家觉得画面好不好”——反而长期停留在一种很含糊的状态里。要么用几个视频指标糊弄过去,要么干脆靠“内部几个人看着还行”。

我一直觉得,画质评估是云游戏所有技术工作的结算口。你调编码器、你上 AI 超分、你做帧级自适应码率、你优化丢包恢复,这些工作最后都会汇到同一个问题上:玩家在这一帧画面里,看见了什么,感觉怎么样。如果这个结算口是坏的,前面所有的优化都可能是在错误的方向上狂奔,而且跑得越快错得越远。

打个不太好听但很贴切的比方:用 PSNR 评估云游戏画质,就像用体重秤评估一个人的身材。体重当然是一个真实存在的数字,秤也没坏,但它跟“这个人看起来好不好看”之间,只存在一条非常松散的相关性。你要是拿它当唯一 KPI,最后养出来的很可能是一个体重完美但形销骨立的人——也就是我们常说的“糊但平滑”型画面。

这篇想干的事,是把云游戏画质主观评估这件事,从“验收环节”拉回到“设计环节”。我们会拆开看:客观指标为什么在游戏内容上系统性失真;云游戏的“画质”到底应该拆成几个维度;一套真正可落地的主观测试流程长什么样;以及最重要的——测出来的分数怎么反过来变成编码器和调度器的参数。

顺带说一句,这篇和本系列的 [02] 编码、[06] ABR、[07] 超分、[09] 抖动丢包是咬合关系。那几篇讲的是“怎么把画面做出来、送过去”,这篇讲的是“怎么知道你做得好不好”。缺了这一块,前面几篇的优化就都成了没有仪表盘的飙车。

第1层:客观指标为什么会在游戏画面上集体说谎

要先说清楚一件事:PSNR、SSIM、VMAF 都不是坏东西,它们在各自的战场上立过功。PSNR 陪着视频编码走了三十年,SSIM 当年是对 PSNR 的一次重要修正,VMAF 更是 Netflix 拿真实用户打分数据训练出来的工程杰作。问题不在于它们不准,而在于它们准的那个世界,跟游戏不是同一个世界。

先聊 PSNR。它的世界观极其朴素:把两张图的像素逐个相减,误差平方求和,再取对数。翻译成人话就是——所有像素的错,一律平等。可人眼从来不是这么工作的。人眼对平坦区域里 2% 的亮度变化几乎无感,对锐利边缘处一点点毛刺却极其警觉,因为边缘恰恰是大脑用来识别物体轮廓的信息富矿。

这个差异会导致一个很具体的后果。编码器在低码率下面临一个选择:是把细节整体抹平(画面变软但干净),还是保住锐度但产生振铃和块效应(画面锐利但有噪点)。前一种做法的误差分布均匀、整体能量低,PSNR 会更高;后一种局部误差大,PSNR 掉得厉害。于是指标系统性地把编码器往“抹平”的方向推。而玩家一眼就看出来:糊了。

第二个坑是面积加权。不管是 PSNR 还是 SSIM、VMAF,最终都会把全屏的误差汇总成一个数。HUD、字幕、背包界面里的物品名、策略游戏单位头顶的血量数字——这些加起来可能只占屏幕面积的百分之三到五。它们糊成一团的时候,全局指标几乎纹丝不动。但对玩家来说,这些元素是他一百 percent 时间都在盯着看的东西。我见过太多团队在这里翻车:远景优化得挺好,一打开菜单发现字全糊了,观感直接崩盘。

第三个坑在暗部。暗场景里的色带(banding)是最典型的例子。因为暗部本身亮度低,绝对误差也小,PSNR 对一圈一圈的“等高线”几乎无感。可人眼在暗环境下对亮度渐变的敏感度是极高的,尤其在恐怖游戏、太空题材、夜战潜行这类场景里。一条色带毁掉的沉浸感,比整个远景糊掉还严重。

第四个坑,也是最要命的一个:时域。逐帧指标天生看不见帧与帧之间的关系。而云游戏里最刺眼的画质问题,恰恰全是时域问题——ABR 切换时画面突然糊一下再变清晰的那种“呼吸感”,I 帧和 P 帧之间质量波动造成的闪烁,丢包恢复那一瞬间的糊块。这些用单帧指标一个都测不出来。

第五个坑是训练集偏差,主要打在 VMAF 身上。VMAF 的几个核心特征——细节损失、信息保真、运动能量——本质上是拿自然视频数据学出来的权重。而游戏画面是计算机生成的:几何边缘锐利到数学意义上的完美,大面积纯色块,粒子特效带来高频噪点,很多游戏还专门加了胶片颗粒做质感。这些内容的统计特性和自然视频差得很远。VMAF 在这些内容上的判断,是在用影视的审美标准给游戏打分。

画面现象PSNR 反应VMAF 反应玩家真实感受失配程度
整屏轻微模糊(草地、远景被抹平)轻微下降,可能只掉 0.5dB小幅下降 1-2 分“一眼糊,没法玩”严重
HUD 文字边缘振铃明显下降(局部误差大)明显下降可能根本没注意反向失配
暗部色带几乎无变化轻微变化沉浸感被彻底破坏严重
帧间闪烁 / ABR 呼吸测不到测不到最容易被投诉的问题完全失效
粒子特效被吞(爆炸、烟雾)中幅下降中幅下降“这一下不够爽”中度
胶片颗粒被压平反而上升(噪点少了)上升“这游戏看着没质感了”反向失配

看清楚这张表你会发现,问题不是“指标不够准”,而是指标和感知在某些维度上方向相反。这比单纯的噪声可怕多了。噪声你可以靠多测几次平均掉,方向错了你越优化越糟。

第2层:把“画质”拆开——云游戏至少是六个维度

既然一个总分靠不住,那就拆。我在项目里推行的做法是把“画质”拆成六个可以分别打分的维度。这个拆法不是学术分类,是从“玩家会在哪儿骂人”倒推出来的。

细节保真:纹理、植被、毛发、远景建筑。 RPG 和开放世界的主战场。这个维度最吃码率,也最容易被编码器“抹平”。

边缘与文字清晰度:HUD、字幕、小字号 UI、菜单。这是最容易被指标体系忽略、却最容易被玩家挂在嘴边的一项。文字量大、字号小的游戏(策略、卡牌、CRPG、文字冒险)在这个维度上几乎零容忍。

时域稳定性:闪烁、呼吸、ABR 切换、拖影。云游戏特有的重灾区,因为本地游戏不存在“码率在变”这回事。

暗部与色带:黑位是否压死,渐变是否出现等高线。恐怖、太空、夜景潜行专属痛点。

特效完整性:粒子、体积雾、光效、后处理是否被编码器当成冗余信息吃掉。这个维度直接关系到“爽不爽”,动作游戏和射击游戏的核心体验之一。

交互耦合的感知:转视角瞬间的清晰度保持、高速运动中的可辨识度、以及画质与操控延迟混合产生的整体“跟手感”。这一项最特殊,因为它必须边玩边评,光看录屏是评不出来的。本系列 [03] 那篇讲延迟图谱时提过一个现象:玩家经常把延迟的不适感归因成“画质差”,因为人的感知是个懒会计,会把所有不舒服记在同一个科目上。这一维度就是专门用来捕捉这种串味的。

拆完维度,有个特别重要的推论:同一个云游戏平台,在不同用户眼里的“画质”可能是完全不同的东西。

这一点 Xbox Cloud Gaming 的案例讲得最清楚。这个平台上线之初是 720p,主打手机小屏场景,社区的反馈是“能接受,甚至有点惊喜”。后来升到 1080p,Still 很多人说好用。但只要你把同一路流投到一台 65 寸电视上,立刻就是另一幅光景——满屏的“糊”“像蒙了层雾”“文字看不清”。同样一套码率参数,同样的编码器配置,评价完全相反。

为什么?因为感知清晰度取决于角分辨率,不是分辨率。手机 6 寸屏,你拿在手上三十厘米外看,每个视角度对应的像素密度非常高;65 寸电视三米外看,同样的 1080p 被摊薄到几倍的视野面积上。同一个像素错误,在大屏上被放大了好几倍地进入你的视野。Xbox 云游戏长期被吐槽画质,很大一部分原因在于它的用户期望被“我在玩 Xbox 主机”这件事拉高了——玩家默认这应该是主机画质,实际拿到的是手机档的画质。期望和现实的落差,本身就是画质评估必须测量的一部分。

微软后来几年里持续提升码率上限、优化编码配置,社区的对比视频也越来越正面。但我更想说的是这件事给评估体系留下的教训:设备矩阵是必选项,不是可选项。你只在一种屏幕上测,测出来的结论只对那种屏幕有效。手机、平板、笔记本、电视、投影——每一档的角分辨率差一到三倍,感知结果能差出整整一个质量等级。

再往下一层,还有个更反直觉的结论:玩家不怕 720p,怕的是 1080p 和 720p 打架。

一个稳定的 720p 流,玩家看两分钟就适应了,大脑会自动完成“这是这个平台的画质水平”的心理校准。但一路在 1080p 和 720p 之间来回横跳的流,每一跳都是一次“出戏”——你刚从沉浸里出来,画面糊了一下,你注意到它糊了,然后它又清晰了,你又得重新进去。出戏的次数,比画质的绝对水平更能决定留存。

所以在我们那套维度里,“时域稳定性”的权重应该被显著抬高,尤其是在 ABR 策略比较激进的产品里。这一条和 [06] 那篇讲的帧级自适应 vs GOP 级自适应是直接对着的:帧级自适应能榨出更平滑的平均质量曲线,但也更容易制造肉眼可见的清晰度抖动。两边要一起权衡。

第3层:主观测试怎么搭——实验室方法搬到游戏上要改三处

主观画质评估不是新东西。ITU-R BT.500 和 ITU-T P.910 这两份标准,把视频质量的主观测试方法规范得相当细:单刺激法、双刺激法、成对比较法、绝对类别评分法、九级量表、拉丁方排列、受试者筛选……影视行业照着做几十年了。

但这套方法直接搬到云游戏上,会在三个地方卡住。我给这三处改造起了名字,叫“从旁观到上场”。

第一处:必须在“玩”的状态下评分,不能只看。

视频质量评估里,受试者是被动的观众,坐着看就行。游戏不是。玩家在主动操控,他的注意力分配完全不同——他会盯着准星、盯着敌人、盯着地图边缘,而不是均匀地欣赏整幅画面。最关键的是,很多画质问题是只在交互中才暴露的:转视角时远处纹理的重建质量、快速移动时编码器对运动的补偿效果、开镜瞬间画面中心与边缘的清晰度落差。这些问题录成视频给受试者看,他可能根本注意不到。

实操上的做法是:受试者拿着手柄或键鼠,按照一份写好的场景脚本走一遍,每段结束后立刻打分。现场同步录屏和录人(用摄像头拍受试者的反应),后期对照分析。别心疼这点工作量,你会从“玩家皱眉的那一瞬间”里挖出比分数多得多的信息。

第二处:场景必须脚本化、可重复。

自由玩是最好的沉浸,最差的测量。A 玩家今天跑了十分钟野外,B 玩家在城里逛了十分钟,两个人看的根本不是同一批像素,分数放在一起比较毫无意义。

我的建议是每个测试版本准备四到五段固定脚本,每段六十到九十秒,覆盖不同的压力源:一段开阔场景跑图(考细节保真和远景)、一段战斗特效爆发(考特效完整性和时域)、一段暗场潜行或夜间场景(考暗部色带)、一段密集 UI 操作比如背包和技能树(考文字清晰度)。脚本要精确到“往前走几步、往哪转、开不开镜”,写成一页纸的指令卡,受试者照着做。

第三处:评分方式要组合,不能只用一种。

单一量表最大的问题是分辨率不够。九级量表听起来很细,但玩家实际用起来基本只在 3、4、5、6 这几档之间晃,而且每个人对“4 分”的锚定完全不同。解决办法是三种方法叠着用:

绝对类别评分(ACR)给你一个跨版本的粗粒度可比数据;二元可接受门槛(“这段你能接受吗?能/不能”)给你一条清晰的红线——实测下来这条二元题的信息量比九级量表还大,因为玩家能忍受 3 分,但不接受 2 分,而均分根本反映不出这条断崖;成对比较(两两对比)负责捕捉细微差异,当两个版本的 ACR 均分打平的时候,强制二选一往往能挖出真实的偏好。

还有个容易忽略的细节:锚点样本。测试开始前,先给受试者看两段固定不变的样本——一段明显很好的,一段明显很差的,作为他个人评分的校准基准。没有锚点,二十个人会给出二十套评分标准,你的数据就是二十个人的主观意见平均值,毫无意义。

最后是人的问题。ISO 那边建议十五人起步,游戏我建议二十到三十人。原因不是游戏更复杂,是玩家群体的内部方差太大了——有人对帧率极度敏感但对色带完全无感,有人反过来。而且你必须保证样本里有一批“高敏感者”,因为他们才是投诉的主力。实操上可以用一段已知退化程度的样本做前测,把受试者按敏感度分个层,保证高敏感者占比三成左右。你要听的不是平均用户的意见,是那个会在 Discord 里连发三条长帖的人的意见。

测试设计参数推荐取值理由
受试者人数20-30 人,高敏感者占比 ≥ 30%玩家内部方差大,且投诉主力是高敏感人群
单场时长45-60 分钟(含锚点 5 分钟、休息 5 分钟)超过一小时注意力衰减,评分漂移严重
场景脚本数量4-5 段,每段 60-90 秒覆盖细节/特效/暗部/文字四类压力源
评分方法ACR 九级 + 二元可接受门槛 + 版本间成对比较三种方法互补,粗粒度可比 + 红线 + 细粒度偏好
版本呈现顺序拉丁方排列,版本号对受试者隐藏消除顺序效应和品牌偏见
锚点样本固定 2 段(优/劣各一),全程不变校准个人评分尺度漂移
设备矩阵至少覆盖手机、笔记本、大屏电视三档角分辨率差异可造成一个质量等级的落差
数据报告报告均值 + 置信区间 + 10 分位尾部值平均值掩盖最差体验,尾部才是投诉来源

第4层:从分数到参数——评估体系真正的出口是调度

如果一套评估体系最后的产物是一份 PDF 报告,那它的价值有限。真正有价值的画质评估,输出应该直接变成工程侧的旋钮和开关。

这里的关键动作,是把主观分数翻译成质量门槛,再把门槛翻译成工程动作。举个例子:文字清晰度这一维度,我们测得“可接受”的门槛大概在五分制的 3.8 分左右。那接下来要问的就是:要保证 1080p 分辨率下小字号 UI 达到 3.8 分,最低码率是多少?在 H.264 和 AV1 下分别是多少?分辨率降到 900p 时需要补多少码率才能守住这条线?

这些问题一旦有了答案,ABR 的目标函数就有内容可写了。现在很多产品的 ABR 逻辑其实是纯带宽驱动的——有多少带宽就给多少质量,带宽掉了就降档,完全没有“什么内容在什么档位下会跌破可接受线”的概念。结果就是:一段文字密集的菜单界面和一段开阔草原跑图,被分配了同样的码率预算,前者糊成一片,后者还凑合。有了维度评分和内容分类,码率预算才能按需分配。

不同游戏类型的权重差异大到什么程度?我给一组实测下来的参考:竞技射击和格斗类,时域稳定性和交互清晰度的权重能占到一半以上,分辨率降一档、码率拉满反而是更优解,因为这类玩家对帧间一致性的敏感度远超对静态细节的敏感度。策略、卡牌、CRPG 这类文字密集型,文字清晰度一项就该占到四成,其它维度全加起来不如它重要。开放世界 RPG 是细节保真和远景的主场。恐怖和太空题材,暗部色带的权重要单独拎出来,不然一定会翻车。

聊到这里,GeForce NOW 这个案例特别值得拿出来说。它走的是另一条路:把码率上限的选择权交给玩家。Ultimate 档最高能开到 4K 120 帧,码率上限拉到七十多 Mbps,同时提供自定义码率滑块让用户自己在十到七十多之间调;上了 AV1 编码之后,低码率段的画质提升尤其明显,而低码率段恰恰就是“糊”最刺眼的区间。

这个设计在评估体系的语境下特别有意思。它其实是在承认一件事:画质偏好是主观的,而且和网络环境强耦合。同一个码率,给到一个千兆光纤的用户是浪费,给到一个 Wi-Fi 信号在客厅角落的用户就是灾难。与其用一个全局的最优解去猜所有人的偏好,不如给一个旋钮让用户自己校准——你觉得糊就往上拉,你觉得卡就往下调。这是一种把主观性外包出去的产品设计。

当然它有代价。滑块把“调参”这件事甩给了用户,大部分玩家根本不知道码率是什么,他们只会觉得“这平台有时糊有时不糊,很玄学”。而且高码率档对网络的要求很硬,一旦超出承载能力,卡顿带来的体验损失比糊严重得多——这也是本系列 [09] 那篇反复强调的:抖动和丢包造成的是“断裂”,画质下降只是“变差”,断裂永远比变差更致命。所以这条路子本质上是把选择权和风险一起交给了用户,不是所有人都吃这一套。

最后强调一点:码率是用来买“不出戏”的,不是用来买分数的。我们的目标不是让 VMAF 涨到 98,是让玩家在整局游戏里一次都没有注意到“画面”这个东西。当玩家开始讨论画质的时候,你就已经输了。

三张表:评估配置表、类型权重表、门槛动作映射表

下面这三张表是我在项目里反复迭代后的版本,可以直接拿去改改用。别当圣经,当起点——每个产品的游戏组合和用户结构都不一样,权重一定要自己校准。

表一:六维度评估配置表(把“画质”翻译成可测量的题项)

维度触发场景脚本主观题项(五分制)客观代理指标可接受门槛
细节保真开阔地形匀速跑图远景和多层纹理是否清晰可辨VMAF 局部窗口均值(远景区域裁剪)≥ 3.5
边缘与文字打开背包、技能树、地图小字号文字是否一次读出、无重影文字区域 SSIM + 边缘锐度统计≥ 3.8
时域稳定性连续跑图 60 秒不变换场景这段时间画质是否有让你注意到的变化帧间质量方差、切换事件计数≥ 3.6,切换次数 ≤ 2 次/分钟
暗部与色带夜间潜入或太空场景暗部渐变是否出现圈状色带暗部区域亮度直方图跳变检测≥ 3.7
特效完整性连续触发大招/爆炸/烟雾特效的层次和体积感是否保持高运动区域 VMAF + 码率瞬时峰值≥ 3.4
交互耦合感知高速转视角、开镜、快速移动操控时画面的可辨识度和跟手感无单一指标,需结合延迟测量≥ 3.5

表二:游戏类型权重表(同一套打分,不同游戏算总分时权重完全不同)

游戏类型细节文字时域暗部特效交互
竞技射击 / 格斗10%10%25%10%15%30%
策略 / 卡牌 / CRPG15%40%15%10%5%15%
开放世界 RPG30%15%20%15%10%10%
竞速 / 体育15%5%30%10%15%25%
恐怖 / 太空 / 夜景20%10%20%35%5%10%
动作 / 冒险20%10%20%10%25%15%

表三:门槛跌破时对应的工程动作(评估体系真正的输出)

跌破的维度优先动作次选动作不建议的做法
文字清晰度保持分辨率不降,优先砍码率以外的开销(如提高 GOP 中的 I 帧密度)启用文字区域 ROI 增强编码降分辨率保码率(字会更糊)
时域稳定性把 ABR 的切换阈值抬高,宁可长时间停在低档也不来回跳切换时加渐变过渡,避免硬切追求平均质量最优的激进切换
暗部色带提升暗部量化精度,牺牲部分高光细节编码前加轻微抖动噪声打散色阶整体提码率(性价比极低)
特效完整性识别特效爆发帧,做短时码率冲刺降低特效帧的 GOP 长度全局均匀加码率
细节保真启用超分补偿(对应本系列 [07])按内容类型调整量化参数无差别提分辨率

初级速览 vs 进阶深挖:两条通往同一件事的路

初级用户速览(十分钟版)

如果你只记住五句话,记这五句。一,PSNR 和 VMAF 是影视的尺子,量游戏会系统性地偏——尤其对“整屏模糊”太宽容,对“边缘毛刺”太严厉。二,画质不是一个数,至少是六个维度:细节、文字、时域、暗部、特效、交互,每个维度敏感的人和敏感的内容都不一样。三,测试必须边玩边评,光看录屏会漏掉一半问题。四,玩家不怕低画质,怕画质在变,稳定性比绝对水平更重要。五,设备矩阵别省,手机和大屏电视的结论可能完全相反。

如果还想再进一步,加一条:报告数据的时候,除了均值一定要看最差的那 10% 用户。你的均分是给老板看的,你的尾部是给客服看的。

进阶深入(怎么在自己团队里搭起来)

假设你是一个十人左右的团队,没有专门的用研,预算也有限。可行的路径是分三步走,每步两三周。

第一步,先把场景脚本和题库建起来。选你产品里最有代表性的四段玩法,写成指令卡,配一份固定的评分问卷。这一步几乎零成本,只需要一个策划加一个 QA 花三天。做完之后你就有了一个可以反复用的“画质体温计”。

第二步,跑第一轮基线测试。找二十个真实玩家,远程也行,让他们在自己家设备上按脚本玩,全程录屏加录脸,结束后填问卷。远程测试的信度不如实验室,但成本只有十分之一,而且设备多样性反而更好——实验室里那台统一的显示器,恰恰是最不真实的环境。这一轮的目的是建立基线分布,知道你的产品现在处于什么水平,以及哪些维度的方差最大。

第三步,把它接进版本流程。每个大版本跑一次精简版(十人、两段脚本、只测 ACR 加二元门槛),重点版本跑一次完整版。同时把客观指标的监测做成常态化的,但只用来看趋势和抓异常,绝不用来做验收判决——记住那条原则:客观指标是哨兵,主观评分是法官。

还有一件容易被跳过的事:把评估结果写进需求文档。别让它停留在测试报告里。比如“本季度目标:文字清晰度维度从 3.4 提升到 3.8”,这是一个可以被工程侧认领的目标,比“提升画质”这种话有用一百倍。

行业争议与六个真实的坑

先说一个行业级的争议案例,Stadia。

2019 年 Stadia 上线的时候,主打卖点之一就是 4K 60 帧 HDR 加 5.1 环绕声,最高码率大概在三十多 Mbps。宣传物料上写的是 4K。后来 Digital Foundry 这类做像素级分析的媒体测出来,不少标称 4K 的游戏实际渲染分辨率明显低于 4K,是从更低的分辨率上采样上去的——比如《荒野大镖客 2》就被测出实际渲染在 1440p 一档。

这事严格说不算造假,上采样是行业通行的做法,主机上到处都是。但它暴露了一个评估体系层面的问题:当“标称分辨率”和“感知清晰度”被混为一谈的时候,整个行业的画质话术就失真了。玩家看到 4K 两个字,脑子里想的是“清晰”,实际拿到的可能是“柔和”。这种落差一旦被戳破,伤害的不只是一个产品,是所有云游戏画质宣传的可信度。Stadia 后来关停有很多原因,但“宣传的画质和体感的画质对不上”这一条,确实在早期消耗了大量信任。

对做评估的人来说,这个案例的启示很直接:如果你的测试只记录“分辨率档位”和“码率数值”,你永远测不出这种落差。你必须测感知清晰度,必须测上采样带来的软化和振铃,必须把“看起来像不像 4K”变成一个可以被评分的问题。

下面是我见过、也自己踩过的六个坑。

坑一:拿 PSNR 做版本回归的唯一指标。这是最经典的老实人陷阱。PSNR 涨了,你觉得优化成功,上线被骂回来。我早年就干过这事,做了一个月的编码调优,所有指标都在涨,玩家反馈是“越来越糊”。后来复盘才发现,编码器被指标驯化成了“宁可糊也要平滑”的形状。

坑二:在“看”的状态下打分。把录屏发给同事,让大家打分,然后得出“这版画质没问题”的结论。录屏丢掉了交互这一整个维度,而且录屏本身还经过了二次编码,等于在测量结果上又蒙了一层纱。

坑三:只报均值不报尾部。平均 4.2 分听起来很美,但如果有 15% 的用户在 2.5 分以下,你的产品在社区里的口碑就是那 15% 决定的。网络产品的体验分布是长尾的,画质评估必须看 10 分位。

坑四:把 VMAF 当真理。VMAF 是个好工具,但它的训练集是影视内容,它的版本之间分数不可直接比较,它对合成图形和 UI 的覆盖严重不足。可以用,但必须在你自己的游戏内容上重新校准,而且只看趋势不看绝对值。你要是跟老板说“我们 VMAF 96 分”,他大概率会以为你在说帧率。

坑五:完全不测时域。这是最普遍也最致命的。逐帧指标天然盲,团队又常常只抽几帧做对比图,导致“画质在跳”这个云游戏最独有的问题,在整条评估链路里完全隐身。

坑六:忽略音频。云游戏的“画质”体验里其实混着音频。音频码率被压得太狠,枪声发闷、环境音丢失,玩家会笼统地觉得“这平台体验不行”。音画同步的偏差更是如此——本系列 [29] 那篇讲视听同步时提过,正负三十毫秒是大脑的融合边界,超了就会觉得“怪”,但大多数人说不清怪在哪,只会说“画质不好”。

一句总结这六个坑:它们共同的结构是“用一个便宜的替代品,去测量一个昂贵的东西”。指标便宜、录屏便宜、均值便宜、抽帧便宜。而真实的玩家体验,恰恰藏在那些昂贵、麻烦、需要人坐在旁边看他一皱眉的地方。

FAQ

Q1:我们团队就几个人,没有用研也没有实验室,最低成本能做的主观测试是什么?

A:远程加录屏。找二十个真实玩家,让他们在自己家设备上按脚本玩,用系统自带录屏加手机前置摄像头拍脸,结束后填一份十分钟的问卷。总成本大概是一个人一周的工作量。信度确实不如实验室,但比“内部五个人看着还行”高出一个数量级。真实设备多样性带来的收益,甚至能抵消掉环境不可控的损失——实验室里那台统一配置的显示器,本来就不是玩家的真实环境。

Q2:能不能设计一个复合客观指标,直接替代主观测试?

A:可以做出一个复合分,但不能替代校准。做法是把多个指标按维度加权——文字区域单独算 SSIM、暗部区域单独算色带检测、时域单独算帧间方差,再按游戏类型权重合成。这个东西用来做日常回归监测很好用,跑得快、成本低。但它必须定期用主观数据重新校准,因为权重本身就是从主观数据里学出来的。指标是哨兵,主观评分是法官,哨兵可以天天站岗,判决还得法官来下。

Q3:VMAF 到底还能不能用?

A:能用,但有三条纪律。第一,只在趋势上用它——同一套内容、同一套参数下比较两个版本,看谁高谁低,别跨内容比绝对值。第二,在你的游戏内容上重新校准,至少验证一下它跟主观分的相关性,相关性低于零点七就别当主要依据了。第三,给它配上补充指标,特别是文字区域和暗部区域要单独看。VMAF 是个好员工,但别让他一个人做决策。

Q4:玩家说“糊”,我该怎么追问才知道到底糊在哪?

A:别问“哪里糊”,玩家答不上来。给选项。做成一道多选题加截图对照:“是远景建筑纹理不清(A)、是文字重影(B)、是整体像蒙了层雾(C)、是暗处出现一圈圈的色带(D)、是画面在动的时候会突然变糊一下(E)。”把六个维度翻译成玩家能看懂的画面描述,让他勾选。你会发现答案的分布非常集中,而且往往和你的猜测不一样。

Q5:画质测试里要不要把延迟一起测?

A:必须一起测,而且要在同一份问卷里问。因为玩家的感知是个懒会计,他会把所有“不舒服”都记在同一个科目上——延迟高了,他会说“画质差”;画面糊了,他会说“操作不跟手”。如果你分开测,你会得到两组互相污染的数据。本系列 [03] 那篇讲延迟测量体系时也提到过,感知延迟和感知画质在用户心智里根本不是两个独立的东西。同场测、同场问,再用交叉分析把两者拆开,这才是干净的做法。

最后留一个我一直觉得挺反直觉的观察:玩家骂“画质差”的时候,有相当一部分其实是在骂“不稳定”和“延迟”。真正因为绝对清晰度不够而流失的用户,比我们想象的少得多;因为画面忽好忽坏而出戏的用户,比我们想象的多得多。所以下次做画质优化,不妨先问一句:我们要提升的是天花板,还是地板?

以及一个我很想问同行的问题——你们团队的画质验收标准,是写在需求文档里的那一条,还是玩家 Discord 里刷屏的那一条?如果这两条不是同一条,那中间差的那段距离,就是这篇文章想填的坑。

文章标签
云游戏Cloud Gaming视频编码H.264H.265AV1WebRTC低延迟传输ABR 自适应码率GPU 虚拟化DLSS 云游戏FSR 云游戏
更多专题全部专题
觉得有价值?点赞或收藏支持内容持续产出。
← 返回专题:云游戏技术专题