Python实时说话人Diarization免费方案咨询及Mac M1安装问题解决
解决Mac M1上Diart安装的hmmlearn编译问题
- 先通过Homebrew安装编译依赖:
brew install openblas cmake - 设置环境变量,让pip编译时找到OpenBLAS:
export OPENBLAS=/opt/homebrew/opt/openblas/lib/libopenblas.dylib export CFLAGS="-I/opt/homebrew/opt/openblas/include" export LDFLAGS="-L/opt/homebrew/opt/openblas/lib" - 重新编译安装hmmlearn后再安装Diart:
pip install hmmlearn --no-binary :all: pip install diart
如果上述方法无效,改用conda安装预编译的hmmlearn版本:
conda install -c conda-forge hmmlearn pip install diart
免费实时双用户说话人Diarization替代方案
1. Pyannote.audio
基于PyTorch的开源库,支持实时说话人分割与 diarization,无hmmlearn依赖。适配双用户场景的流程:
- 获取预训练的
SpeakerSegmentation和SpeakerEmbedding模型(需同意学术使用协议) - 对WebSocket传入的音频流按固定帧长切割
- 用分割模型检测语音边界,结合embedding模型提取特征,通过简单聚类区分两个用户
2. Webrtcvad + SpeechBrain
轻量级组合方案,适合资源有限的后端:
- 用
webrtcvad过滤音频流中的非语音片段 - 用SpeechBrain的预训练说话人识别模型提取语音段的特征向量
- 针对双用户场景,用阈值判断区分不同说话人的特征,实现实时区分
3. TorchAudio实时说话人分割
TorchAudio内置轻量级实时说话人分割工具,基于预训练MLP模型:
- 直接处理流式音频,输出每帧对应的说话人标签
- 无需额外复杂依赖,适合快速搭建双用户实时区分功能
内容的提问来源于stack exchange,提问作者Faris
相关产品推荐
相关产品推荐

