HN紹介: 電子書籍向けのオープンソースでセルフホスト可能な同期ナレーションプラットフォーム
(smoores.gitlab.io)Storyteller: オーディオブックと電子書籍の自動同期プラットフォーム
- Storytellerは、オーディオブックと電子書籍を自動的に同期するセルフホスト型プラットフォーム。
- このプラットフォームは、EPUB 3標準に準拠した電子書籍ファイルを生成し、EPUBメディアオーバーレイをサポートするすべての電子書籍リーダー(ソフトウェアまたはハードウェア)で読むことも、専用のStorytellerモバイルアプリを使うこともできる。
- Storytellerは完全にセルフホスト可能で、すべての書籍はユーザーのハードウェアに保存され、必要に応じて移動、コピー、バックアップを自由に行える。
GN⁺の意見
- Storytellerは、ユーザーの読書体験を改善するために、オーディオブックと電子書籍を簡単に同期できるプラットフォームを提供している点で重要。
- ユーザーが自分のデータを完全に制御できるセルフホスト機能は、プライバシー保護とデータ所有権に関する現代的な関心に合致している。
- EPUB 3標準への準拠は、ユーザーがさまざまなデバイスやソフトウェアで書籍を読めるようにし、互換性とアクセシビリティの向上に貢献している。
1件のコメント
Hacker Newsの意見
驚きました。数年前に、似たような電子書籍・オーディオブック整列ツールである https://github.com/r4victor/syncabook を作ったことがあります
当時は、テキスト整列方式は機械学習ベースのものも含めて計算量が大きすぎ、長いテキストには不十分だと考え、テキストを音声合成したうえで 2つのオーディオシーケンス を整列する方式を選びました
Storytellerはテキストを整列する方式のようですが、1冊の本を同期するのにどれくらいかかるのか気になります
また、音声版とテキスト版はかなり異なることがよくあります。たとえば音声には、テキストにはない導入部が入っていることもあります。Storytellerがこうしたケースをどれくらいうまく扱えるのか、手動で音声/テキストの編集が必要なのか、それとも差分を自動で処理するのかも知りたいです
ドキュメントには同期アルゴリズムを詳しく書いてありますが、大まかな流れはこうです。StorytellerはWhisperで音声をテキストに文字起こしし、この段階が最も計算コストが高くなります
次に、Levenshtein距離ベースのファジー検索 でテキスト内の各章を探します。音声版とテキスト版の違いを考慮しようとしている部分です
各章ごとに、文字起こし結果全体に対して再びファジー検索を行い、文ごとの開始/終了タイムスタンプを見つけます
全体としてはかなりうまく動作しますが、電子書籍を基準データとして見ているため、現状ではオーディオブックの導入部や末尾を取りこぼすことがあります。そうした部分を明示的にトリガーするサポートはロードマップにあります
ドキュメントには、音声とテキストの差異を自動処理するアルゴリズムも詳しく説明されています
本当にすばらしいです。以前は考えたこともありませんでした
通勤中はオーディオブックを聴き始め、夜は本を読んでいます。今はaudiobookshelf[0]で電子書籍を聴いていて、電子書籍にも対応しています
Storytellerが生成するEPUBをaudiobookshelfが読めるかどうかについて、議論にコメント[1]を残しました
[0]: https://www.audiobookshelf.org/
[1]: https://github.com/advplyr/audiobookshelf/issues/189#issueco...
オーディオブックとその テキスト版 の間を自由に行き来したかったのです。その議論でStorytellerに言及してくれてありがとうございます。自分でも見に行ってみます
とても気に入っています。ただ、妻と子どもたちはみな Kobo電子書籍リーダー でEPUBを読んでいるので、最後に読んだページをKoboからStorytellerへ同期し、あとでオーディオブックとして続きを聴けるといいと思います
同期に必要なら、すべてのKoboにKOReaderをインストールしても構いません。KOReaderはEPUB3メディアオーバーレイには対応していないようですが、同期機能はあります
むしろ本を両方で買わせるきっかけにできるはずです。電子書籍を読んでいて運転中に続きを楽しみたいとき、音声版へ自然に引き継いでくれる「ハンドオフ」があればいいのに、と思う瞬間が本当に多いです
しばらく見ないうちに反応がものすごく大きくなっていますね。設定してみる人がいれば、Gitterチャンネル(https://smoores.gitlab.io/storyteller/docs/say-hi)に来て挨拶したり、サポートを求めたり、フィードバックを残したりしてもらえるとうれしいです
もっと情報があるとよいです。iOSアプリへのリンクやスクリーンショット、プロジェクトが提供する機能といったものです
audiobookshelfのように同期機能を備えた 電子書籍/オーディオブックライブラリ なのか、それとも同期だけを行うツールなのかが気になります: https://www.audiobookshelf.org/
Storytellerは同期を含む完全な 電子書籍/オーディオブックライブラリ です。ただしこれまでは、ライブラリ管理体験よりも読書体験にずっと重点を置いてきました
ライブラリ管理体験の改善にも近く取り組む予定です
https://apps.apple.com/us/app/storyteller-reader/id647446772...
本当にすばらしいプロジェクトです
すでにAIで文字起こしをしているなら、TTSで AI音声生成 までできると非常に良いと思います
Audibleには何度か加入してはやめましたが、高品質なオーディオブックがあまりにも少なかったからです。著者本人が朗読した本でもいまいちな場合が多く、ほとんどはプロのナレーターではありません
優れたAIなら、何時間も疲れることなく同じエネルギー、抑揚、速度を保てるので、素晴らしいものになると思います
かなり興味深いですね
以前、電子書籍/オーディオブックの組み合わせからカスタム LJSPEECH データセットを作り、coqui-tts と VITS モデルでお気に入りのナレーターの声を合成して、オーディオブック化されていない本を「出版」できるようにする、似たようなものを書いたことがあります
本文をタイムスタンプに合わせて同期し、音声を文単位に分割し、その組み合わせで LJSPEECH データセットを作れました
aeneas[1] を使いました。設定は少し厄介でしたが、時間がたつと英語以外の言語、私の場合はドイツ語でも 80% を超える精度でマッピングできました
かなりうまく動き、LJSPEECH データセットも悪くありませんでしたが、当時の TTS 技術はまだ力不足でした。XTTS のような新しいモデリング手法で、もう一度復活させてみる時期かもしれません
[1]: https://www.readbeyond.it/aeneas/
おっしゃるように良い本も多いですが、さらに深刻なのはナレーション/制作品質が平凡な素晴らしい本です。例えば Audible の A Song of Ice and Fire は本当にひどく、Andy Weir の The Martian は素晴らしいです
Will Wheaton や Greg Tremblay を GOT に移植できるでしょうか?複数のキャラクターをそれぞれ別の声で読ませられるでしょうか?可能なら、もう一度やってみたいです
リンクが抜けていました: https://smoores.gitlab.io/storyteller/
とても良さそうで、次のステップは本を管理するための完全な同期エコシステムを作ることですね
[0] https://www.audiobookshelf.org/
新しい機械学習の時代に本当に得たいのは、セルフホスト可能な人間レベルの TTS と STTです
テキストの電子書籍を聞けて、大きなポッドキャストや動画/音声の講義コースをテキスト化して、検索や引用を簡単にできるといいですね
これがそういうものなのか気になります。これまで見つけたものは、人間よりかなり劣るものか、高価なオンラインサービスでした
すごいですね。何年もこういうものが欲しいと思っていました。Libby が統合して、借りた本にも使えるようになるといいですね
App Store のアプリリンクも追加してもらえると嬉しいです
すぐにドキュメントにも含めるよう変更を上げます