Lavdeck 图标

Lavdeck

一款 Mac 菜单栏 App,可显示 DJI Mic Series Mobile RX 麦克风的状态,并控制其模式、增益和录音。

名称由 lav(lavalier mic,即领夹麦克风的简称)和 deck(取调音台之意)组合而成。

目前还没有发行版,请先从源代码构建 Lavdeck。

使用 Swift 编写开源(GPL-3.0)不进行任何网络连接

Lavdeck 是一个独立项目,并非由 DJI 开发,也与 DJI 无关联。

Lavdeck 的控制台正在以立体声录制两个麦克风,旁边是“录音”窗口,其中有一条两位说话人的录音及其文字稿

在菜单栏中查看两个麦克风的实时状态

Lavdeck 是一款免费开源的 macOS App,用于 DJI Mic Series Mobile RX 无线麦克风接收器。

将接收器插入 Mac,控制台就会显示两个发射器,以及每个麦克风的连接状态、实时电平、充电状态和固件。在同一个窗口中,你可以将接收器切换为单声道或立体声、在 −12 至 +12 dB 之间设置增益,以及进行录音。

Lavdeck 可以在录制麦克风的同时录制屏幕和摄像头,将每条录音保存在可搜索的“录音”窗口中,并运行插件来完成转写等任务。它通过 USB 直接与接收器通信,只发送四条命令,每条都已在硬件上验证:获取版本、获取功能、设置声道模式和设置增益。

控制台

点按菜单栏图标即可打开控制台。每个发射器都有一个通道条,接收器的控制项位于右侧。

  • 麦克风名称。点按即可为麦克风重新命名。无论这个麦克风连接到哪个通道位,名称都会跟随这个实体麦克风。
  • 待录或关闭。只有处于待录状态的麦克风才会被录制。
  • 连接指示灯、12 格电平表、充电中或接收器报告的电量,以及固件版本;如果某个麦克风的固件比另一个旧,会加以标记。
  • 增益推子(−12、−6、0、+6 和 +12 dB)、单声道和立体声(TX1 在左声道,TX2 在右声道)、屏幕、摄像头以及录制。

在单声道模式下,接收器会在信号传到 Mac 之前将两个麦克风混合,因此两个电平表显示的都是混合后的信号。底栏显示降噪设置,降噪可通过接收器上的 O、L、H 开关设置。

控制台:名为 Host 和 Guest 的两个通道条,均处于待录和已连接状态,并带有电平表;Host 的电量为“高”,Guest 正在充电;固件版本为 02.03.17;增益推子位于 0 dB;已选择立体声;“屏幕”已打开;以及“录制”按钮

识别麦克风

点按识别麦克风,然后对着其中一个麦克风说话。它的通道条会亮起,横幅会显示其名称。你还可以顺便点按通道条上的名称,为这个麦克风命名。

接收器只有在立体声模式下才会分别报告电平,因此横幅打开期间,Lavdeck 会将接收器切换到立体声;点按完成后或 45 秒后会再切换回来。

识别模式:Host 的通道条显示绿色轮廓,横幅显示“这是 Host(TX1)”

录制

点按录制、在任意 App 中按下 ⌥⌘R,或者轻点任一发射器上的连接按键,即可开始或停止一条录音。录制期间,每个通道条会显示正在写入的文件名,顶部显示已录制时间。

音频为 48 kHz、24 位的 WAV,或 M4A(256 kbps 的 AAC),按日期存放在 ~/Recordings/Lavdeck 下的文件夹中,除非你选择了其他位置。如果在录制期间退出 Lavdeck,它会先停止录制并保存文件。

模式文件
立体声,两个麦克风均待录11.05.09 Stereo.wav,以及 11.05.09 TX1.wav 和 11.05.09 TX2.wav(仅限 WAV;可关闭单独的文件)
单声道11.05.09 Mix.wav
仅 TX1 或 TX2 待录11.05.09 TX1.wav(Lavdeck 会切换到立体声,只保留该麦克风的声道)
录制中的控制台:左侧 Host 和右侧 Guest 的名称牌变为红色,各自显示正在写入的文件名;已录制时间为 00:12:47,“屏幕”已亮起

屏幕和摄像头

录制前打开屏幕、摄像头或两者,录音中就会包含视频。

  • 屏幕录制的是主显示器,帧率为 30 或 60 fps,格式为 HEVC 或 H.264;如有需要,还可将 App 的声音作为第二条音轨录入。Lavdeck 自己的窗口和摄像头预览不会被录入。
  • 默认摄像头会以其最大的横向尺寸录制,宽度最大 3840 像素。
  • 视频会先于音频开始录制,因此画面从录音的第一秒起就有,Lavdeck 还会记录每个文件相对于音频的起始位置。
  • 录制结束后,Lavdeck 会生成一个画中画视频:屏幕画面加上角落里的摄像头画面,并配有麦克风音频。摄像头画面所在的角落、大小和形状可在“设置”›“视频”中调整。

“录音”窗口

“录音”窗口会列出每条录音及其日期、时长、视频标记(如有视频)、所用麦克风和文字稿的开头几个词。你可以按任意栏排序,筛选出带视频或有两位说话人的录音,还可以搜索文字稿、麦克风名称和日期。点按文字稿中的某一行即可从该处开始播放。将录音移到废纸篓时,其所有文件都会一并移入,因此可用访达的“放回原处”恢复。

“录音”窗口:18 条录音及其日期、时长、视频标记、麦克风和文字稿开头;所选录音显示其音频播放器、文件,以及带时间戳的 Host 和 Guest 文字稿

插件

