readbeyond/aeneas

aeneas is a Python/C library and a set of tools to automagically synchronize audio and text (aka forced alignment)

解決的問題

aeneas 是為了解決「強制對齊(forced alignment)」問題而設計的,這是指自動將包含片段清單的文本檔案與朗讀該文本的音訊檔案進行同步的過程。這讓使用者能夠建立一個精確的時間戳地圖,標示出音訊錄音中每個文字片段被說出的時間點。

作法原理

此工具使用 Text-to-Speech (TTS) 引擎(如 eSpeak、AWS Polly 或 Nuance)合成文字的參考音訊版本。接著,透過 MFCC(梅爾頻率倒譜係數)與 DTW(動態時間規整)將此合成音訊與實際朗讀音訊進行比對,以精確判斷每個文字片段的時間區間。

適用對象

主要針對研究人員、數位出版者(例如用於 EPUB 3)、以及需要在不同細緻程度(從單一字詞到完整段落)下對齊文字與音訊的字幕創作者(SRT、VTT)。

主要特色

  • 廣泛格式支援:支援以 JSON、SRT、VTT、SMIL 及 TextGrid 等多種格式輸出同步地圖。
  • 多語言支援:已確認在 38 種不同語言中正常運作。
  • 彈性細緻程度:支援從字詞級到段落級的對齊。
  • 強韌性:針對背景雜訊、偶發尖峰與微小發音錯誤具有良好的容錯能力。
  • 批次處理:可透過工作容器處理多組音訊/文字配對。
  • 整合性:內建多個 TTS 引擎的封裝,並支援從 YouTube 下載音訊。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案