世界を動かす技術を、日本語で。

Abogen – EPUB、PDF、テキストからオーディオブックを生成する

2025年8月10日原文(github.com)

概要

  • Abogen はePub、PDF、テキストファイルを高品質な音声と字幕に即時変換するツール
  • Kokoro-82M 音声モデルを活用し、自然なテキスト読み上げを実現
  • インストール方法や使い方が Windows/Mac/Linux /Dockerに対応
  • カスタムボイス作成、バッチ処理、メタデータ追加 など多彩な機能
  • 多言語・多フォーマット対応で、オーディオブックや動画ナレーション用途に最適

Abogen概要

  • Abogen はテキストファイル(ePub/PDF/TXT)を 高品質な音声と同期字幕 に変換できるツール
  • Kokoro-82M モデル採用による自然な音声生成
  • Instagram、YouTube、TikTok などのナレーションやオーディオブック作成に最適
  • 変換速度は 数千文字を数秒で処理 可能
  • 字幕生成 も細かく設定可能(文単位、語単位など)

インストール方法

  • Windows

    • espeak-ng のインストールが必須
    • 【スクリプト使用】リポジトリをダウンロードし WINDOWS_INSTALL.bat を実行
      • 依存関係やPythonも自動インストール
    • 【pip使用】仮想環境作成後、 pip install abogen
      • NVIDIA GPUはCUDA対応torchをインストール
      • AMD GPUはWindows未対応、Linux推奨
  • Mac

    • brew install espeak-ng でespeak-ngを導入
    • 仮想環境を作成し、 pip3 install abogen
  • Linux

    • ディストリビューションごとに espeak-ng をインストール
    • 仮想環境作成、 pip3 install abogen
    • NVIDIA GPUは追加設定不要
    • AMD GPUはtorchのアンインストールとROCm対応torch再インストールが必要
  • トラブル対策

    • PATH エラー時はパスを追加
    • Pythonバージョン非対応エラー時は pyenv でバージョン管理

起動方法

  • pipインストール時 :コマンドラインで abogen を実行
  • Windowsインストーラ利用時 :ショートカットから起動、または python_embedded/Scripts/abogen.exe を直接実行

基本的な使い方

  • ePub、PDF、テキストファイルを ドラッグ&ドロップ または内蔵エディタで入力
  • 音声速度、ボイス選択、字幕スタイル、出力形式、保存先 を設定
  • Start ボタンで変換開始
  • バッチ処理 やキュー追加も可能

主な設定項目

  • 入力ボックス :ファイルのドラッグ&ドロップやエディタ入力
  • キュー処理 :複数ファイルの一括変換、ファイルごとに個別設定保持
  • 音声速度 :0.1x~2.0xまで調整可能
  • ボイス選択 :言語コード+性別(例:a=American English, m=男性)
  • ボイスミキサー :複数ボイスをミックスしカスタムボイス作成
  • 字幕生成 :文単位、語単位、カンマ区切りなど細かく選択
  • 出力音声形式 :WAV、FLAC、MP3、OPUS、M4B(チャプター対応)
  • 字幕形式 :SRT、ASS(ワイド/ナロー/センタリング)に対応
  • 改行置換 :1行改行をスペースに変換しテキスト整形
  • 保存先 :入力ファイル横、デスクトップ、任意フォルダから選択

電子書籍用オプション

  • チャプター指定 :ePub/PDFの特定チャプターやページを選択
  • チャプターごとに保存 :各章を個別音声ファイルとして出力
  • 統合版作成 :全チャプター結合音声ファイル生成
  • プロジェクトフォルダ保存 :メタデータ付きで一括管理

メニューオプション

  • テーマ変更 :システム/ライト/ダーク
  • 字幕1エントリー最大語数設定
  • ログウィンドウ最大行数設定
  • 個別チャプター音声形式選択
  • デスクトップショートカット作成
  • 設定/キャッシュディレクトリオープン
  • キャッシュクリア
  • 起動時アップデートチェック
  • Kokoroのインターネットアクセス制限 (オフライン利用向け)
  • 設定リセット

ボイスミキサー

  • 複数の 音声モデルを合成 し、独自のカスタムボイスを作成可能
  • 重み付け調整・プロファイル保存が可能
  • 独自・個性的な音声生成が可能

キュー(バッチ)モード

  • 複数ファイルを一括処理 できるキュー機能
  • 各ファイルの設定は追加時の状態を保持
  • メインウィンドウの設定変更は既存キューには影響なし
  • ファイルごとの設定は マウスオーバー で確認可能

