はじめに
ebook2audiobookは、強力なオープンソースの電子書籍からオーディオブックツールです。複数の形式の電子書籍を、完全なチャプターマーカーとメタデータ付きのオーディオブックに変換することができます。このツールは、電子書籍フォーマットの変換にCalibreを使用し、高品質のテキスト読み上げにCoquiのXTTSv2とFairseqを使用し、中国語を含む1124の言語をサポートし、ボイスクローニングを提供します。このツールは、直感的なWeb GUIが付属しており、CPUとGPUの操作をサポートし、実行するためにわずか4GBのRAMを必要とする低リソース要件を持っています。個人使用でもバッチ変換でも、プロ級のオーディオブック作成が可能です。
機能一覧
- epub、pdf、mobiと20以上のフォーマットを含む様々な電子書籍フォーマットの変換をサポートしています。
- 電子書籍のチャプター構造を自動認識・保持
- 先進のXTTSv2エンジンによる高品質音声合成
- 1124言語の音声合成をサポート
- 声のクローニング機能を提供して下さい、読書の声をカスタマイズできます
- 完全なチャプター情報とメタデータを含むm4bフォーマットを出力
- ウェブグラフィカルインターフェースを提供し、シンプルで直感的な操作
- Dockerコンテナのデプロイをサポートし、クロスプラットフォームの互換性を確保します。
- オプションのGPUアクセラレーションによる処理速度の向上
- バッチ変換機能をサポートする
ヘルプの使用
1.設置方法
1.1 Dockerを使う(推奨)
Dockerは最も簡単なインストール方法で、均一で安定した実行環境を保証する。
CPUバージョン実行コマンド:
docker run -it --rm -p 7860:7860 --platform=linux/amd64 athomasson2/ebook2audiobook python app.py
GPUバージョンのrunコマンド(NVIDIAグラフィックカードが必要):
docker run -it --rm --gpus all -p 7860:7860 --platform=linux/amd64 athomasson2/ebook2audiobook python app.py
1.2 ローカル・インストール
- コードリポジトリをクローンする:
git clone https://github.com/DrewThomasson/ebook2audiobook.git
- 依存関係をインストールします:
- Python 3.x
- キャリバー(電子書籍変換ツール)
- FFmpeg(オーディオ処理ツール)
- Python パッケージ: tts, pydub, nltk, beautifulsoup4, ebooklib, tqdm
2.使用方法
2.1 グラフィカル・インターフェースの使用
- プログラム起動後、ブラウザでhttp://localhost:7860。
- ウェブインターフェースでeBookファイルをアップロードする
- ターゲット言語とサウンドファイルの選択(オプション)
- クリックして変換を開始する
2.2 コマンドラインの使い方
基本的なコマンドの形式:
python app.py --headless --book --language -voice <サウンドファイルのパス
3.重要なパラメータの説明
- --ebook: 電子書籍ファイルのパス (必須)
- --language: 対象言語コード (オプション、デフォルトは英語)
- --voice: 音声ファイルのパス(オプション、音声クローン用)
- --device: CPUとGPUのどちらを使うかを選択する。
- -speed:音声スピード調整(デフォルト1.0)
4.対応ファイル形式
入力フォーマット:
- epub(推奨、ベストサポート)
- モビ
- テキスト
- その他のフォーマット:html、rtf、chm、lit、pdb、fb2、odtなど。
出力フォーマット:
- m4b(チャプターマーカーとメタデータを含むオーディオフォーマット)
5.高度な機能
5.1 スピーチクローニング
- 16khzまたは24khzのターゲットサウンドサンプルファイルを用意する
- 変換時にサウンドファイルのパスを指定する
- ターゲットボイスで読み上げます。
5.2 一括変換
- input-folderディレクトリを作成し、そこにeBookファイルを置く。
- オーディオブック出力ディレクトリの作成
- バッチ変換コマンドによる複数ファイルの処理
6.一般的な問題の解決
- CPUの変換速度が遅い
- 解決策:GPUアクセラレーションを使用するか、クラウドサービスを利用する。
- 推奨:ハギング・フェイス・スペースまたはGoogle Colabの利用
- インストールに依存する問題
- 依存性の問題を回避するための推奨Dockerバージョン
- システムの互換性と依存バージョンをチェックする
- 音声トランケーションの問題
- 入力テキストの書式をチェックする
- テキスト分割パラメータの調整
- サポート向上のため、特定の言語問題を報告する