news 2026/8/27 1:14:29

3 步把手机声音转发到电脑:Android 音频转发工具 sndcpy 完整教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3 步把手机声音转发到电脑:Android 音频转发工具 sndcpy 完整教程

3 步把手机声音转发到电脑:Android 音频转发工具 sndcpy 完整教程

【免费下载链接】sndcpyAndroid audio forwarding PoC (scrcpy, but for audio)项目地址: https://gitcode.com/gh_mirrors/sn/sndcpy

sndcpy 是一个开源的 Android 音频转发工具:它把 Android 10 及以上手机正在播放的声音——音乐、会议录音、游戏音效——通过 USB 或 Wi-Fi 实时转发到电脑,再由 VLC 播放。无需 root。适合手游直播需要混入游戏声音、要在电脑端整理会议录音、或想用电脑音箱外放手机音频的人。

sndcpy 解决什么问题

手机声音要用到电脑上,常见做法是戴耳机听,或者导出文件再导入,来回折腾:

  • 手游直播:游戏音效走不进摄像头麦克风,转发后 OBS 可以把手机声音和麦克风混流,观众能听到完整的游戏音效
  • 会议录音整理:手机回放录音,电脑音箱同步监听,同时用电脑上的录音软件录一份便于后期编辑
  • 音频素材分享:手机里的音频直接在电脑音箱或剪辑软件中出声,省去反复导出、导入文件

一句话概括:sndcpy 把手机当前播放的声音实时复制到电脑上,用 VLC 放出来,不改变你使用手机的方式。

工作原理:一段话讲清楚

手机端利用系统 MediaProjection 音频捕获权限拿到正在播放的声音,捕获服务按 48000 Hz、16 位、立体声的 PCM 格式读取,写入手机上一个名为 sndcpy 的本地 socket;电脑端脚本用adb forward把本机 28200 端口映射到这个 socket,最后 VLC 以原始 PCM 格式(rawaud)从 TCP 流里读取并播放。数据流向就是:Android 应用 → adb 通道 → VLC。

项目取值说明
音频参数48000 Hz / 16 位 / 立体声原始 PCM,无压缩
转发端口28200可用环境变量 SNDCPY_PORT 覆盖
播放器VLC--demux rawaud --network-caching=0参数启动

关键源码在仓库中的位置:

  • 权限申请与应用启动:app/src/main/java/com/rom1v/sndcpy/MainActivity.java
  • 音频捕获与 socket 写入:app/src/main/java/com/rom1v/sndcpy/RecordService.java
  • 电脑端脚本:sndcpy(Linux/macOS)与sndcpy.bat(Windows)

安装与首次运行

开始前的三个条件:一台 Android 10 及以上的设备、一台已装 VLC 的电脑、一条能传数据的数据线。

手机 USB 调试怎么开

  1. 设置 → 关于手机 → 连续点击"版本号"7 次
  2. 返回设置,打开"开发者选项"
  3. 打开"USB 调试",插上数据线;若手机弹出电脑授权框,点击允许

获取程序并启动

git clone https://gitcode.com/gh_mirrors/sn/sndcpy cd sndcpy ./sndcpy

Windows 用户直接双击sndcpy.bat即可(项目 release 页提供附带 adb 的 Windows 包,省去单独装 adb)。脚本会自动把应用安装到手机(已有旧版本会先卸载),授予 PROJECT_MEDIA 权限,然后启动录制服务。首次运行要装 APK,会稍慢一些。

手机授权后听到声音

启动后,手机弹出"是否允许录制音频"的对话框,点击允许。电脑上 VLC 会自动启动,前几秒可能报一次 "Connection refused",这是两端握手的正常现象,等待 2~3 秒声音就会出来。

注意:手机本身的声音会照常播放,音量可在手机和电脑两侧独立调节。停止传输,在终端按 Ctrl+C 即可;Windows 上直接拔掉数据线,或点手机通知栏里的"停止"也行。

进阶用法

📶 无线连接:Wi-Fi 连接时 IP 怎么填

  1. 先用数据线连好,执行adb tcpip 5555
  2. 拔掉数据线,在电脑端执行adb connect 192.168.1.100:5555,把 192.168.1.100 换成手机的实际 IP(在手机"设置 → Wi-Fi → 已连接网络详情"里查),两边必须在同一 Wi-Fi 下
  3. 再执行./sndcpy开始转发

