游戏直播中,玩家经常需要观看其他玩家屏幕共享的游戏画面。本文介绍在这种场景下如何调节屏幕共享视频流的帧率、分辨率、码率值,以提升玩家观看游戏直播的体验。
在 Android 和 iOS 平台上,声网建议你进行如下操作实现通过屏幕共享共享游戏画面:
setVideoEncoderConfiguration
方法设置屏幕共享视频流的视频编码属性。startScreenCapture
开启屏幕共享,并通过 ScreenCaptureParameters
设置屏幕共享视频流的视频编码属性。详情请参考屏幕共享(Android)和屏幕共享(iOS)。
你需要依据不同游戏场景类型设置不同的视频属性。总体的调参思路:根据游戏画面变化的快慢调节帧率,根据游戏画面的精细程度调节分辨率。同时考虑到帧率和分辨率的提升/降低会带来像素数的增加/减少,你需要相应地调节码率。
请参考如下图表判断你的游戏场景类型,并使用对应的视频属性推荐值。
游戏场景 | 画质档位 | 视频帧率 (fps) | 视频分辨率 | 视频码率 (Kbps) |
---|---|---|---|---|
场景 1: 复杂游戏 | 流畅 | 24 | 640 × 360 | 1800 ~ 2200 |
高清 | 24 | 840 × 480 | 2600 ~ 2800 | |
场景 2: 单一游戏 | 流畅 | 10 | 840 × 480 | 800 |
高清 | 10 | 1280 × 720 | 1400 | |
场景 3: 较复杂的高帧游戏 | 流畅 | 24 | 840 × 480 | 1400 ~ 1600 |
高清 | 24 | 1280 × 720 | 2000 ~ 2200 | |
场景 4: 较复杂的低帧且细节丰富游戏 | 流畅 | 15 | 840 × 480 | 1000 ~ 1200 |
高清 | 15 | 1280 × 720 | 1600 ~ 1800 | |
场景 5: 较复杂的低帧且细节单一游戏 | 流畅 | 15 | 640 × 360 | 800 ~ 1000 |
高清 | 15 | 840 × 480 | 1400 ~ 1600 |
场景 1 的主要特点为游戏画面变化程度非常大。典型代表为神庙逃亡、地铁跑酷等跑酷类游戏和赛车类游戏。这类游戏所需帧率较高,如 24 fps。
场景 2 的主要特点为游戏画面变化程度非常小。典型代表为愤怒的小鸟、贪吃蛇大作战等游戏。这类游戏所需帧率最低,如 10 fps。如果设为流畅档时,丢失了一些游戏边框细节,你可以设为高清档。
场景 3 的主要特点为游戏画面变化程度中等,且为高帧游戏。典型代表为和平精英等枪战类游戏。这类高帧游戏往往画面细节丰富,因此所需帧率和分辨率都较高,如 24 fps 和 1280 × 720。
场景 4 的主要特点为游戏画面变化程度中等、且为画面细节丰富的低帧游戏。典型代表为王者荣耀等 MOBA 类游戏。这类游戏所需帧率较低、所需分辨率较高,如 15 fps 和 1280 × 720。
场景 5 的主要特点为游戏画面变化程度中等、且为画面细节不丰富的低帧游戏。典型代表为植物大战僵尸等塔防类游戏、捕鱼类游戏。这类游戏所需帧率较低、所需分辨率较低,如 15 fps 和 840 × 480。