Xbox Game Bar录制的视频在Apple设备上播放不正常的解决方法
TL;DR
⚠️ Warning: 修改注册表前记录备份原始值,如果出问题还能恢复!修改注册表务必谨慎!修改注册表务必谨慎!修改注册表务必谨慎!重要的话说三遍!
如果出现Windows Xbox Game Bar录制的视频在Apple设备上播放出现绿边或花屏的情况,可以尝试。
- Win + R输入
regedit
,打开注册表编辑器; - 左边目录依次定位到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\GameDVR
,打开后看右边; VideoEncodingResolutionMode
双击打开,将值改为0
;CustomVideoEncodingHeight
改为1080(十进制);CustomVideoEncodingWidth
改为1920(十进制);- 保存重启计算机,搞定。
奇怪的故障
Windows上Xbox Game Bar的录制功能很方便,但一直有个苦恼的问题困扰我,录制的视频在Apple设备(iOS, iPadOS, macOS)上播放不正常,表现为有一个位于下方和右侧的绿边以及视频闪烁花屏,但是预览图是正常的视频画面和绿框,大致长下面这样。
用Apple设备去看这个视频的信息,可以看到视频的长宽是2560x1440.
在我百思不解的时候,注视着这个预览图让我突然有了一个想法,感觉这个视频在“绿幕”上占的比例很特殊,我打开了Final Cut Pro X,新建了一个1920x1080的画面,然后把这个视频按100%的比例放在画面上,按左上角对齐的话发现正好完美地切掉绿边!
这意味着什么,意味着这个视频真实的分辨率其实是1920x1080,而不是2560x1440,应该是文件的metadata里有什么信息在Windows和Apple设备上的处理方法不一样,导致了后者的误解,用一个2560x1440的画面在播放它,缺少的部分用绿色填充成了绿框。
寻找原因
有了这个猜想后,我就开始寻找原因了。用Windows上的Potplayer打开这个视频的信息,发现了和Apple设备上矛盾的地方。
这里有Width
和Original width
两个不同的值,分别是2560和1920,这就和我们前面的实验结果吻合了——Apple设备按照2560x1440的分辨率去播放了一个1920x1080的视频,空余的地方出现了错误,用绿色填充成了绿框,但在Windows上就忽略了Width
信息,只用Original width
信息,也就是用1920x1080的画面去播放这个视频,没有出现这个故障。
找到了问题的原因,但解决的过程又出现了更棘手的麻烦——这个视频是Xbox Game Bar里录制的,Windows的设置界面里没有提供任何和分辨率有关的选项。
此事的转机出现在突然有一天,我的Xbox Game Bar里的录制按钮变成了灰色,没有任何提示信息,设置界面也是一切正常,但就是几个和录制相关的按钮全部无法点击(让我们一起说,谢谢微软,在bug中给我们了一个操作系统用🙄️),在试图找到解决方案的时候,我看到了这条帖子。
Is Windows 11 Xbox Game Bar Not Working? Try to Fix It! [MiniTool Tips]
按照其中修改注册表的方式修好了这个按钮变灰的问题,但与此同时它提到的这个GameDVR注册表路径里其他的一些选项引起了我的注意。
解决方案
⚠️ Warning: 修改注册表前记录备份原始值,如果出问题还能恢复!修改注册表务必非常小心,出错可能会导致非常严重的后果,谨慎且三思而后行!
我进行了一通的尝试,过程就不赘述了,我发现这个问题可以通过修改注册表里几个值解决。
按Win+R键,输入regedit
打开注册表编辑器,在左边依次寻找
1 | HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\GameDVR |
打开GameDVR目录下,右边出现一些键值,我们需要修改的是如下三项,如果没有可以在右侧空白处右键单击,选择新建 > DWORD(32位)值
手动添加:
- 对于
VideoEncodingResolutionMode
这个选项,双击打开它,将值改为0
,确定。此时再去用Xbox Game Bar录个视频,再用Potplayer打开文件信息,发现不再有Width
和Original width
两个不同的值了,但此时的视频可能会比较模糊。 - 将
CustomVideoEncodingHeight
改为想要的视频高度,点击“十进制”然后输入1080(建议)。 - 同理,将
CustomVideoEncodingWidth
改为想要的视频宽度,点击“十进制”然后输入1920(建议)。
修改好以上几个值后,重启电脑,录制的视频传到Apple设备上就可以正常播放啦,问题解决!🎉
Postscript
前文提到修复录制按钮变灰的问题的方法,也值得被记录下来。
注册表编辑器中前往HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\GameDVR
,将AppCaptureEnabled
设置为1
.
如果看不到AppCaptureEnabled
,在右侧右键单击,选择新建 > DWORD(32位)值
,名字写为AppCaptureEnabled
,将值设置为1
.
与此同时,这个目录下的其他键也根据命名也能猜个大概功能,可以手动设置视频的码率等(这些选项在GUI菜单中未提供),大家自行研究吧,但再次提醒,调整注册表务必谨慎小心!
Xbox Game Bar录制的视频在Apple设备上播放不正常的解决方法