# Whisper 双声道采访转录：左右麦克风分轨并保留原时间

Whisper 双声道采访转录通过独立输入、具体脚本和逐项回听完成。本页附 CPU tiny/int8 真实 ASR 结果，保留误识别，人工原文单独保存。

## 1. 检查真正的双声道源

input.wav 左声道是原创提问、右声道是回答，使用不同系统音色且不同时讲话。它演示双麦克风分轨，不是模型识别人身份。先戴耳机确认左右录音与原始起点。

## 2. 分离 L 和 R，避免先混成 mono

运行 split.py，按原样本序号把两轨写成 channel-0.wav 和 channel-1.wav；两条都保持完整时长。若提前删除各自静音，再合并时间将失去共同零点。

## 3. 分别转录两条轨道

两轨使用相同模型参数。实际 JSON 的时间基于完整轨道，右轨前方静音不会让回答起点变成零秒；保留 channel 字段再合并。

```sh
python split.py input.wav
python run.py channel-0.wav --out channel-0.json --language en --words
python run.py channel-1.wav --out channel-1.json --language en --words
python check.py
```

## 4. 按时间排序，保留重叠情况

把 segments 合并成 channel-transcript.json，channel_0/1 表示录音来源。自己的多人共享同一麦克风时，声道不能直接映射为固定说话人；重叠片段要显式记录。

## 5. 回听会议时间和房间号码

素材中的 ten thirty 与 two hundred and five 专门用于数字检查。先比较 expected 文本与实际识别，再填写 reviewed.csv；不能只核对总字数。

## 6. 导出分轨稿与待确认人名

把角色名称留作人工确认字段，不从声音自动认出真实人名。需要同一轨多人分离时转到 WhisperX 页，本页只验证明确双轨输入。

## 7. 下载材料、检查负例与继续操作

解压素材包后先运行 python check.py，再运行 python check.py --self-test。前者读取真实 WAV / JSON / SRT 与源 hash；后者拒绝损坏 WAV、倒置时间、越界时间和缺失词时间。文件通过不代表文字、情绪或说话人判定已通过。

## 来源与范围

见 PROVENANCE.md。WhisperX/CosyVoice 推理本次未执行，系统音频为原创练习输入。

- https://github.com/SYSTRAN/faster-whisper
- https://github.com/SYSTRAN/faster-whisper/blob/master/faster_whisper/audio.py
- https://huggingface.co/Systran/faster-whisper-tiny
