見出し画像

アクセシブルEPUB3自動生成ツールをつくった

「メディアオーバーレイ(音声同期ハイライト)」機能を備えた アクセシブルなEPUB3/DAISY4ファイルを自動生成するツールKERTを作成し、GitHubで公開しました。

その名はKERT

このツールにKERTと名付けました。
KERT は Konverter für EPUB-Ressourcen und Text の略称です。

概要:KERTの使途

KERTは、テキストファイルから「メディアオーバーレイ(音声同期ハイライト)」機能を備えたEPUB3/DAISY4ファイルを自動生成するツールです。
アクセシブルな電子書籍の制作において、音声とテキストを同期させる工程の効率化を目指して開発しました。KERT本体(GPLライセンス)および使用する音声合成エンジンはすべて無償で利用可能なものを採用しており、導入コストを抑えた制作環境を構築できます。

制作工程の自動化(音声同期・SMIL生成)

メディアオーバーレイ付きの書籍を制作する際、非常に工数を要するのが、音声とテキストの対応関係を定義する「SMILファイル」の作成です。
KERTでは、以下の工程を一括して自動処理します。

  1.  音声合成:入力テキストから音声ファイルを生成

  2.  音声アライメント:オープンソースの解析ツール(Montreal Forced Aligner : MFA)を用い、発話タイミングを自動算出

  3.  ファイル構成:解析結果に基づき、XHTMLおよびSMILファイルを自動生成

  4.  パッケージング:EPUB形式へのまとめ上げ

これにより、制作者が手動でタイミングを計測したり、複雑なコードを記述したりする必要がなくなります。

入力形式と対応する書式

入力には、マークダウン形式のひとつである CommonMark をベースとしたテキストファイル、またはXMLファイルを使用します。シンプルな記法で、以下のような電子書籍に必要な要素を指定可能です。 

  • 基本書式:見出しによる章立て、ルビ、太字、下線、囲み枠、上下付き文字

  • 音声制御:表示テキストとは別に読み上げ用テキストを指定する「読み替え」機能。OS標準の音声合成(TTS)等で発生しがちな誤読を、テキストファイル側で明示的に指定することで回避し、正確な読み上げを実現します。

  • 構造化:複数ファイルからの統合生成、および見出しに基づいた目次(nav.xhtml)の自動作成

  • メタデータ:タイトル・著者のほか、アクセシビリティ関連のメタデータの記述

対応言語と音声合成エンジン

現在は、日本語・アメリカ英語・ドイツ語の3言語に対応しています。
日本語は「VOICEVOX」、英語とドイツ語はOS標準(macOS/Windows)の音声合成エンジンを利用します。OS標準のエンジンは追加ソフトのインストールなしで利用できる反面、固有名詞や文脈によって誤読が生じることがありますが、KERTでは前述の「読み替え」指定を併用することで品質を維持できます。また、MFAが対応している他の言語(フランス語、スペイン語等)についても、設定の追加により対応可能です。

出力ファイルの検証と動作確認

生成されたEPUB3ファイルについては、以下の環境・ツールで動作および仕様準拠を確認しています。

  • 再生確認:Thorium Reader(メディアオーバーレイ再生)

  • 仕様チェック:Ace by DAISY(EPUB3アクセシビリティ・チェック)

動作環境と操作手順

本ツールは macOS Sequoia/Tahoe および Windows 11 で動作します。
実行には Python、Montreal Forced Aligner、FFmpeg 等のインストールが必要ですが、実際の操作はコマンドライン上での対話形式(言語やファイルパス等の質問に回答する形式)で行うため、基本的なコマンド操作ができれば進められるよう配慮しています。

プログラムの入手先

KERTはGitHubで公開されています。
https://github.com/quwano/KERT
セットアップ手順・各書式記法の説明・実行例を含む日本語READMEは以下にあります。
https://github.com/quwano/KERT/blob/main/README_ja.md
ライセンス・権利情報については、以下を参照してください。https://github.com/quwano/KERT/blob/main/LICENSE_ja.md

いいなと思ったら応援しよう!