更改电脑名称后, Cnario无法播放画面和声音, 开机后停留在桌面, Cnario Player软件界面的停止按钮为蓝色可选状态
症状描述
Cnario Player正常工作期间, 更改了电脑的Windows系统计算机名称(不是登录Windows的用户名), 重启后, 新计算机名生效. 此时Cnario自动启动, 但没有进入播放画面, 可以看到Cnario Player的软件界面, 界面中的播放按钮呈灰色, 表明已经在播放进程, 也没有音频播放:
原因分析
出现这个原因是因为计算机名称更换了, 因为Windows可以扩展多个屏幕显示, 每个屏幕可显示不同的内容, Cnario Player要将Layout的内容分区播放至每个屏幕, 需要更具屏幕名称来定位播放位置, 如果计算机名称改之前, 屏幕(或桌面)在系统里的名称为"previous computer name+GPU name + GPU端口编号", 则计算机名称修改之后的屏幕(或桌面)在系统的名称为""New computer name+GPU name + GPU端口编号". 打开Cnario Player界面里按照路径Display Devices >>Canvase Controller xx>>Display Setting>>ScreenArrangement打开屏幕布局编辑页面, 可以看到在左边的屏幕列表里, 屏幕对应的Computer Name已经变成新的计算机名称, 而右边列表里的模拟屏幕关联的屏幕Screen 1事实上还是修改计算机名称之前的旧屏幕名称. 这时可以按照下面步骤重新关联上新屏幕:
- 点击"Identify Screens", 每个屏幕上方出现屏幕编号
- 将左边屏幕列表里的屏幕按照实际屏幕的顺序重新拖放到右边对应的虚拟屏幕图标里
- 点击OK保存设置,
- 再点击左上角出现的黄色保存按钮, 保存以上对Canvas Controller的更改
- 关闭Cnario Player主界面, Windows任务栏右边继续继续找到Cnario WatchDog, 右键菜单中点击"Exit" 关闭, 单击Canvas Controller Core Service, 弹出"Terninnate Canvas Controller Service?"的提示, 点击Yes结束服务.
- 重新打开 Cnario Player软件, 播放恢复正常.
恢复声音播放
同理, 视频播放正常后发现声音仍无法播放, 因为Cnario Player不仅对Windows的多屏幕识别依赖计算机名称, 多声卡识别也依赖计算机名称. 解决办法跟重新关联屏幕类似, 打开屏幕布局编辑页面后, 看到默认打开的是Surface页面, 点击Surface右边的Audio, 切换至声卡编辑页面:
可以看到声卡列表里目前选中的声卡所属的计算机名称为旧的计算机名称, 也就是说Cnario Player目前的声音输出是通过这个已经不会存在的声卡, 所以不会有声音输出.
通过以下步骤即可将输出音频更改为有效的声卡:
- 当前选中的无效声卡, 右边窗口依次对着Mono和Stereo两页里的声卡通道右击, 弹出Remove Channel Mapping, 点击, 删除所有的音频通道.
- 打开Windows系统声卡设置窗口, 找到可用的声卡名称
- 从左侧声卡列表中寻找到目前想要输出音频的声卡, 勾选, 将其拖拽至右边窗口中的Mono和Stereo页面, 每个页面拖放两次
- 修改声道编号, 将Mono 和Stereo页面内的第二个声卡通道的Input和Ouput值均修改成1, 表示声音的输入通道0声音传送至输出通道0, 输入通道1声音传送至输出通道1, 一共有两个声道, 如果是多声道需要做更多的声道映射.
- 点击右下角的OK保存设置.
- 点击左上角的黄色保存图标, 保存设置.
- 按照前面的方法依次关闭Cnairo Player, WatchDog, 和Canvas Controller Core Service. 重启Cnario Player即可正常播放音频.