# Sony Headphones Client：Sony 耳机控制协议的桌面客户端

> 把 Sony 仅限手机的 Headphones 应用的部分功能重建为 Windows、Linux 和 macOS 桌面客户端，通过蓝牙 RFCOMM 连接已配对的耳机，调整降噪、环境声和虚拟音效设置。作者称通过逆向手机应用定义了其控制协议；代码重建了报文封装，包括起止标记、字节转义、序列号、求和校验和确认应答，以及客户端发送的两条参数设置命令。据报告只有少数型号完全可用，主要是 WH-1000XM3，项目现已归档。

- 类型：案例
- 目标：应用 · 协议
- 类别：独立重建案例
- 关联：独立重建项目
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/Plutoberth/SonyHeadphonesClient>
- 一手来源：<https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/sony-headphones-client-case/>
- 记录 JSON：<https://awesomerea.org/resources/sony-headphones-client-case/record.json>
- 英文版：[English](https://awesomerea.org/resources/sony-headphones-client-case/index.md)

## 使用条件与局限

- 所审阅的 master 提交日期为 2025-07-19，位于 2023-04-26 发布的 v1.3.2 之后十个提交，增加了构建说明、一处 GCC 头文件修复和归档声明；CMakeLists.txt 仍内嵌 1.3.1 版本号。仓库已归档：README 称应用对已支持的设备仍可继续使用，其他设备可尝试未经测试的分支。已实现的控制包括环境声（含人声聚焦）、关闭降噪，以及 Virtual Sound 的 VPT 和声音定位预设；从耳机读取电量或当前设置以及均衡器从未实现，因此客户端只发送设置。
- 无需也不包含任何 Sony 软件或文件；客户端通过 RFCOMM 连接耳机的控制服务 UUID。README 报告 WH-1000XM3 和 MDR-XB950BT 完全可用、WH-1000XM4 部分可用，其他型号见用户报告议题；序列化代码把环境声级别上限设为 WH-1000XM3 的 19 档。README 称出于互操作目的逆向了该应用，代码中只包含部分枚举和数据，其余需通过静态或动态方式获取，并链接了一条关于抓取报文的评论；仓库中没有反编译的应用代码、抓包记录或方法说明。
- 发布页提供预编译的 Windows x64、Linux x64 和 macOS 版本，Windows 版需要 Microsoft VC++ 运行库。Windows 与 Linux 构建使用 CMake、C++20 编译器和 Dear ImGui 子模块，Windows 上需要 Visual Studio 2022 和 Windows SDK，Linux 上需要 BlueZ、GLEW、GLFW、D-Bus 和 OpenGL 开发包；macOS 使用随附的 Xcode 项目构建。
- CI 只用 CMake 构建 Linux 和 Windows 客户端、用 xcodebuild 构建 macOS 应用并上传产物；没有协议测试，耳机兼容性来自用户报告。
- LICENSE 为 MIT；随附的 Cascadia Code 字体采用 SIL Open Font License，Dear ImGui 有其自身许可。README 声明本程序与 Sony 无关，应用和耳机的相关权利仍归 Sony 所有。

## 一手来源

1. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/README.md>
2. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Constants.h>
3. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/CommandSerializer.cpp>
4. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/BluetoothWrapper.cpp>
5. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Headphones.cpp>
6. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/CMakeLists.txt>
7. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.gitmodules>
8. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.github/workflows/cmake.yml>
9. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/.github/workflows/xcodebuild.yml>
10. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/Client/Fonts/FontLicense.txt>
11. <https://github.com/Plutoberth/SonyHeadphonesClient/blob/5620e8ed5deccb957338b54e371b215146080819/LICENSE>
12. <https://github.com/Plutoberth/SonyHeadphonesClient/releases/tag/v1.3.2>

## 同分区更多条目：应用

- [cbyge：重建 C by GE 智能灯泡云端协议](https://awesomerea.org/zh/resources/cbyge-c-by-ge-protocol-case/index.md) · 案例
- [Clickwill：重建 iPod 音乐库数据库编辑功能](https://awesomerea.org/zh/resources/clickwill-case/index.md) · 案例
- [Spark Mail：借助 Wine 兼容层在 Linux 上运行 Windows 桌面应用](https://awesomerea.org/zh/resources/spark-mail-linux-case/index.md) · 案例
- [OpenTracks：OpenTracks7 BETA1 的 UWP 移植](https://awesomerea.org/zh/resources/opentracks-uwp-case/index.md) · 案例
- [RTO eChalan：调查 BankBot 安卓 APK](https://awesomerea.org/zh/resources/rto-echalan-android-analysis-case/index.md) · 案例
- [AOL 7.0 Retro Server：复现 P3 服务端会话](https://awesomerea.org/zh/resources/aol7-retro-server-case/index.md) · 案例

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
