当你使用台式机工作时,你是否喜欢在旁边放一个pad或手机刷其他视频或音乐?并且在没有条件外放声音的情况下,你是否尝试过带两个耳机来收听两个设备的音频(电脑+移动设备)?如果你想这么干,又苦于没有头绪,那么本文将告诉你各种可能的方案以及他们是否可行,当然最后你会得到堪称完美的整合方式。

与此问题的相关英文问法通常是:

How to stream audio from an Android device to a Windows PC ??

为什么要这样做

首先要明确我的使用场景:

可以看到,平板在我的桌面相当于一块小副屏,当然它并不能和PC直接互通,我们知道,华为的手机和平板、电脑之间可以多屏协作,即将手机画面和声音以有线或无线方式投送到平板、电脑之上,以达到在电脑上处理手机事务的能力,但遗憾的是:目前华为平板和电脑之间并没有多屏协作的官方方案!也就是说,对于平板来说,在华为设计思路里,并不是从属设备而是替代PC的主力设备,这和iPad的发展类似,当然它发展它的,我们个人的需求仍然要满足滴!

所以,我的需求是,在我正常使用耳机在台式电脑办公/娱乐时,我想从同一副耳机中听到来自平板中播放视频的声音,也就是说,虽然带着一副耳机,但可以听到不同类型设备的音频输出,这样我的平板就更加像一块小副屏,仅仅担负放视频的任务,声音共享。所以,核心问题来了:如何采集平板的音频并传输给PC?

各种失败的尝试:

第三方投屏软件

由于华为的平板没有所谓的“多屏协作”,所以我想使用第三方的投屏软件来将平板的音视频投影到电脑上,当然这也就实现了我的目的,但通过尝试,发现当前几乎没有能够采集音频的投屏软件,有教程称小米自带投屏支持声音拾取,对此我并没有验证。更通俗的方案是依赖谷歌框架的投屏功能,不过我的 Matepadpro 是谷歌阉割版,此种方案作罢。

  • 这时我发现了名为“傲软投屏”的软件,号称可以采集声音,但经过实测,只是能采集平板的麦克风输入声音,USB或者Wifi连接都无法得到平板的音频输出!

远程桌面软件

如果你设备较多人又很懒,那么使用 TeamViewer 或者 Anydesk 等远程桌面软件来管理多个硬件设备是非常合适的,当然不使用 Windows 自带远程桌面的原因是:要兼容移动设备,所以使用 Anydesk 之类的软件即可轻松跨平台访问远程桌面。

  • 因此,在平板上安装 Anydesk 是个很自然的想法,更重要的是,对于电脑与电脑之间的远程访问,Anydesk 是支持声音传输的,即远端桌面上播放音乐,在访问端也可听到声音。但遗憾的是,经过实测,当 MatepadPro 和电脑通过 Anydesk 连接后,并不能听到任何平板的音频输出,不过其和投屏软件一样,也支持平板上麦克风声音的拾取。

电脑当做移动设备的蓝牙音频输出设备

即,把电脑当做平板的蓝牙耳机,当然就可以得到平板的声音了!这是最合理可行的方案,不过需要我们将 Windows 作为接收音频的蓝牙设备,完成此功能需要借助名为 “Bluetooth Audio Receiver” 的UWP应用,我没找到该软件的正常安装版本,对于我来说,我早已将微软的商店服务给禁用了,自然也无法使用此种方案。

可能的替代方案

是否有该UWP应用的替代品?部分网络教程提及了蓝牙的音频传输功能,即,当平板和电脑以蓝牙相连时,在电脑上的蓝牙选项中会存在“接收音频”类似的功能选项,如果选中则可以得到平板的音频。但我的华为平板通过蓝牙连接电脑后,没有任何声音选项,故此方案不可。

经检索,网上有人说可以用过 “IVT BlueSoliel” 即千月蓝牙来实现。多说一嘴,千月蓝牙工具的核心是使用了虚拟蓝牙串口,即他会接管原有蓝牙功能,但其协议堆栈是和 Windows原生蓝牙是不同的,这也是为什么有时他能解决问题的原因。但是,经过我的尝试,这玩意儿也不好使,而且客户端做的仿佛是上世纪的UI,体验一般。

正确答案

以上试了这么多方案,有无线连接的,也有通过 USB 连接的,当然,对我来说我对有线无线并不在乎。所以,当我在尝试投屏软件时,有个“USB”直连模式我果断试用了,因为用 USB 连接并不占用带宽,这对局域网来说是很重要的!尤其是我现在用的路由器并不强劲。虽然投屏软件没能解决我的问题,但它引出了后续的终极方案:ADB调试直连。

需要用到的两个开源工具:

借助 Scrcpy 可以达到同屏的目的,几乎无延迟,我强烈怀疑有很多投屏软件就是这个开源项目的再封装。借助 Sndcpy 可以达到同步音频的目的,几乎无延迟!这不就是我苦苦寻找的东西吗!!两者同时使用,则可以将移动设备的画面及声音完全复制到电脑之上,当然,亲测单独使用 Sndcpy 也是可行的!这就完完全全是我想要的效果了:

只把平板的声音同步到电脑,在我用电脑娱乐玩游戏(游戏内有声音)时,耳机中也能听见来自平板上的视频的声音!

Sndcpy 使用注意事项

  • 一定要打开手机的USB调试,验证:电脑通过数据线连接移动设备后,会弹出“是否允许调试”的询问弹框。

  • 一定要在电脑端安装VLC播放器!其需要借助VLC的解码器。

  • 一定要添加环境变量!

ADB: the full path to the adb executable
VLC: the full path to the vlc executable
SNDCPY_APK: the full path to sndcpy.apk
SNDCPY_PORT: the local port to forward to communicate with the device

  • 优化使用

以上两个工具,正常的使用方法是直接点击 xx.exe 唤起 Console 黑框终端运行,使用期间cmd终端会一直在且不可以关闭,这很令人抓狂!

当然我发现了完美的解决办法:将cmd终端最小化到右下角图标区域,仍然是后台常驻,但不会占用任务栏的空间,你也不会再在桌面看到任何黑框!

实现该功能的项目地址:https://github.com/fcFn/traymond
使用:win键 + shift + Z 把当前窗口最小化常驻到右下角图标

结语

通过最后的方案,实现了平板声音的实时采集传输,无需蓝牙,不用同屏图像,完美方案!!!
值得一提的是,该方案并不影响平板的原有音频输出!同时也不影响电脑原有的音频输出,如果同时播放视频,就像在浏览器同时开两个视频页面的效果一样(叠加)。



😒 留下您对该文章的评价 😄



 评论




全站共计 313.7k 字,自豪地使用 Volantis 主题

博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议