Dockerで一発起動!ボイスクローニング対応のEbook→Audiobook変換ツールをCLIで使いこなす技術
この「ebook2audiobook」はな、一言で言うと電子書籍をすげぇ高品質なオーディオブックに自動で変換しちまうためのツールなんだ。しかも、ただの読み上げじゃねぇぞ。
多言語対応(1107+言語!)
グローバルなコンテンツを扱うとき、この多言語対応はマジで武器になる。日本の本だけじゃなく、世界中の電子書籍をオーディオ化できるってことだ。
ボイスクローニング(声の複製)
これがアツい!自分の声を録音して学習させれば、自分の声で本を読ませられるんだ。プロジェクトで決まったキャラクターの声を使ったり、特別なナレーションが必要なコンテンツを作ったりするときに、柔軟性がハンパねぇ。
ローカル&無料
全部自分の環境で動くから、外部サービスにデータを送る必要がねぇし、ランニングコストもタダ同然だ。プライバシー面でも安心できるし、ガンガン試行錯誤できるのがデカい。
構造化された出力
Calibreってツールを使って、電子書籍をチャプターごとに区切ってくれる。オーディオブックとして再生しやすいように、ちゃんとメタデータまで付くんだ。
ソフトウェアエンジニアとしての活用法はな、
アクセシビリティ向上ツールの開発ベースにする。
AI音声合成の品質評価のベンチマークとして使う。
大量のテキストデータ(例えば、会社のドキュメントとか)を、耳で聞けるようにバッチ処理で自動生成するシステムに組み込む。
要するに、音声コンテンツを爆速で、しかも自分の思い通りの声で作りたいときに、こいつがトップを張れるってわけだ!
めんどくせぇ依存関係のインストールなんてやってらんねぇだろ?Dockerで一発で決めるのが、イケてるエンジニアの流儀だ!
てめぇの環境にDockerが入ってなきゃ話にならねぇ。まずはDockerをインストールしとけ。
GitHubのREADMEにあるように、Docker Hubにイメージがあるから、それを使っちまうのが手っ取り早い。
# CPUだけで動かすシンプルな例だ
docker run -it --rm -p 7860:7860 --platform=linux/amd64 athomasson2/ebook2audiobookxtts:huggingface python app.py
docker run
コンテナを起動する。
-it --rm
インタラクティブに実行して、終了したらコンテナを自動で削除。
-p 7860:7860
Webインターフェース(Gradio)を使うためのポート開放だ。
athomasson2/ebook2audiobookxtts:huggingface
使うイメージの名前だ。
これを実行すれば、ターミナルにURLが表示されるから、それをブラウザで開けばWebインターフェースからポチポチ操作できるぞ!楽勝だろ?
Web UIもいいが、ソフト屋ならコマンドライン(CLI)で動かすのが血が騒ぐってもんだろ。バッチ処理に組み込むならこっちだ。
電子書籍ファイルを指定して、ヘッドレス(Web UIなし)で実行するぜ。
# まず、このツールの実行ファイル名(ここでは例としてebook2audiobookとしてるぜ)
# もしDocker内で直接CLIを叩くなら、またコマンドが変わるから注意な。
# ePubファイルを日本語で変換する例
ebook2audiobook --headless True --ebook "/path/to/your/ebook.epub" --language "ja"
--headless True
Web UIなんていらねぇ、直接動かせって合図だ。
--ebook ...
変換したい電子書籍ファイルのパスを指定する。
--language "ja"
使用する言語コードを指定する。「ja」は日本語だ。
てめぇの声を元にした「my_voice.wav」を使って、ボイスクローニングをかますぜ!
# 自分の声ファイルを使って、英語のオーディオブックを作る例
ebook2audiobook --headless True \
--ebook "/path/to/your/english_novel.epub" \
--language "en" \
--voice "/path/to/your/my_voice.wav"
--voice ...
クローンしたい声の音声ファイル(.wavとか)のパスを指定する。
注意点
ボイスクローニングには、使用するTTSエンジン(Coqui XTTSなど)によって、ファイルの形式や長さなどに条件があるから、GitHubのREADMEで確認しとけよ!
これで、てめぇも電子書籍のオーディオブック化のプロフェッショナルだ!ガンガン使っていけよな!
この動画では、このeBook2Audiobookを使って、AI音声合成でオーディオブックを作る流れをデモしてるぜ。