🔌 多台设备连接:怎么指定设备

先用adb devices列出每台设备的序列号,然后把序列号作为参数传入:

./sndcpy ABC12345 # 指定设备序列号 ./sndcpy --vlc-args "--audio-quality 0" # 给 VLC 传额外参数

音质参数范围 0~2,数值越小音质越高,可按延迟表现取舍。

停止与卸载

  • 停止转发:Ctrl+C(Linux/macOS);Windows 上拔线或点手机通知栏的"停止"
  • 从手机卸载应用:
adb uninstall com.rom1v.sndcpy

没声音时的排查方法

现象可能原因处理方法
VLC 报 "Connection refused"sndcpy 与 VLC 的正常握手等 2~3 秒,会自动恢复,无需处理
连接成功但电脑没声音音量或输出设备调大 VLC 音量;检查电脑默认播放设备;确认音箱或耳机正常
声音延迟明显传输抖动导致 VLC 自动加大缓冲换能传数据的数据线;关闭手机后台应用;重启 sndcpy
手机不弹权限请求USB 调试状态异常或有旧授权记录关闭再打开 USB 调试;拔掉数据线重插;此前授权过的,删除授权记录后重试

如果终端出现pts_delay increased一类的报错,说明 VLC 因抖动自动提高了缓冲,直接重启即可。

⚠️ 还有限制要心里有数:sndcpy 只能转发允许被捕获的应用的音频。按 Android 的捕获策略,target Android 9 及以下的应用默认不允许捕获音频,target Android 10 及以上的应用默认允许,所以个别应用(尤其旧版本)转发不出来,升级该应用一般能解决。另外这个项目定位为概念验证(PoC),延迟表现没有深度优化;如果你要的是"投屏 + 声音",scrcpy 2.0 之后的版本已原生支持音频转发,可以直接用。

接下来可以做什么

  • 在手机上开启 USB 调试,用数据线连好电脑
  • 运行./sndcpy(Windows 双击sndcpy.bat),在手机上点击允许录制音频
  • 声音出来后,尝试无线方式:adb tcpip 5555adb connect <手机IP>:5555
  • 想改代码的话,从app/src/main/java/com/rom1v/sndcpy/RecordService.java读起
  • 遇到异常,对照上一节的排查表逐项检查

【免费下载链接】sndcpyAndroid audio forwarding PoC (scrcpy, but for audio)项目地址: https://gitcode.com/gh_mirrors/sn/sndcpy

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/27 1:13:53

知网文献批量下载指南:CNKI-download 三步跑通的爬虫工具

知网文献批量下载指南&#xff1a;CNKI-download 三步跑通的爬虫工具 【免费下载链接】CNKI-download :frog: 知网(CNKI)文献下载及文献速览爬虫 (Web Scraper for Extracting Data) 项目地址: https://gitcode.com/gh_mirrors/cn/CNKI-download CNKI-download 是一个用…

作者头像 李华
网站建设 2026/8/27 1:12:39

2025 年 Python 开发必备的9 个库

运用写脚本, 或许绝大多数情形下都是于命令行之中运行。然而至2025年时, 众人对于程序的要求并非相同了。我们所期望的不单单是能够运行, 更要好用、稳定以及易于管理。这不但关联到所挑选的库, 更为关键的是开发环境。提及开发环境, 于此不得不讲。针对 开发者而言, 特别是那些…

作者头像 李华
网站建设 2026/8/27 1:12:14

【计算机毕业设计单片机案例】基于 STM32 或 51 单片机的阈值可调光感自动窗帘装置设计与实现 基于 STM32 或 51 单片机的降雨识别智能窗户控制系统开发(025604)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于嵌入式单片机&#xff0c;Java、小程序技术领域和毕业项目实战 ✌️…

作者头像 李华
网站建设 2026/8/27 1:11:14

YOLOv8水果识别系统实战:从数据集准备到模型部署全攻略

简介&#xff1a;目标检测是计算机视觉领域的核心任务&#xff0c;YOLO系列以单阶段网络架构实现了实时检测与精度的良好平衡。YOLOv8通过Anchor-Free机制、C2f模块和解耦头设计&#xff0c;进一步提升了模型在复杂场景下的泛化能力&#xff0c;特别适合水果堆叠、光照变化、遮…

作者头像 李华