【PSV】PSV音频串流教程(大更新)
前言
如果坚持要在掌机上实现串流可以继续看,有闲钱的话买个PS Vita TV就可以解决以下所有问题。
掌机PSV的图像和声音采集不知道为什么在我这边是一个老大难,视频串流其实是最小的问题,但是音频串流有三个问题是我在探索中遇到的:
- 某个品牌的USB声卡,即使关闭“USB充电”依然会发出电流声(后续购买其他声卡后没有这个问题);
- PSV自身在Win10以后的Windows系统很难实现通过蓝牙串流声音;
- 即使通过声卡能够采集到声音,且声音没有电流声,声音采集到效果仍然很差。
对此我参考网上数篇文章,想出了若干解决方案,并进行了验证,也欢迎各位尝试验证或提出其他解决方案。
视频串流方案(顺带介绍)
我是PSV1000,然后手上的电脑台式机是没有麦克风接口只有耳机接口的,所以必须买USB声卡。
关于视频串流,首先确保你在PSV上安装了udcd_uvc
插件(想同时显示安装官方版,想息屏显示安装OLED版),这个插件是处理小V视频串流部分的唯一解决方案。
视频串流和音频串流都需要用到OBS。视频串流:添加视频采集设备,PSV安装插件接入电脑后会自动检测到PS Vita的选项,直接使用即可(需要息屏的话可以取消激活,再激活就可以了)。

下面涉及到的内容主要是音频方面的处理方法。
原理解释
PS Vita进行视频串流是通过插件进行的。
音频则主要有3.5mm Aux接口和蓝牙连接两种方式。
Aux直连电流声的来源——接地环路效应
基于3.5mm Aux接口的音频串流很简单,无非要解决的是USB连接时存在的干扰问题。
而产生电流声的原因也很简单:就是接地环路 (Ground Loop) 效应。
下面引用一段AI的解释:
PSV和电脑通过Aux和USB两个独立的路径连接,导致各自的地线之间存在电位差,形成了接地环路。这个环路中流动的杂散电流耦合到音频信号中,产生了可听见的噪声。USB屏蔽器通过隔离USB连接的地线,打破了接地环路,从而消除了电流声。
看不看得懂先不论,总之,可以通过USB屏蔽器来消除两条线路直接的相互干扰。
PSV连接电脑串流音频的前提——A2DP(来源)
在PSV用蓝牙连接电脑时,我们可以看到两组单词缩写,A2DP
和AVRCP
,两者都是蓝牙的配置文件。

其中,A2DP
(Advanced Audio Distribution Profile)是负责音频流的传输的配置文件。AVRCP
(Audio/Video Remote Control Profile)是通过蓝牙连接对音频/视频设备进行远程控制的配置文件。
正常情况下,比如PSV与蓝牙音箱连接时,音箱会固定识别PSV为A2DP(来源)
,从而实现音频的播放。但是PSV与电脑相连时,默认会识别PSV为A2DP(输出)
,也就是蓝牙音箱性质的配置文件,因此,我们需要在设备管理器中将PSV的蓝牙配置文件切换为A2DP(来源)
的输入形式,也就是所谓的A2DP sink
,才能实现音频的蓝牙串流。
在网上能找到很多问答,下面这则社区问答中员工的回答,证明了自 Windows 8 起,微软蓝牙驱动就不再支持 A2DP 接收模式。(但是第三方的蓝牙驱动存在其他的解决方案。)

虽然Win10开始,基于Bluetooth Audio Receiver
一类的软件可以实现A2DP sink
,但是Windows自身其实是无法像Win7一类的老系统实现蓝牙配置文件的切换,仍然需要电脑识别(或者保留?)到设备的A2DP(来源)
的配置文件才能实现音频串流。这也是PSV为什么不能通过下面这个软件实现音频串流的原因。

(具体原因我个人也不算太清楚……希望找个大神来个更确信的解释)
软件方向的处理方法
主要从虚拟机、物理机、软件三个角度分析可行性。
Win7实体机方案【未验证】
【此步骤可能需要蓝牙适配器,请自行斟酌是否需要购买,对于使用有线耳机监听且自带蓝牙适配器则不需要购买】
此方法有日本网友的成功先例(无证据):

总之通过制作Win7第二系统或者找一台Win7系统的电脑,然后装旧版本OBS进行录制或者串流就可以解决问题,当然前提是能解决驱动相关的问题。
顺带一提Win7虚拟机我个人经过尝试不太行,如果哪位折腾出来了可以评论或者私信告诉我。
Linux虚拟机方案【已验证】
【此步骤可能需要蓝牙适配器,请自行斟酌是否需要购买,对于使用有线耳机监听且自带蓝牙适配器则不需要购买】
基于Vmware和Ubuntu桌面版。(WSL是不行的,我个人已尝试。如有成功者请告知我。)
关于Vmware安装Ubuntu桌面版的教程不再赘述。
在完成系统初始化后,按以下步骤安装软件:
sudo apt update
sudo apt install bluetooth bluez pulseaudio pulseaudio-module-bluetooth pavucontrol
此步骤需要调用sudo因此需要输入管理员密码。
安装完成后重启蓝牙服务:
sudo systemctl start bluetooth
sudo systemctl enable bluetooth
在Vmware中,在设置内关闭“与虚拟机共享蓝牙设备”,然后将需要分享给虚拟机的本机蓝牙适配器或其他外接蓝牙适配器连接到虚拟机后,在PS Vita上取消与蓝牙适配器的配对,重新配对虚拟机设备。