插件是一个文件夹,其中包含一个 plugin.json 文件和一个可用任何语言编写的程序;该程序读取 JSON 请求,并以 JSON 行的形式报告进度和结果。Lavdeck 不自带转写插件,因此文字稿来自你安装的插件。插件安装后默认处于关闭状态,并且以你的身份运行,所以请只安装你信任的插件。协议说明见 docs/PLUGINS.md。

类型用途
事件录音结束时自动运行,例如对录音进行转写
操作可在“录音”窗口中对任意录音运行,无论新旧
采集与麦克风同时录制其他信号源(例如第二台摄像头),并与音频逐帧对齐
App添加一个在 … 中打开按钮,用于在配套 App(例如编辑器)中打开录音

隐私与权限

插件是独立的程序,因此安装前请先确认插件的作用。

  • Lavdeck 不进行任何网络连接。
  • 麦克风只在“录制”和“停止”之间打开。屏幕和摄像头只在录制期间、且仅在“屏幕”或“摄像头”打开时才会被录制。
  • 它从一个封闭列表构建四条接收器命令,无法发送其他任何内容,因此不可能触及接收器的固件更新通道。详情见 docs/PROTOCOL.md。
  • 录音保存在 ~/Recordings/Lavdeck 或你选择的文件夹中。
Lavdeck 在 Mac 上保存的内容
内容位置
录音、录音的 .take.json 文件以及视频(如有)~/Recordings/Lavdeck 或你选择的文件夹
设置,包括按蓝牙 ID 存储的麦克风名称~/Library/Preferences/io.github.piedol.lavdeck.plist
每当发射器的充电状态或电池代码变化时记录的一行~/Library/Logs/Lavdeck/battery.log
已安装的插件~/Library/Application Support/Lavdeck/Plugins

获取 Lavdeck

构建版本将以 Lavdeck-macOS-arm64.zip 的形式发布在发行版页面上,已签名并经过公证。在此之前,请从源代码构建 Lavdeck。

系统要求

接收器
DJI Mic Series Mobile RX
Mac
Apple 芯片,macOS 15 或更高版本
连接
支持数据传输的 USB,可直接连接或通过集线器连接
构建所需
Xcode 16 或更高版本,或者 Xcode 命令行工具和 Swift 6

兼容性

Mobile RX 搭配 DJI Mic Mini 发射器
已测试
Mobile RX 搭配 Mic Mini 2、Mic 2 或 Mic 3 发射器
很可能可用;未测试
其他 DJI Mic 接收器
未知;欢迎反馈

Lavdeck 已在 macOS 26 上测试。它无法更新麦克风固件。如果某个麦克风的固件比另一个旧,控制台会加以标记,你需要使用 DJI 的 App 进行更新。

从源代码构建

git clone https://github.com/piedol/lavdeck.git
cd lavdeck && scripts/build-app.sh
ditto build/Lavdeck.app /Applications/Lavdeck.app &&
  open /Applications/Lavdeck.app

scripts/build-app.sh 会使用 LAVDECK_SIGN_IDENTITY、.signing-identity 文件或钥匙串中的第一个 Developer ID Application 证书为 App 签名。如果都没有,它会进行临时(ad hoc)签名,每次构建后 macOS 都会重新请求麦克风、摄像头和录屏权限。钥匙串中的任何签名身份都可以避免这种情况,包括 Xcode 为你的 Apple 账户创建的免费 Apple Development 证书。

首次启动

  1. 插入接收器,然后点按菜单栏图标。
  2. 首次录音时,macOS 会请求麦克风权限。
  3. 首次打开摄像头或屏幕时,macOS 会请求摄像头权限以及“录屏与系统录音”权限。允许录屏后,请退出并重新打开 Lavdeck 一次。
  4. 如果想在登录时启动 Lavdeck,请在“设置”›“通用”中打开登录时打开。

Lavdeck 没有程序坞图标。如需移除,请按照 README 中的卸载步骤操作。

常见问题

Lavdeck 是免费开源的吗?

是的。Lavdeck 可免费下载和使用,其源代码以 GNU 通用公共许可证 v3.0 或更高版本发布在 GitHub 上。

哪些 DJI 接收器可以搭配 Lavdeck 使用?

DJI Mic Series Mobile RX。它已使用 DJI Mic Mini 发射器测试过。Mic Mini 2、Mic 2 和 Mic 3 发射器很可能也能使用,但尚未测试;其他 DJI Mic 接收器的情况未知。

Lavdeck 支持哪些 Mac?

搭载 Apple 芯片并运行 macOS 15 或更高版本的 Mac,接收器需通过支持数据传输的 USB 连接,可直接连接或通过集线器连接。

Lavdeck 会连接互联网吗?

不会。Lavdeck 不进行任何网络连接,你的录音保存在 ~/Recordings/Lavdeck 或你选择的文件夹中。

如何安装 Lavdeck?

目前需要使用 Xcode 16 或更高版本,或者 Xcode 命令行工具和 Swift 6,从源代码构建。下载文件将发布在发行版页面上。

Lavdeck 与 DJI 有关联吗?

没有。Lavdeck 是一个独立项目,并非由 DJI 开发,也与 DJI 无关联,并且不含任何 DJI 代码。

许可证

Lavdeck 是采用 GNU 通用公共许可证 v3.0 或更高版本的自由软件。欢迎在 GitHub 上提交议题和拉取请求,尤其欢迎使用其他 DJI 接收器或发射器的用户参与。

可在任何场合使用(包括工作中),也可阅读、修改和分享源代码。如果分发修改版本,须以相同的许可证公开其源代码。

Lavdeck 仅使用 Apple 的框架,不含任何 DJI 代码。