チャプターマーカーとメタデータタグ

  • <<CHAPTER_MARKER:章タイトル>> タグでチャプター分割・再処理が容易
  • <<METADATA_TITLE:タイトル>> などのタグでM4B用メタデータを埋め込み可能
  • ePub/PDF変換時は自動付与、テキストファイルでも手動追加可能

対応言語・ボイス

  • American English, British English, Spanish, French, Hindi, Italian, Japanese, Brazilian Portuguese, Mandarin Chinese など
  • 日本語・中国語は追加パッケージ(misaki[ja]/misaki[zh])が必要
  • 詳細はKokoroの VOICES.md、サンプル音声は SAMPLES.md 参照

MPV設定例

  • MPV プレイヤー推奨、音声ファイルでも字幕表示が可能
  • mpv.conf
    • save-position-on-quit
    • keep-open=yes
    • sub-ass-override=no
    • sub-margin-y=50
    • sub-margin-x=50
    • audio-channels=auto
    • audio-samplerate=48000
    • volume-max=200

Dockerでの利用

  • リポジトリをダウンロード し、abogenフォルダでDockerイメージをビルド
  • 【Windows】docker run --gpus all abogen
  • 【Linux/Mac】docker run --gpus all abogen
  • 5800番ポート でWebブラウザアクセス、 5900番ポート でVNC接続可能
  • /sharedディレクトリ でホスト⇔コンテナ間のファイル共有
  • 既知の問題 :オーディオプレビュー不可、設定/キャッシュディレクトリオープン不可

類似プロジェクト

  • audiblez :電子書籍からオーディオブック生成(CLI/GUI対応)
  • autiobooks :epub自動変換
  • pdf-narrator :PDF/EPUBのオーディオブック化
  • epub_to_audiobook :Audiobookshelf向け最適化変換
  • ebook2audiobook :電子書籍から音声生成

Hackerたちの意見

デモ動画には音声が入ってないみたいだね!少なくとも、ffmpegやFirefoxが使ってるやつでは認識できないみたい。

Safariでは音が聞こえるよ。

こっちも同じ、動画に音声が入ってない。

こちらもそうだけど、Chromeで開いたら動いたよ。なんか変なエラーだね。音声付きの埋め込みmp4がブラウザによって違うなんて思わないよね。

そうなんだ、ローカルのKokoroインスタンスを動かしてみたけど、Firefoxでは動かないね。これ、裏でKokoroを使ってるんだ。

おそらく、24kHzモノPCMという変わった音声フォーマットと、WebMコンテナに無理やり入れられたせいだね。WebMは公式にはVorbisとOpusしかサポートしてないから。著者は「より高品質」のffmpegコマンドラインを使って作ったみたいだけど、最終的な拡張子が「webm」になってるから、説明されている「より多くのデバイスに対応したMP4ファイル」とは逆のものができちゃったみたい。 https://github.com/denizsafak/abogen/tree/main/demo#for-high...

ありがとう!Waterfoxに何か問題があると思ってたけど、(長い)動画のURLをターミナルに貼り付けたら、mpvで音声付きで再生できたよ。

READMEの「似たプロジェクト」セクションに書いてあったCLIアプリのKokoro TTSを使ってるよ。モデルは速いし、小さいわりにクオリティもすごくいい。ただ、いくつか問題があって、a) 文末のピリオドと「Mr.」や「Mrs.」の略語のピリオドを区別できないから、「Mr.」と名前の間に変な間ができちゃう。b) 三点リーダーの扱いがイマイチ。c) 文脈に関係なく、単語の発音が同じなんだよね。

「Mr.」や「Mrs.」の問題は、もっと一般的なケースを減らすために簡単に修正できそうな気がする。

それって、音声に変換するの?それともオーディオブックになるの?いいオーディオブックって、声優がキャラクターを違う強調や方言で読んでることが多いよね。ChatGPTみたいなツールなら数文はできると思うけど、8〜20時間のオーディオブックはどうなるんだろう?今の技術と競えるクオリティでepubからオーディオブックにするには、まだ基本的なハードルがあると思うけど、何か見落としてる?

Elevenlabsには「フルキャスト」タイプの生成機能があって、異なるキャラクターに異なる声を割り当てることができるよ。ただ、方言には自動的に敏感じゃないみたい。今のシステムでできる可能性はあると思うけど。文脈やプロンプトを使って強調や他の話し方の質を変えることができるTTSシステムもあると思うけど、どれくらい信頼できるかはわからないな。

ミキサーを使ってミックスできるキャラクターの声がいくつかあるよ。これで異なるニュアンスを出せるんだ。自分でコードを書いて、キャラクターごとに異なる声を使うこともできるよ。

Hacker Newsで議論の続きを見る