richardr1126/openreader

An open-source read-along document reader server with high-quality TTS options, synchronized highlighting, and audiobook export for EPUB, PDF, DOCX, TXT, and MD.

何を解決するか

OpenReader は、EPUB、PDF、TXT、MD、DOCX ファイルを同期されたオーディオブックに変換する、自己ホスティング可能な方法を提供します。テキスト読み上げ(TTS)で正確な単語単位のハイライトを伴うリードアロング体験を実現するために、さまざまなドキュメント形式を扱う必要がある問題を解決します。

動作方法

このシステムは、NATS JetStream をバックエンドに持つコンピュートワーカー制御プレーンを使用して、重い処理を処理します。構造化ブロック検出とページ間の結合には、PP-DocLayoutV3(ONNX)を用いたレイアウト認識型PDF解析を使用します。同期には、ONNX Whisper のアライメントを使用して単語単位のハイライトを実現します。音声はバックグラウンドで段階的に生成されるため、最初のセグメントが準備され次第、すぐに聴き始めることができます。ワーカーは残りのドキュメント処理を継続します。

対象ユーザー

プライベートで自己ホスティング可能なドキュメントリーダーを求めるユーザー、高品質なTTSナレーションと同期ハイライトを希望するユーザー、またドキュメントをM4BまたはMP3形式のオーディオブックとしてエクスポートしたいユーザーに最適です。

特徴

  • 複数のTTSプロバイダ対応:自己ホスティング可能なOpenAI互換サーバー(例:Kokoro-FastAPI)またはクラウドAPI(OpenAI、Replicate、DeepInfra)と連携可能。
  • プログレッシブ再生:音声はバックグラウンドで生成されるため、最初のセグメントが準備され次第、すぐに聴き始められます。
  • 高度なPDF解析:レイアウト認識型解析により、ページ間での正確なリードアロング同期を確保します。
  • 広範なフォーマット対応:EPUB、PDF、TXT、MD、DOCX をサポート。
  • オーディオブックエクスポート:キャッシュされた音声をM4BまたはMP3ファイルにアセンブル可能。
  • 自己ホスティングの柔軟性:Docker、S3互換ストレージ、複数のデータベースオプション(SQLiteまたはPostgres)をサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト