コードでオーディオブックを作る方法 - 「santinic/audiblez」を使った自動化解説


コードでオーディオブックを作る方法 - 「santinic/audiblez」を使った自動化解説

santinic/audiblez

2025-08-29

「santinic/audiblez」は、ソフトウェアエンジニアにとって、特に以下のような点で非常に役に立ちます。

音声データ生成の自動化
音声データの生成は、手動で行うと非常に手間がかかります。このツールを使えば、既存のEPUBファイルから一括でオーディオブックを生成でき、作業時間を大幅に削減できます。

オフラインでの利用
オンラインのTTS(Text-to-Speech)サービスは、API利用料やインターネット接続が必要です。このライブラリはオフラインで動作するため、コストを抑えつつ、いつでもどこでも利用できます。

カスタマイズ性
TTSエンジンの選択、音声速度の調整、不要なテキストの削除など、生成される音声の細かい設定が可能です。

導入はとてもシンプルです。Pythonのパッケージマネージャpipを使ってインストールできます。

pip install audiblez

必要なライブラリ
audiblezは、テキスト読み上げ機能にpyttsx3というライブラリを使用しています。このライブラリは、OSにインストールされているTTSエンジンを利用するため、別途インストールする必要がある場合があります。

Windows
SAPI5が標準で入っているため、追加インストールは不要です。

macOS
NSSpeechSynthesizerが標準で入っています。

Linux
espeakまたはfestivalが必要です。

sudo apt-get install espeak

sudo apt-get install festival

EPUBファイルからオーディオブックを生成する基本的なサンプルコードです。

from audiblez import AudiobookGenerator

# AudiobookGeneratorクラスを初期化
generator = AudiobookGenerator(
    input_file="your_book.epub",  #  ここにEPUBファイル名を設定
    output_file="your_book.mp3", #  生成されるオーディオファイル名
    engine="pyttsx3"             #  TTSエンジンを指定
)

# オーディオブックを生成
generator.generate()
print("オーディオブックの生成が完了しました!")

生成したオーディオブックを、章ごとに分割して保存したい場合は、以下のようにsplit_by_chapterTrueに設定します。

from audiblez import AudiobookGenerator

generator = AudiobookGenerator(
    input_file="your_book.epub",
    output_dir="audiobooks",      #  生成されるオーディオファイルの保存先ディレクトリ
    split_by_chapter=True         #  章ごとにファイルを分割
)

generator.generate()
print("章ごとに分割されたオーディオブックの生成が完了しました!")

さあ、お待たせしました!スター・ウォーズのコントです。

舞台
デス・スターの通信室

ルーク 「父さん!ついに完成しました!これで、父さんの好きな文学作品を、好きなだけ聴けるオーディオブックにできます!」

ベイダー 「(深く、重い呼吸音)…ホォォォ…馬鹿な。なぜワタシに文学が必要なのだ?フォースの力で全てを読み取れる…」

ルーク 「いやいや、フォースは疲れるでしょう?このsantinic/audiblezを使えば、pip install audiblezとコマンドを打つだけで、EPUBファイルから自動でオーディオブックが作れるんです!」

ベイダー 「なんだと…?(呼吸音)…本当に、ワタシの時間を奪わないと誓えるか?」

ルーク 「もちろんです!それに、音声の速度も調整できます。父さんのセリフみたいに、ゆっくりと重厚な音声も作れますよ!」

ベイダー 「ふん。試してみる価値はあるかもしれぬな。だが、もし役に立たなければ…フォースチョークだ…」

ルーク 「(焦って)大丈夫!大丈夫ですから!まず、このinput_fileに父さんの好きな「帝国の歴史」を入れて、output_fileにempires_history.mp3と…」

ベイダー 「…待て。そのoutput_dirdarkside_audiobooksと設定しろ。ワタシのコレクションだ…」

ルーク 「は、はい!わかりました、父さん!」

ナレーター そして、デス・スターの通信室には、機械音声で朗読される「帝国の歴史」のBGMが流れ始めたのであった…


santinic/audiblez




証拠物件(EPUB)を逃がすな。calibredbで実現する、エンジニア流・電子書籍取り調べ術

エンジニアの皆さん、お疲れ様です。今日は、電子書籍界の「巨大な証拠保管庫」こと calibre について、警察のガサ入れ…ではなく、技術的な「現場検証」をしていきましょう。電子書籍の管理ソフトとして有名な calibre ですが、中身は Python で書かれた超巨大なオープンソースプロジェクト です。エンジニアにとっては、ただの「本棚」以上の価値があります。


Big Techも注目のAIパワーをセキュリティに。PentestGPTで効率化する侵入テストの最前線

今回は、サイバーセキュリティの分野で非常に注目されている、LLM(大規模言語法モデル)をペネトレーションテスト(侵入テスト)に活用したツール「PentestGPT」について解説します。Big Tech(Apple, Google, Amazonなど)が提供する最先端のAI技術を、実際の現場でどう「武器」として使うか、という視点でお話ししますね。


あなたのサービス品質向上に貢献:qeeqbox/social-analyzer導入とAPI連携の具体例

このツールは、指定されたユーザー名が、1000以上のソーシャルメディアやウェブサイトで利用されているかどうかを、効率的かつ広範囲にわたって調査・分析するためのものです。Node. js、JavaScript、Pythonに対応しており、API、CLI(コマンドラインインターフェース)、そしてウェブアプリとして利用できます。


ハルシネーションを許さない。LangExtractで実現する根拠(ソース)付きの情報抽出の実践

「彼女の下着は何色?」という、一歩間違えれば通報案件の問いを、LangExtractがどう鮮やかに(かつ紳士的に)解決するのか……。コント仕立てのサンプルコードと一緒に見ていきましょう!一言でいうと、「LLMを使って、超高精度かつ『証拠付き』でテキストを構造化データ(JSON等)にするライブラリ」です。


血液型占い風解説!AIエージェントのチームマネジメントツール「agent-squad」とは?

今回は、ソフトウェアエンジニアの視点から、ちょっと面白いツール「agent-squad」について、血液型占いの運勢みたいに、楽しく分かりやすく解説していきますね。全体運最高潮!まるで優秀なチームを瞬時に結成できる魔法の杖を手に入れたかのよう。これまで一人で抱え込んでいた複雑なタスクも、チームで分担することでサクサクこなせるようになります。特に、複数のAIを組み合わせて、まるで人間同士が話し合っているかのように協調させたい場面で、その真価を発揮します。


OpenArm徹底解説:ソフトウェアエンジニアが知るべき物理AI研究プラットフォーム

特に、機械学習やロボティクスに興味がある方にとっては、理論だけでなく、実際に物理的なシステムを動かし、データを収集し、検証できる貴重な基盤となります。OpenArmは、完全なオープンソースとして、ソフトウェアエンジニアが最先端のAI研究を実機で進める上で、大きなメリットを提供します。


ブラウザワークフローの堅牢性を高めるSkyvern:導入とPythonサンプルコード

ソフトウェアエンジニアの視点から、このツールがどのように役立つのか、導入方法、サンプルコードのイメージを分かりやすくご説明しますね!従来のブラウザ自動化ツール(SeleniumやPlaywrightなど)は、ウェブサイトのDOM構造(XPathやCSSセレクタ)に依存するため、サイトのレイアウトが少し変わるだけでスクリプトが壊れてしまうという課題がありました。Skyvernは、この問題をAIの力で解決します。


多言語・感情制御も自由自在!CosyVoiceという最強の武器をシステムに組み込む方法

いいか、親分(エンジニア)の視点から、この「シマ」をどう仕切るか、ビシッと解説してやるよ。簡単に言うと、「誰の声でも、どんな言語でも、感情たっぷりに喋らせる」ための最強の道具だ。多言語対応(マルチリンガル) 日本語はもちろん、英語、中国語、韓国語……多国籍な組織でも困らねぇ。


【攻略本】RAG_Techniques:エンジニアのためのAI検索コンボ技・完全マスターガイド

NirDiamant/RAG_Techniques は、AI開発の世界における「最新アーケードゲームの攻略ガイド」のようなリポジトリです。普通のRAG(検索拡張生成)が「パンチマシン」だとしたら、ここは「コンボ技」や「隠しコマンド」が満載の格闘ゲーム会場といったところでしょうか。