3 ポイント 投稿者 GN⁺ 2023-12-25 | 1件のコメント | WhatsAppで共有

Storyteller: オーディオブックと電子書籍の自動同期プラットフォーム

  • Storytellerは、オーディオブックと電子書籍を自動的に同期するセルフホスト型プラットフォーム。
  • このプラットフォームは、EPUB 3標準に準拠した電子書籍ファイルを生成し、EPUBメディアオーバーレイをサポートするすべての電子書籍リーダー(ソフトウェアまたはハードウェア)で読むことも、専用のStorytellerモバイルアプリを使うこともできる。
  • Storytellerは完全にセルフホスト可能で、すべての書籍はユーザーのハードウェアに保存され、必要に応じて移動、コピー、バックアップを自由に行える。

GN⁺の意見

  • Storytellerは、ユーザーの読書体験を改善するために、オーディオブックと電子書籍を簡単に同期できるプラットフォームを提供している点で重要。
  • ユーザーが自分のデータを完全に制御できるセルフホスト機能は、プライバシー保護とデータ所有権に関する現代的な関心に合致している。
  • EPUB 3標準への準拠は、ユーザーがさまざまなデバイスやソフトウェアで書籍を読めるようにし、互換性とアクセシビリティの向上に貢献している。

1件のコメント

 
GN⁺ 2023-12-25
Hacker Newsの意見
  • 驚きました。数年前に、似たような電子書籍・オーディオブック整列ツールである https://github.com/r4victor/syncabook を作ったことがあります
    当時は、テキスト整列方式は機械学習ベースのものも含めて計算量が大きすぎ、長いテキストには不十分だと考え、テキストを音声合成したうえで 2つのオーディオシーケンス を整列する方式を選びました
    Storytellerはテキストを整列する方式のようですが、1冊の本を同期するのにどれくらいかかるのか気になります
    また、音声版とテキスト版はかなり異なることがよくあります。たとえば音声には、テキストにはない導入部が入っていることもあります。Storytellerがこうしたケースをどれくらいうまく扱えるのか、手動で音声/テキストの編集が必要なのか、それとも差分を自動で処理するのかも知りたいです

    • syncabookは素晴らしいもので、Storytellerは強制アラインメント(forced alignment)において、ほぼ 逆のアプローチ を取っていると言えます
      ドキュメントには同期アルゴリズムを詳しく書いてありますが、大まかな流れはこうです。StorytellerはWhisperで音声をテキストに文字起こしし、この段階が最も計算コストが高くなります
      次に、Levenshtein距離ベースのファジー検索 でテキスト内の各章を探します。音声版とテキスト版の違いを考慮しようとしている部分です
      各章ごとに、文字起こし結果全体に対して再びファジー検索を行い、文ごとの開始/終了タイムスタンプを見つけます
      全体としてはかなりうまく動作しますが、電子書籍を基準データとして見ているため、現状ではオーディオブックの導入部や末尾を取りこぼすことがあります。そうした部分を明示的にトリガーするサポートはロードマップにあります
    • ドキュメントでは、通常の本とハードウェアにもよりますが 1〜4時間 かかるとされています: https://smoores.gitlab.io/storyteller/docs/syncing-books
      ドキュメントには、音声とテキストの差異を自動処理するアルゴリズムも詳しく説明されています
  • 本当にすばらしいです。以前は考えたこともありませんでした
    通勤中はオーディオブックを聴き始め、夜は本を読んでいます。今はaudiobookshelf[0]で電子書籍を聴いていて、電子書籍にも対応しています
    Storytellerが生成するEPUBをaudiobookshelfが読めるかどうかについて、議論にコメント[1]を残しました
    [0]: https://www.audiobookshelf.org/
    [1]: https://github.com/advplyr/audiobookshelf/issues/189#issueco...

    • 通勤中はオーディオブックを聴き、夜は読むというのは、2年以上前にこの作業を始めることになった理由とほぼまったく同じでした
      オーディオブックとその テキスト版 の間を自由に行き来したかったのです。その議論でStorytellerに言及してくれてありがとうございます。自分でも見に行ってみます
  • とても気に入っています。ただ、妻と子どもたちはみな Kobo電子書籍リーダー でEPUBを読んでいるので、最後に読んだページをKoboからStorytellerへ同期し、あとでオーディオブックとして続きを聴けるといいと思います
    同期に必要なら、すべてのKoboにKOReaderをインストールしても構いません。KOReaderはEPUB3メディアオーバーレイには対応していないようですが、同期機能はあります

    • サーバー側の 読書位置同期 とKOReader連携は、どちらも実際にロードマップにあります。すでに何度も出ている要望です
    • Amazonは今やテキスト本とAudible音声の両方を持っているのに、何らかの 同期機能 がないのは納得できません
      むしろ本を両方で買わせるきっかけにできるはずです。電子書籍を読んでいて運転中に続きを楽しみたいとき、音声版へ自然に引き継いでくれる「ハンドオフ」があればいいのに、と思う瞬間が本当に多いです
  • しばらく見ないうちに反応がものすごく大きくなっていますね。設定してみる人がいれば、Gitterチャンネル(https://smoores.gitlab.io/storyteller/docs/say-hi)に来て挨拶したり、サポートを求めたり、フィードバックを残したりしてもらえるとうれしいです

  • もっと情報があるとよいです。iOSアプリへのリンクやスクリーンショット、プロジェクトが提供する機能といったものです
    audiobookshelfのように同期機能を備えた 電子書籍/オーディオブックライブラリ なのか、それとも同期だけを行うツールなのかが気になります: https://www.audiobookshelf.org/

    • もっともな指摘なので、そうした情報を追加してみます。ドキュメントからApp Storeページへリンクしようと思っていたのですが、たった今、含めるように更新しました
      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/
    とても良さそうで、次のステップは本を管理するための完全な同期エコシステムを作ることですね

    • Audiobookshelf[0] のようなシステムのことですか?個人的には強くおすすめします。これまで使ったどの有料サービスよりも安定して動作しました
      [0] https://www.audiobookshelf.org/
    • その通りで、それが目標です。ライブラリ管理とリーダーアプリはすでにありますが、特にライブラリ管理の方はまだやることがたくさんあります
  • 新しい機械学習の時代に本当に得たいのは、セルフホスト可能な人間レベルの TTS と STTです
    テキストの電子書籍を聞けて、大きなポッドキャストや動画/音声の講義コースをテキスト化して、検索や引用を簡単にできるといいですね
    これがそういうものなのか気になります。これまで見つけたものは、人間よりかなり劣るものか、高価なオンラインサービスでした

  • すごいですね。何年もこういうものが欲しいと思っていました。Libby が統合して、借りた本にも使えるようになるといいですね
    App Store のアプリリンクも追加してもらえると嬉しいです