メインコンテンツへスキップ
SubtitleMatrix

テキストを音声に変換

メディア入力字幕から音声へ
字幕テキストを貼り付けることもできます

初回は音声モデルと音素変換器(合わせて約98 MB)をダウンロードします。このサイトから配信され、以降はブラウザにキャッシュされます。ドロップした字幕やテキストがこのタブの外に出ることはありません。MP3 か M4A を選ぶとエンコーダをさらに31 MB ダウンロードするため、既定は WAV です。

オプション

声はアクセントと音色を決め、さらに分かりにくいことですが、テキストをどの音声体系で読むかも決めます。スペイン語の声に英語の文を読ませても失敗せず、英語の単語をスペイン語の音で読むので、エラーメッセージより厄介です。選べるのは12言語ではなく7言語です。このページに付属する音素変換器に日本語と中国語の声がないためです。長いファイルの前に短いファイルで試聴してください。どの声も同じモデルを使うので、切り替えのコストは合成1回分で、ダウンロードは発生しません。

モデルが自然と考える速さに対して、声がどれだけ速く読むかです。遅いが 0.8×、速いが 1.2× で、意図的に控えめにしています。およそ 1.5× を超えるとモデルが音節を飲み込み始め、速く話す人ではなく急いでいるように聞こえるからです。字幕ブロックの表示時間が台詞に対して短すぎる場合、このページは切り詰める前に最大 1.4× まで自動で速くし、その倍率はここで選んだ設定に掛かります。

WAV は非圧縮の 24 kHz モノラルで、エンコーダをまったく使わずに書き出します。それが既定である理由であり、追加のダウンロードが不要な理由です。MP3 と M4A は圧縮に 31 MB の動画エンジンが必要ですが、サイズはおよそ10分の1になります。10分の音声は WAV で約28 MB、MP3 で約2.8 MB です。声を試聴するなら WAV、ファイルを人に送るなら MP3 を選んでください。

この頁はテキストを声に出して読みます。段落を貼るか、.txt、.srt、.vtt など 12 の字幕形式のどれかのファイルを落とし、10 の声から 1 つ選ぶと、全体を最初から最後まで読んだ 1 つの音声ファイルが返ります。時刻合わせはありません。合わせる相手がないからです。出力は映像の下に置くためのトラックではなく、1 つの連続した読み上げです。

落としたファイルが字幕ファイルなら、タイムコードは解析されて捨てられます。読まれるのは各 cue のテキストが順に段落へつながったもので、cue 内の改行は画面上の組版の選択だったので空白になり、cue の境界はまったく何も残しません。これは字幕を音声化する頁の反対で、2 つの頁が並んで存在するのは、選択が見えるようにするためで、チェックボックスに隠さないためです。片方はタイムラインに従う音を作り、もう片方はただ流れる音を作ります。

テキストは一度にではなく部分ごとに合成されます。モデルのトークナイザは 510 音素を超える分を黙って切り捨て、2 千語の記事は最初の 2 文として返り、ファイルは完全に正しく見えます。だからテキストは段落の切れ目で、次に文末の句読点で、さらに 400 文字を超える 1 文は強制的に分割され、部分が短い間を挟みながら順に合成されます。取り消しが効くのもここです。読み上げは専用のスレッドで行われるので、取り消しボタンは現在の文が終わるのを待たずにたちまち止まり、音声を作っている間も頁は使えます。

声の一覧は 7 言語 10 声です。英語(米国と英国)、スペイン語、フランス語、イタリア語、ヒンディー語、ブラジルポルトガル語です。日本語と中国語はありません。発音に使う音素化器にそのどちらの声もなく、日本語と表示した選択肢は漢字を英字として読み、自信たっぷりに間違って聞こえるからです。約 98 MB のモデルと音素化器を一度ダウンロードしてキャッシュします。貼ったテキストはブラウザから出ません。段落が依頼主の手紙や診療記録のときには重要なことです。

よくある質問

ここに .srt を落とすと、読み上げにタイムコードや cue 番号は入りますか?

どちらも入りません。ファイルは変換頁と同じ形式の層で解析され、各 cue のテキストだけが保たれます。番号、00:00:01,000 --> のタイミングの書式、<i> や {\pos()} のような行内タグは合成の前に消えます。聞こえるのは言葉が現れる順に並んだものです。タイミングを捨てずに尊重したいなら、字幕ファイルを音声にする頁を使ってください。あちらは各 cue を自分の開始時刻に置きます。

貼り付け欄は記事 1 本を受け取れますか、それとも 1、2 文向けですか?

記事 1 本でも大丈夫です。テキストはモデルに届く前に分割されるからです。貼った内容はプレーンテキストのファイルとして包まれ、落としたファイルと同じキューに入るので、同じ 400 文字の分割、同じ進捗バー、同じ取り消しボタンが付きます。実際の上限は長さではなくメモリです。長い記事は長い WAV を作り、24 kHz モノラルの 1 時間は数百メガバイトになるので、数分を超える読み上げなら MP3 を選ぶ価値があります。

文の間の間が、字幕の音声化より長く聞こえるのはなぜですか?

続く文がつながって聞こえないよう、部分の間に 4 分の 1 秒の無音を入れるからです。字幕の音声化の頁は各行を cue の正確な開始に置き、字幕がもともと持っていた間をそのまま埋めます。ここでは内容に関係なく 250 ミリ秒の固定で、忠実であるべきタイムラインがないからです。1 つの部分の中の文はモデル自身の句読点の扱いでつながるので、余分な間が入るのは部分の境界、およそ 400 文字ごとだけです。

スペイン語とポルトガル語にはどの声があり、1 つですか複数ですか?

それぞれ 1 つです。スペイン語が ef_dora、ブラジルポルトガル語が pf_dora で、ほかに米国の英語 2 種(af_heart、af_bella)、米国の声もう 1 つ(am_michael)、英国の声 2 つ(bf_emma、bm_george)、フランス語の ff_siwis、ヒンディー語の hf_alpha、イタリア語の if_sara があります。英語の声が多いのはナレーションの依頼がそこに集中するからで、ほかの言語は一覧が試聴できる長さに収まるよう 1 つずつです。声は音色だけでなく訛りも決め、テキストをどの言語の音素で読むかも決めます。

できた MP3 や M4A はポッドキャストの一部として公開しても安全ですか?

技術的には安全です。どちらもローカルの ffmpeg で符号化される標準のコンテナで、音声は 24 kHz モノラル、話し声には十分で音楽には薄いものです。編集としては公開前に聴いてください。モデルは語末の子音を切ったり、固有名詞を妙に強調したり、略語を 1 文字ずつ読んだりすることがあります。その間も何も送信されず、透かしや追跡も埋め込まれませんが、合成の声は開示も運びません。聴き手が人間の読み手を期待するなら、どちらなのかを伝えてください。

関連ツール