Project Icon

whisper-diarization

基于OpenAI Whisper的音频转录和说话人分离工具

whisper-diarization项目整合了OpenAI Whisper的语音识别技术和先进的说话人分离方法。该工具首先进行人声提取,然后利用Whisper生成转录文本,并通过WhisperX优化时间戳。结合MarbleNet和TitaNet等技术,它能够准确识别多个说话人,最终输出包含说话人标识的精确转录结果。这一开源解决方案特别适合需要处理多人对话音频的场景,为音频转录和分析提供了强大支持。

使用OpenAI Whisper进行说话人分类

GitHub 星标 GitHub 问题 GitHub 许可证 Twitter 在Colab中打开

基于OpenAI Whisper的说话人分类流程 我要感谢@m-bain提供的批量Whisper推理,@mu4farooqi提供的标点符号重新对齐算法

drawing 如果您欣赏我对社区的贡献,请在GitHub上为该项目点星(见右上角)!

这是什么

这个仓库将Whisper的ASR能力与语音活动检测(VAD)和说话人嵌入相结合,以识别Whisper生成的转录中每个句子的说话人。首先,从音频中提取人声以提高说话人嵌入的准确性,然后使用Whisper生成转录,然后使用WhisperX校正和对齐时间戳,以帮助最小化由于时间偏移导致的分类错误。然后将音频传入MarbleNet进行VAD和分段以排除静音,然后使用TitaNet提取说话人嵌入以识别每个分段的说话人,然后将结果与WhisperX生成的时间戳关联,以根据时间戳检测每个单词的说话人,然后使用标点模型重新对齐以补偿微小的时间偏移。

WhisperX和NeMo参数已编码到diarize.py和helpers.py中,我稍后会添加CLI参数来更改它们

安装

需要预先安装FFMPEGCython作为先决条件

pip install cython

sudo apt update && sudo apt install cython3
# 在Ubuntu或Debian上
sudo apt update && sudo apt install ffmpeg

# 在Arch Linux上
sudo pacman -S ffmpeg

# 在MacOS上使用Homebrew (https://brew.sh/)
brew install ffmpeg

# 在Windows上使用Chocolatey (https://chocolatey.org/)
choco install ffmpeg

# 在Windows上使用Scoop (https://scoop.sh/)
scoop install ffmpeg

# 在Windows上使用WinGet (https://github.com/microsoft/winget-cli)
winget install ffmpeg
pip install -r requirements.txt

使用方法

python diarize.py -a 音频文件名

如果您的系统有足够的显存(>=10GB),您可以使用diarize_parallel.py代替,区别在于它与Whisper并行运行NeMo,这在某些情况下可能有益,结果是相同的,因为两个模型是相互独立的。这仍然是实验性的,所以请预料到错误和锐利的边缘。欢迎您的反馈。

命令行选项

  • -a 音频文件名:要处理的音频文件名
  • --no-stem:禁用源分离
  • --whisper-model:用于ASR的模型,默认为medium.en
  • --suppress_numerals:以发音字母而不是数字转录数字,提高对齐准确性
  • --device:选择使用哪个设备,如果可用则默认为"cuda"
  • --language:手动选择语言,在语言检测失败时有用
  • --batch-size:批量推理的批量大小,如果内存不足则减小,设为0表示非批量推理

已知限制

  • 尚未解决重叠说话人的问题,一种可能的方法是分离音频文件并仅隔离一个说话人,然后将其输入流程,但这需要更多的计算
  • 可能存在一些错误,如果遇到任何问题,请提出问题。

未来改进

  • 为SRT实现每句话的最大长度

致谢

特别感谢@adamjonas对这个项目的支持 这项工作基于OpenAI的WhisperFaster WhisperNvidia NeMoFacebook的Demucs

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号