当前位置: 首页 > news >正文

aeneas:音频和文字自动对齐,支持38种语言

文章目录

  • aeneas:音频和文字自动对齐,支持38种语言
    • 它能干什么
    • 安装和使用
    • 几个细节
    • 局限性

aeneas:音频和文字自动对齐,支持38种语言

做有声书、字幕、语音研究的人,应该都碰过这个问题:一段音频,一份文字稿,怎么把每一句话和它在音频里的时间位置对应起来?手动做?几百页的书能累死人。靠 ASR 语音识别?精度不够,还得人工校对。

aeneas 就是专门解决这个的。它是一个 Python/C 库,能自动把文字片段和音频做"强制对齐"(forced alignment),输出每个文字片段对应的起止时间戳。

举个例子,给它一段莎士比亚的十四行诗音频和对应的文字,aeneas 会输出这样的结果:

From fairest creatures we desire increase, => [00:00:02.640, 00:00:05.880] That thereby beauty's rose might never die, => [00:00:05.880, 00:00:09.240] But as the riper should by time decease, => [00:00:09.240, 00:00:11.920]

每一句话精确到毫秒,直接可用。

它能干什么

aeneas 的核心能力就是音频文字对齐,但围绕这个核心,它做了不少实用功能。

支持 38 种语言,包括中文、英文、日文、法文、德文、阿拉伯文等等。只要 eSpeak 或 Festival 这些 TTS 引擎支持的语言,aeneas 都能处理。

输出格式很全:做研究用的 Audacity、ELAN、TextGrid 格式,做字幕的 SRT、WebVTT、TTML 格式,做电子书的 SMIL 格式,还有 JSON、CSV、XML 这些通用格式。基本上下游需要什么格式,它都能输出。

输入格式也没限制,音频方面 ffmpeg 能读的格式它都认。文字方面支持纯文本、XML、XHTML,还能从 XML 的 id 和 class 属性里提取文字内容。

安装和使用

安装流程很标准。装好 Python、FFmpeg、eSpeak 三件套,然后 pip 装 numpy 和 aeneas 就行。Mac 和 Windows 有一键安装包,Linux 有 deb 包。实在搞不定环境的,官方还提供了 VirtualBox 虚拟机镜像,开箱即用。

用法分两种场景。

单个任务直接命令行跑:

python -m aeneas.tools.execute_task \ audio.mp3 \ text.txt \ "task_language=eng|os_task_file_format=json|is_text_type=plain" \ map.json

第三个参数是配置字符串,控制输入输出格式和处理选项。看起来参数多,但文档里有详细说明,照着配就行。

批量任务用 job 模式,把多组音频文字打包成 zip,配好 config 文件,一条命令全部处理完。适合有大量文件要对齐的场景。

几个细节

aeneas 用了 MFCC(梅尔频率倒谱系数)和 DTW(动态时间规整)做核心算法,而且这部分是用 C 写的 Python 扩展,处理速度比纯 Python 快很多。

TTS 引擎方面,默认用 eSpeak,但也支持 Festival、AWS Polly、Nuance TTS API 等引擎。换更好的 TTS 引擎能提升对齐精度,尤其是做单词级别对齐的时候。

说到单词级别对齐,aeneas 原本是按句子或段落级别设计的。用它做单词级对齐时,可以开启 MFCC 非语音掩码、用多层级对齐模式、换更好的 TTS 引擎来提升效果。

它还能从 YouTube 下载音频直接处理,支持递归对齐(先对齐段落,再对齐句子,最后对齐单词),参数可以在运行时调整。

局限性

音频和文字要匹配,如果文字里有大段多余内容或者音频里有大段无关内容,出来的结果会不对。它假设输入是语音,不适合歌曲字幕。内存方面也有要求,4GB 内存大概能处理 2 小时的音频,16GB 能处理 10 小时。

这个项目 Star 数不到 3000,不算热门,但在音频文字对齐这个细分领域,它是少数几个开箱即用的工具之一。做有声书制作、语音研究、字幕生成的人,值得看看。

3000,不算热门,但在音频文字对齐这个细分领域,它是少数几个开箱即用的工具之一。做有声书制作、语音研究、字幕生成的人,值得看看。

http://www.jsqmd.com/news/1078674/

相关文章:

  • Redis 缓存穿透与雪崩问题解决方案
  • 【设计文档+源码+数据集】基于YOLOv8+Flask的罂粟识别系统
  • 小chunk和大段落,SproutRAG用注意力组起来了
  • 最新量化工具怎么选,先看自己的能力短板
  • 河南省人工智能专业综合实力排名2026 最新
  • 构建个人数字身份标识系统:从jfm608实践看统一管理与安全防护
  • 有限域与模逆元:破解Diffie-Hellman的基础数学
  • 【共创季稿事节】 鸿蒙原生 ArkTS 布局探秘:Scroll + Snap 分页对齐滚动深度解析
  • 关于的将本地项目发布到互联网上的相关的内容及链接,内容不全面,供个人用
  • 深入理解 Java 反射机制:赋予程序“自省”与“动态”的能力
  • 社区贡献者故事,我在 Github 上为 ROCm 生态修复的那些 Bug
  • Transformer架构拆解:从张量形状到可运行代码的实操指南
  • 【存档】MTP技术理论学习路线
  • 五大热门工科专业,90%的家长都在用错误的方式排序
  • 三步构建缠论量化系统:从理论到实战的完整指南
  • SEO搜索引擎优化深度指南,从0到1完全解析
  • 502/503 与源站过载:CDN 绿、源站红时的判断与修复路径
  • 解锁养老新方式:AI 当私人医生,守护长辈健康
  • I2C通信中的ACK与NACK详解
  • Webshell攻防全解析:从文件上传到内存马的防御实践
  • 【2026】超详细ANSYS2024安装保姆级教程,仿真分析一步到位,环境配置和使用指南,看完这一篇就够了
  • 丝路筑展寻良匠:2026西安展厅设计搭建公司实力深度甄选
  • 字节二面:Agent 路由错了,最高分那个不是该选的应该怎么办?我说:用置信度第二高的。他摇了摇头:这是拍脑袋,生产环境得靠降级机制
  • 工业级许可证管理器设计:从安全校验到全生命周期管理
  • IwaraDownloadTool:3分钟快速上手,高效下载Iwara视频的终极解决方案
  • 这次终于选对了!2026年最值得用的专业降AI率网站
  • Video-Downloader:一个能下载各平台视频的桌面工具
  • VibeCoding 时代,程序员应该做什么产品?——副业、变现与成本深度分析
  • 3步搭建Sunshine游戏串流服务器:跨平台游戏共享终极指南
  • 专业钣金加工厂家推荐:深圳机汇五金一站式加工服务