配对完成后打开虚拟机菜单部分的PulseAudio中,选择设置-配置,将PlayStation Vita的配置部分调整为A2DP信源,就可以在虚拟机的桌面直接听到PSV的声音了。

这个时候可以用Linux版OBS,也可以用Win的OBS采集虚拟机的声音+采集PSV的声音,反正都很会比配件方案比较吃内存,看大家喜好了。

不过这好像也是唯一有可能完全不花钱的方案?
【此方案音频无底噪、音频质量与Line in口直插方案接近】
Linux实体机方案【含Vitadock,未验证但有成功先例】
B站随便搜到的视频:https://www.bilibili.com/video/BV1tELozaEX6
总之是基于实现的方案。

图片来源:https://note.com/wabisuke94/n/nd886c0a6123b
总之就是一个专门用于PSV串流的定制版树莓派系统。

参考上面的串流逻辑,其音频串流的逻辑也基本上就是蓝牙或者3.5物理方案,和本文其他章节区别不大。
理论只要实体的Linux系统能装蓝牙模块或者3.5mm aux接口模块都能实现一模一样的功能。
此方案推荐给追求美观或者喜欢折腾刷机的兄弟们,不过成本肯定是最高的。
番外:Bluetooth Tweaker的尝试
我也有尝试Bluetooth Tweaker,它虽然可以让设备以A2DP来源进行连接,但是Win这边似乎仍然会把PSV识别为音频输出,导致下图中的Connect键无法激活。

配件方向的解决方法
此节可能涉及的配件(估计价格以最低价格估算,如果台式机自带Line in接口则无需购买声卡,部分蓝牙耳机的自带音频线也可以直接使用无需购买)
配件介绍
3.5mm AUX公对公音频线(16元)

USB声卡(单aux口/2口/3口)(7-30元)

只要没有Line in的蓝色输入端口,都可以认为是这种类型的声卡。后续我们都简称为USB双口声卡。
不过要确保有带输入功能的aux孔或麦克风孔。
USB 5.1声卡/光纤声卡(6口)(40或60元)

有Line in输入端口就行算,价格比2口的要贵一点。后续简称为USB 5.1声卡。
Aux蓝牙接收器(16元)

市面上也有其他类似产品,而且淘宝的例图里面有PSV等游戏机的图,只要有能通过蓝牙接入音频然后通过Aux输出就没问题。
USB隔离器ADUM4160/ADUM3160(29元)

只要保证包含ADUM4160
的表述就不会有问题。另外不要买成3.5mm接口的音频隔离器了,没用。
事先声明与情况排除
博主在询问群友后发现一些电脑(台式机)上通过直接插入电脑自带的Line in的话似乎不需要USB过滤器也可以避免噪音产生。而且也无法确定是不是小V自己的问题导致的。
因此看下面的方案之前你可以先尝试直接将3.5mm AUX音频线插入任何一种声卡 的Line in接口或者麦克风接口(关闭USB充电)确定一下是否有电流声,然后再考虑是否需要购买USB过滤器。

接下来基于上述所有配件,研究了一下几种不同的连接方案。
首先:OBS听不到音频怎么办


OBS录制的视频一开始声音特别小然后慢慢变大的现象原因

from:https://tieba.baidu.com/p/5861880051
USB过滤器+5.1声卡Line-in口方案
主要参考:Cheap, easy way to stream PSVita with fixed audio noise
USB 5.1声卡/USB双口声卡与过滤器相连以后插入电脑,另一侧通过3.5mm AUX音频线与PSV相连。(未关闭USB充电)

此方案下有低音量底噪,音频细节保留最好,音量适中。也有可能是由于过滤器造成音量削减导致输出有音量偏低,造成底噪较其他方案明显。
USB过滤器+双口声卡麦克风口方案
USB 5.1声卡/USB双口声卡与过滤器相连以后插入电脑,另一侧通过3.5mm AUX音频线与PSV相连。(未关闭USB充电)

此方案下有低音量底噪,音频细节较插Line in口有丢失,音量偏大。
Aux蓝牙接收器+5.1声卡Line-in口方案
此方案基于油管播主Robles Junior的视频。
将Aux蓝牙接收器与PSV配对连接以后,自身插入USB 5.1声卡的Line in接口。(未关闭USB充电)


此方案下更低音量的底噪,音频细节与Line in口直插方案稍有差异(个人听感差一丢丢)但是不大,音量偏大。
USB过滤器+声卡麦克风口方案
因为此方案最便宜所以做了探索。

将Aux蓝牙接收器与PSV配对连接以后,自身插入USB双口声卡的麦克风接口。(未关闭USB充电)
此方案下无底噪,音频细节与Line in口直插方案差异较大,音量偏大。
结论
本次博客中博主主要验证了以下5种方案,添加两个对照组对比结果如下:
价格 | 电流噪声 | 底噪 | 音频品质 | |
---|---|---|---|---|
声卡Line-in | NA | 有 | 有 | C? |
声卡Line-in+关USB充电 | NA | 可能有 | 有 | C? |
USB过滤器+声卡Line-in | 87元 | 无 | 有 | A |
USB过滤器+声卡麦克风口 | 52元 | 无 | 有 | B? |
Aux蓝牙接收器+声卡Line-in | 56元 | 无 | 无 | A- |
Aux蓝牙接收器+声卡麦克风口 | 23元 | 无 | 无 | B- |
(软件)Linux虚拟机方案 | 0元(理论) | 无 | 无 | A- |