如何把会议录音转成可用的会议纪要
录下来的会议就是一个没人打开的文件夹。所有人都记得当时做了决定,却没人记得是哪一个,而为了找到它重看四十分钟录像——这件事不会发生。转录把录音变成几秒钟就能检索、引用和总结的东西。
转录带来的四点改变
光有录音做不到的四件事:
- 跨会议检索。一次查询就能找出所有提到某个客户、某个截止日期或某项预算的讨论。
- 真正写出来的纪要。决议和待办从文字里提取,而不是指望有人在会上边听边打字。
- 缺席者的上下文。读一份记录只要看录像的五分之一时间。
- 可长期保存的记录。文字能跨平台迁移,视频档案通常做不到。
录音到底在哪里
写代码之前先把文件找到。各家存法不同:
| 平台 | 去哪里找 | 得到什么 |
|---|---|---|
| Zoom | 本地录制目录,或网页账号里的云录制 | mp4 加一个独立的 m4a 音轨 |
| Microsoft Teams | OneDrive 或 SharePoint,会议聊天里有链接 | mp4 |
| Google Meet | 云端硬盘的 Meet Recordings 文件夹 | mp4 |
Zoom 本地录制最省事:纯音频文件本来就在,不需要再转换。
第一步:提取并压小音频
一小时的会议视频是几个 GB,同样一小时的语音转成 mp3 只有 25 MB 左右。会议内容以人声为主,所以单声道、较低码率不会丢掉任何有用的东西:
ffmpeg -i meeting.mp4 -vn -ac 1 -ar 16000 -b:a 48k meeting.mp3
16 kHz 单声道正是识别模型内部使用的规格。文件变小之后,两小时的会议也只要两个请求。
第二步:带时间轴地转录
会议场景建议用 verbose_json 而不是纯文本:分段里带有起止时间,这正是之后能跳回录音的依据。
from openai import OpenAI
client = OpenAI(base_url="https://voicesscribe.com/v1", api_key="your key")
with open("meeting.mp3", "rb") as f:
r = client.audio.transcriptions.create(
model="whisper-1", file=f,
response_format="verbose_json",
prompt="Weekly product sync: roadmap, Q3 release, Kubernetes migration",
)
for s in r.segments:
print(f"[{int(s.start)//60:02d}:{int(s.start)%60:02d}] {s.text.strip()}")
prompt 是放公司内部词汇的地方:项目名、内部缩写、人名。会议里满是通用模型从没见过的术语,一行提示就能修好其中大部分。
第三步:把转录变成纪要
转录文本只是原料。真正有用的产物是带决议和责任人的简短总结,这交给语言模型:文字进去,结构化纪要出来。
notes = llm(f"""Here is a meeting transcript. Return:
1) a summary in five bullet points,
2) decisions made,
3) action items in the form "owner — task — deadline".
Quote only what is in the text; do not invent items.
{transcript}""")
两条规则保证结果可信:明确要求「只根据文本内容」,以及保留时间轴,这样任何一条结论都能回到录音里核对。
谁说了什么
诚实的回答是:单个混音音轨不会带说话人标签。两个实用的绕行办法:
- 分轨录制。Zoom 可以把每位参会者录成独立音频文件。逐个转录,就免费得到了完美的说话人区分。
- 开场点名。如果第一分钟每个人报一下自己的名字,模型和读者都会更容易对上号。
对多数会议纪要来说,谁说的没有决议本身重要——在确认真正需要之前,不必为此过度设计。
长会议与成本
按音频分钟计费,所以两个抓手很明确:不转录不需要的部分,也不要把静音发过去。
# 把长会议切成半小时一段
ffmpeg -i meeting.mp3 -f segment -segment_time 1800 -c copy part%03d.mp3
周期性的例会通常值得整场转录;两小时的工作坊往往只转录真正做决定的那一段更划算。一个好用的经验法则:先整月全部转录,看清大家实际在搜什么,再收窄范围。
用你自己的录音试一试。 注册只需一分钟,免费额度足够判断识别质量。
免费获取 API 密钥常见问题
可以直接提交 mp4 文件吗?
请先用 ffmpeg 提取音轨。视频大几十倍,而画面对识别没有任何作用,直接传只是在为上传时间买单。
一小时的会议要转多久?
最多几分钟:处理速度快于实时,把长录音切段之后还可以并行提交。
转录结果会标出说话人吗?
单个混音音轨不会。把参会者录成独立音频文件再逐个转录,就能得到精确的说话人区分。
怎样保证内部术语写对?
通过 prompt 参数传进去:把项目名、缩写和人名列成一行,识别效果会明显改善。
录音会被保存吗?
录音和转录文本保存不超过 24 小时,供你从客户后台下载结果,之后自动删除。
相关阅读
- 从视频和网络研讨会自动生成 SRT 与 VTT 字幕 — 如何从录播视频或网络研讨会得到带时间轴的现成字幕:提取音轨、SRT 与 VTT 的区别、代码示例,以及常见问题的解决办法。
- 如何把通话录音转成文字 — 分步教程:几分钟内通过 API 把电话录音转成文字,包含 Python 和 C# 代码示例、响应格式说明,以及常见错误的处理办法。
- 如何提高语音识别准确率:八个实用方法 — 真正能改善转录质量的八件事:音频预处理、指定语种、prompt 词表、切分策略、响应格式,以及如何测量字错率。