安装与设置
目录
前提条件
- Windows 10(22H2)/ 11(x64 或 ARM64)
- 供 BlueCaster 使用的 USB Bluetooth 适配器:建议使用单独的适配器;USB 类型的内置适配器也可以,但期间 Windows 将无法使用自己的 Bluetooth(参见第 2 步)
BlueCaster 会自行为适配器分配 WinUSB 驱动程序,不再需要 Zadig(Zadig 仍然可用,请参阅改用 Zadig)。
安装 BlueCaster
每个发布版本提供两种形式,内含文件相同:
- 安装程序(
BlueCaster-<version>-win64-setup.exe,ARM64 为-arm64-setup.exe):无需管理员权限即可为当前用户安装,添加“开始”菜单项(BlueCaster)和卸载程序;如果缺少 Microsoft Edge WebView2 Runtime,还会一并安装(Windows 11 已自带)。更新可在应用内自动安装(设置 > 更新 > 立即更新) - 便携版(
BlueCaster-<version>-win64-portable.zip,ARM64 为-arm64-portable.zip):解压到任意位置,运行bluecaster.exe即可。请将三个程序(bluecaster.exe、bluecaster-core.exe、bluecaster-driver.exe)放在一起。便携版只会提示有可用更新;它需要已安装 WebView2 Runtime
两者都将设置、配置文件、链接密钥和固件保存在 %APPDATA%\BlueCaster 中,因此可以在两者之间切换。卸载时会删除该文件夹,除非关闭删除用户数据(静默卸载会保留它)。 程序位于 %LOCALAPPDATA%\BlueCaster\,许可证文本在其中的 licenses\ 文件夹。
从 v1 升级
直接在 v1 上运行 v2 的安装程序即可。其准备安装页面会说明将先卸载哪些早期版本(v1,或 2.0.0 至 2.0.2-beta.5)。如果 v1 正在运行,安装程序会请你关闭它,然后卸载 v1 并保留设置文件夹:配置文件、与耳机的配对以及固件文件都会沿用,耳机无需重新配对。已通过 Zadig 设置为 WinUSB 的适配器会保持 WinUSB。如果之前开启了随 Windows 启动,现在启动的将是 v2。
v2 首次启动时,会先将 v1 的设置复制到 %APPDATA%\BlueCaster\backup\v1\,然后再读取。
从 2.0.x(A2DP Windows Bridge)升级
BlueCaster 3.0.0 是 A2DP Windows Bridge 的新名称。直接在已安装的 2.0.x 上运行 3.0.0 的安装程序即可:安装程序会自动卸载旧版本,并保留设置。“开始”菜单项和随 Windows 启动项会改为“BlueCaster”。
3.0.0 首次启动时,会将文件夹 %APPDATA%\A2DPWB 重命名为 %APPDATA%\BlueCaster,并把其中的文件整理到子文件夹中(见设置与文件)。backup\v2\ 保存了 2.0.x 设置和配对的副本,以便重新安装 2.0.2:把这些文件复制回 %APPDATA%\A2DPWB 即可。
耳机在重新配对之前,可能仍显示旧的蓝牙名称“A2DPWB”。
第 1 步:首次运行设置
插入 USB Bluetooth 适配器并启动 BlueCaster。首次启动时(还没有任何音频设备,或者没有任何适配器使用 WinUSB),BlueCaster 会打开设置向导,共四步。完成或跳过一次后,它不会再自动打开:请在主页或音频设备页面添加设备。
- 选择适配器:列出找到的 USB Bluetooth 适配器。如果没有你的适配器,请插入后单击刷新。绿色的支持或红色的不支持表示 BlueCaster 能否使用该适配器;不支持的适配器会列出,但无法选择
- 驱动程序和固件:此步骤会列出将要执行的操作,单击准备此适配器即可完成:将适配器的驱动程序替换为 WinUSB(Windows 会请求管理员权限,请参阅第 2 步),并下载该适配器所需的 Realtek 固件文件(请参阅固件)。BlueCaster 无法下载的固件需要手动放入固件文件夹。如果 Windows 有通过此适配器配对的设备(例如内置适配器上的键盘或鼠标),该按钮会先列出它们:BlueCaster 使用该适配器期间,它们无法再配合 Windows 使用,单击取消可保留它们。使用自带 USB 接收器的设备不受影响;若要保留其他设备,请为 BlueCaster 使用单独的 USB 适配器。适配器页面的替换为 WinUSB 驱动程序也会列出它们
- 查找音频设备:扫描会自动开始。让音频设备进入配对模式,然后单击旁边的连接(或输入其地址后单击使用):BlueCaster 会以设备支持的最佳编解码器(自动)保存它并连接。该设备随后显示在已配对的设备下,并带有表示其状态的圆点,扫描随之停止。单击添加设备会断开它并继续扫描,以添加另一台设备;它仍会保留,选错的设备可在此删除。Windows 曾通过此适配器配对设备时,会显示导入 Windows 的配对:其导入按钮会列出这些设备,并全部勾选(请参阅第 3 步)。没有设备也可以单击下一步;音频设备可以之后在音频设备页面添加。已安装 Hi-Fi Cable 时,新设备会捕获它,否则捕获 VB-CABLE:Hi-Fi Cable 增加的延迟最小,因此推荐用于声音,VB-CABLE 则推荐用于耳机的麦克风。此步骤会推荐缺少的音频线,每条都可用 × 关闭(两者都保留在设置 > 虚拟线缆中):安装 VB-CABLE 会从 VB-Audio 下载其 VB-CABLE 安装包(1.3 MB)并安装(会请求管理员权限;如果没有出现,请重启 Windows),下载 Hi-Fi Cable 会打开 VB-Audio 的页面。两者都是 VB-Audio 的捐赠软件(vb-cable.com):BlueCaster 不附带 VB-CABLE,捐款归 VB-Audio 所有。在公司或其他组织中,VB-Audio 要求每次安装都有许可证(许可)。之后 BlueCaster 首次发现某条音频线时,使用默认设备的设备会捕获它(VB-CABLE 仅在未安装 Hi-Fi Cable 时),麦克风没有可用输出的设备会改用它播放麦克风。其编解码器之后可在编解码器页面更改
- 常规设置:主题、启动、通知和更新检查,与“设置”中的控件相同,会立即保存。首次设置会开启随 Windows 启动和在托盘中启动
稍后设置会跳过剩余步骤;设置 > 运行设置向导可再次打开它。
第 2 步:为适配器分配 WinUSB
BlueCaster 通过 WinUSB(Windows 自带的通用 USB 驱动程序)直接与 USB Bluetooth 适配器通信。建议使用专用适配器——这样内置 Bluetooth 仍可照常用于 Windows 的普通 Bluetooth 功能。
- 打开适配器页面(设置向导的驱动程序和固件步骤会通过准备此适配器完成第 2 至 4 步)
- 适配器的驱动程序显示为原始驱动程序(或无驱动程序),即 Windows 或制造商安装的驱动程序,WinUSB 将替换它。单击替换为 WinUSB 驱动程序
- 阅读确认信息后继续:Windows 会请求管理员权限(UAC)
- 驱动程序现在显示为 WinUSB 驱动程序
如果 Windows 未能立即加载 WinUSB(适配器正在使用中),BlueCaster 会给出提示,驱动程序一行会显示请重新插拔或重启 Windows。请拔下适配器后重新插入;内置适配器请重启 Windows。在此之前,连接会失败,日志中出现 failed to initialize WinUSB (error 50)。
分配 WinUSB 期间,Windows 自带的 Bluetooth 将不再识别该适配器:通过它与 Windows 配对的设备在恢复驱动程序之前都无法使用。键盘、鼠标等普通外设请使用内置 Bluetooth。属于 USB 设备的内置适配器(许多笔记本电脑上的 Realtek 适配器)也可以交给 BlueCaster 使用,但在恢复其驱动程序之前,PC 将完全无法使用 Windows Bluetooth(Bluetooth 设置、鼠标、键盘、其他音频设备)。
同一页面上的恢复原始驱动程序会将适配器交还给 Windows:Windows 会重新为其选择自己的驱动程序(通常是其 Bluetooth 驱动程序),适配器即可配合 Windows 的 Bluetooth 使用。在重新分配 WinUSB 之前,BlueCaster 无法通过它串流。Windows 一次只运行一个 Bluetooth 适配器:如果另一个适配器正在使用中,BlueCaster 会在恢复后给出提示;只有在设备管理器中禁用那个适配器并重新插拔此适配器后,它才能在 Windows 中使用。BlueCaster 重新配对过的耳机使用的是新密钥:对于 Windows 也通过此适配器配对过的耳机,恢复时会把该密钥也交给 Windows,因此无需重新配对即可在 Windows 中连接。限制:只交出经典配对,不交出 LE 密钥:Windows 通过 LE(LE Audio)使用的设备需要在 Windows 中重新配对(开发者模式下可以试着交出:开发者 > Debug)。卸载程序也提供同样的操作:卸载向导的一个页面上有恢复原来的蓝牙驱动程序(当 BlueCaster 为适配器分配了 WinUSB 时;只请求一次管理员权限)和删除用户数据(%APPDATA%\BlueCaster 中的设置、编解码器、配对和固件,以及窗口记住的内容,例如仅显示支持的编解码器),两者默认都已开启。如果只有没有该记录的适配器(用 Zadig 或 v1 设置的)在使用 WinUSB,第一项会显示但默认关闭:选择后由 Windows 选择驱动程序。更新时以及静默卸载(/S)时会保留 WinUSB。
改用 Zadig
使用 Zadig 安装的 WinUSB 驱动程序同样可用:
- 打开 Zadig,选择 Options > List All Devices
- 从下拉列表中选择你的 USB Bluetooth 适配器
- 选择 WinUSB 作为目标驱动,然后单击 Replace Driver
在设备管理器中手动操作
如果 BlueCaster 的列表中没有该适配器、适配器页面上的按钮失败,或者你的适配器与同类适配器表现不同,可以在 Windows 的设备管理器(右键单击开始 > 设备管理器)中手动完成同样的操作。两者都需要管理员权限。菜单名称可能因 Windows 版本而略有不同。
替换为 WinUSB 驱动程序
- 找到适配器:通常在 Bluetooth 下,显示其自身名称(例如“TP-Link Bluetooth USB Adapter”);如果其驱动程序启动失败,会带有黄色标记。查看 > 依连接排序设备有助于将它与电脑内置的 Bluetooth 区分开(除非要交给 BlueCaster 使用,否则请勿改动内置的 Bluetooth)
- 右键单击 > 更新驱动程序 > 浏览我的电脑以查找驱动程序 > 让我从计算机上的可用驱动程序列表中选取
- 如果 Windows 询问设备类型,请选择通用串行总线设备。取消勾选显示兼容硬件,选择厂商 WinUsb 设备 和型号 WinUsb 设备,单击下一页并确认警告
- 适配器现在显示在通用串行总线设备下,名为 WinUsb 设备。重新启动 BlueCaster(或重新打开适配器页面),即可像使用 Zadig 时一样使用它
恢复原来的驱动程序
- 在通用串行总线设备下右键单击该适配器(WinUsb 设备)> 卸载设备。如果 WinUSB 驱动程序来自 Zadig,还要勾选尝试删除此设备的驱动程序,否则 Windows 会再次选择 Zadig 的驱动程序
- 拔出适配器并重新插入(或 操作 > 扫描检测硬件改动)。Windows 会安装自己的驱动程序,适配器会出现在 Bluetooth 下
- 如果它在那里带有黄色标记(驱动程序启动失败,例如代码 31),说明厂商的驱动程序不适用于它:右键单击 > 更新驱动程序 > 浏览我的电脑以查找驱动程序 > 让我从计算机上的可用驱动程序列表中选取 > 通用蓝牙适配器;或者按上面的步骤重新分配 WinUSB,以便在 BlueCaster 中使用
第 3 步:查找耳机
扫描设备(在音频设备页面上)会通过 USB 适配器查找附近的设备,持续 30 秒,设备一应答就会列出。在设置向导中,扫描会自动开始,并持续到有设备连接(添加设备会断开它并继续扫描)、单击停止扫描或关闭设置向导为止。请先让耳机进入配对模式。BlueCaster 之前配对过的设备会标记为已配对。
如果扫描找不到耳机,请在手动:下输入 Bluetooth 地址并单击使用。输入或粘贴的地址会自动格式化:AA:BB:CC:DD:EE:FF、aa-bb-cc-dd-ee-ff、AABBCCDDEEFF 和 AA BB CC DD EE FF 都会变为 AA:BB:CC:DD:EE:FF。
在分配 WinUSB 之前由 Windows 通过此适配器配对过的耳机可以保留该配对:导入 Windows 的配对(在设置向导的设备步骤中,有此类设备时显示)会列出这些设备并全部勾选,然后接管所勾选设备的配对,使耳机无需进入配对模式即可连接。Windows 会请求管理员权限。此类设备通常不处于配对模式,扫描中不会出现;如果出现,或输入了它的地址,连接或添加会先提醒它已由 Windows 配对;仍然添加会将其作为新设备重新配对。
通过 Windows 设置(如果耳机曾与 PC 的内置 Bluetooth 配对):
- 打开 设置 > 蓝牙和其他设备
- 单击你的音频设备
- 单击 属性
- 即可看到 Bluetooth 地址(格式:
AA:BB:CC:DD:EE:FF)
通过命令行(请先退出 BlueCaster:托盘 > 退出):
bluecaster-core.exe --cli --scan
耳机的编解码器(编解码器页面)默认为自动,输出源(音频设备页面)默认为系统音频;默认值即可获得最佳音质。其他内容请参阅使用方法。
固件(Realtek 适配器)
基于 Realtek 的 USB Bluetooth 适配器(如 TP-Link UB500、RTL8761BU 适配器)需要专有固件才能工作。CSR 适配器无需固件。Intel、MediaTek MT79xx、Qualcomm 和 Broadcom 适配器可能需要各自的固件文件:请参阅推荐适配器。
在应用中(下载引导)
适配器页面(以及设置向导的驱动程序和固件步骤)会显示适配器的固件状态:固件正常、无需 Realtek 文件(BlueCaster 无法识别的适配器,且芯片设为非 Realtek),或未找到固件并列出所需的文件名。使用打开下载页面按钮在浏览器中打开 linux-firmware/rtl_bt 页面,然后使用打开固件文件夹打开目标文件夹。下载所需的 .bin 文件并放入该固件文件夹。
其他厂商的适配器不显示 Bluetooth 芯片 选项,其标签说明固件的来源:来自 MediaTek 的驱动程序或来自 Qualcomm 的驱动程序(从厂商的 Windows 驱动程序读取,改用 WinUSB 后它仍保持安装),来自 Wi-Fi 驱动程序(Marvell;请保持 Wi-Fi 开启),来自固件文件夹(Intel,附有打开下载页面、打开固件文件夹和设置指南),可选(Broadcom 的 .hcd)或不需要(CSR、Barrot、Actions)。BlueCaster 在 WinUSB 下加载后显示已加载,加载失败时显示未加载,并附有打开下载页面、打开固件文件夹以及说明固件来源的一行。
对于 Bluetooth 芯片 列表中的芯片,下载固件 可以代劳:确认后,BlueCaster 会从 linux-firmware (kernel.org) 下载文件,逐个按预期的 SHA-256 校验,并保存到固件文件夹。linux-firmware 中没有 config 文件的芯片会得到一个空的 _config.bin(芯片将使用自身的设置)。这些文件不属于 BlueCaster,只在您请求时下载。
BlueCaster 会检测适配器的芯片组,并显示需要哪些固件文件。
没有固件时,Realtek 适配器仍会以 ROM 代码打开并应答,看起来一切正常,但连接或串流会失败。此时 BlueCaster 会提示固件未加载。此外,在之前的会话中上传的固件会一直保留到模块断电为止,因此即使删除了文件,在重启电脑或拔下适配器之前,它也可能继续工作。
Bluetooth 芯片设置
适配器页面上的 Bluetooth 芯片列表决定 BlueCaster 是否对适配器执行 Realtek 初始化(上传固件):
| 选项 | 含义 |
|---|---|
| 自动(默认) | 每次启动 BlueCaster 时根据检测到的适配器决定。已知的 Realtek 适配器会使用对应的芯片;其他适配器不执行 Realtek 初始化 |
| 非 Realtek | 从不执行 Realtek 初始化。如果“自动”无法识别你的适配器,Intel、Broadcom、CSR 等适配器请选择此项 |
| RTL8761BU、RTL8822CU…… | 指定的 Realtek 芯片。用于“自动”无法识别的 Realtek 适配器(使用自有 VID:PID 的 OEM 产品)。状态行会显示其 .bin 文件是否已在固件文件夹中 |
| Custom | 使用固件文件夹中的 custom_fw.bin 和 custom_config.bin |
不要为非 Realtek 适配器选择 Realtek 芯片或 Custom:BlueCaster 会尝试向其上传 Realtek 固件,适配器可能因此无法启动。
手动下载
- 从 linux-firmware/rtl_bt 下载与芯片组对应的固件和配置
.bin文件(如rtl8761bu_fw.bin和rtl8761bu_config.bin) - 将这两个文件放入 BlueCaster 固件文件夹(
%APPDATA%\BlueCaster\firmware,也可通过打开固件文件夹打开)
这些固件文件是通过 linux-firmware 项目分发的 Realtek 专有二进制文件,未包含在本仓库中。再分发条款请参阅 WHENCE。
推荐适配器
实际与 BlueCaster 配合使用过的适配器和耳机,以及相应的编解码器和报告:已验证的硬件。
| 芯片组 | 产品示例 | 说明 |
|---|---|---|
| Realtek | TP-Link UB500、RTL8761BU | 需要下载固件(见上文)。测试最充分 |
| Realtek | 笔记本电脑内置的 RTL8852BD(0BDA:B853) | linux-firmware 中没有它的固件:BlueCaster 从 Realtek 的 Windows 蓝牙驱动程序中读取 rtl8852bd_mp_chip_new.dat,因此请勿卸载该驱动程序(或将该文件放入固件文件夹)。尚未在实际硬件上测试 |
| CSR | 通用 CSR8510 适配器 | 开箱即用,无需固件 |
| Barrot | Bluetooth 5.4 / 6.0 适配器(33FA:0010、33FA:0012) | 使用 ROM 固件运行,无需固件。目前仅有一份用户报告 |
| Marvell | Microsoft Surface Pro / Surface Book 内置(88W8897) | 无需固件文件:Wi-Fi 驱动也会加载蓝牙固件,请保持 Wi-Fi 开启。尚未在实际硬件上测试 |
| Actions | ATS2851 适配器(10D7:B012) | 使用 ROM 固件运行,无需固件。它声称支持一些实际无法执行的命令,BlueCaster 会将其隐藏。尚未在实际硬件上测试 |
| Broadcom | ASUS BT400 (BCM20702) | 报告厂商类 FF/01/01 而非 Bluetooth 类 E0/01/01 的适配器(BCM20702 OEM 适配器)也能被检测到。使用 ROM 固件运行;如果固件文件夹中有可选的 PatchRAM .hcd 文件(如 BCM20702A1-0b05-17cb.hcd),会在启动时上传 |
| Intel | Intel 7260 / 3160 / 7265 / 3165 / 3168 / 8260 / 8265 / 9260 / AX200 / AX201 / AX210 / AX211 | 处于 bootloader 模式时(如冷启动后),需要将 linux-firmware intel/ 中对应的 ibt-*.sfi + ibt-*.ddc 放入固件文件夹,所需文件名会写在日志里(例如 ibt-0180-0041.sfi)。7260 / 3160 / 7265 / 3165 / 3168 由 ROM 运行,无需文件;同一文件夹中有对应的 ibt-hw-*.bseq 补丁时会加载 |
| MediaTek | MT7925、MT7922、MT7921、MT7902(AMD RZ717、RZ616、RZ608 等 Wi-Fi 网卡) | 需要该芯片的 BT_RAM_CODE_MT*_hdr.bin(例如 BT_RAM_CODE_MT7925_1_1_hdr.bin):如果装有 MediaTek 的 Windows Bluetooth 驱动程序,BlueCaster 会从中读取;否则请将 linux-firmware mediatek/ 中的该文件放入固件文件夹,所需文件名会写在日志里 |
| Qualcomm | QCA61x4、QCA9377(ROME)、WCN6855(FastConnect 6900) | 需要该芯片的 rampatch 和 NVM(例如 AthrBT_0x00000302.dfu 和 ramps_0x00000302_48.dfu):如果装有 Qualcomm 的 Windows Bluetooth 驱动程序,BlueCaster 会从中读取;否则请将 linux-firmware qca/ 中的文件(rampatch_usb_*.bin、nvm_usb_*.bin)放入固件文件夹,所需文件名会写在日志里。尚未在实际硬件上测试 |
| MediaTek、Qualcomm | 其他 MediaTek 芯片(MT7927)、其他 Qualcomm 芯片(QCA6290、WCN785x) | 不支持:需要 BlueCaster 所没有的固件加载程序(帮助添加支持) |
对于 LDAC 等高比特率编解码器,USB Bluetooth 5.0+ 适配器通常效果最好。
如果有多个适配器使用 WinUSB,BlueCaster 会使用找到的第一个。请只为 BlueCaster 所用的适配器保留 WinUSB。