p261010-01 で、4 声の文ごとの音声を wav で置いた。1 声 5〜12 MB あり、スマホの通信に重い。wav から変換した mp3 を、別の項目として声の一覧に足す。wav は置き換えずに残す。
前提: p261012-01(一覧の値を r:key:形式 にし、voice.js に format を持たせる)が済んでから実装する。同じファイルを触るため。
無料: wav➡mp3 1MB: VOICEVOX: ずんだもん の形。大きさは mp3 の合計(2026-10-11)r:zundamon:mp3。wav の r:zundamon:wav は変えない(p261012-01)r:zundamon:mp3 にする(2026-10-12)convert-audio(ffmpeg)で行う大きさの実測(2026-10-12。convert-audio の既定の 64kbps。tmp/ に変換して測った):
| 声 | wav | mp3(64kbps) |
|---|---|---|
| ずんだもん | 5.9 MB | 1.0 MB |
| 四国めたん | 5.1 MB | 0.9 MB |
| まお | 11.6 MB | 1.1 MB |
| コハク | 12.0 MB | 1.1 MB |
72〜76 はすべて A に決まった(2026-10-12)。64kbps の mp3(ずんだもん 1 場面 1 文目)は利用者が聞き、問題なかった。
voice/zundamon/s01-1-指紋.mp3)。同じ文の wav と mp3 が名前で並び、指紋も共通にできるvoice/zundamon-mp3/)make-voice.ts が、wav を作ったあとに mp3 も作る。wav と同じく、無いものだけを作る。作り直し忘れが起きないends)mp3 は変換で先頭に短い無音が入ることがあり、時刻がずれる可能性がある(未計測)。
利用者の指示。事前生成の声の表示を、作り方と名前を先に、形式と大きさを後ろの括弧に置く形にする。「ファイル」は半角(利用者の指定)。ブラウザの声の表示(無料: 内蔵: 動的生成: 声の名前)は変えない。
無料: ファイル: VOICEVOX: ずんだもん (wav➡mp3 1MB) / 無料: ファイル: VOICEVOX: ずんだもん (wav 6MB)(四国めたん・まお・コハクも同じ形)make-voice.ts の表示の雛形と、書き出した voice.js(音声は作り直さない)、テストの期待値(表示・権利表記)結果: ✅ 実装済み(2026-10-13)。make-voice.ts の雛形を直して voice.js を書き直した(音声は作り直していない)。テストの期待値を先に直して落ちるのを見てから実装し、chromium と webkit で全件が通った(79 件)。一覧での見え方は利用者が確かめる。
mp3 の結果: ✅ 済(2026-10-13)。make-voice.ts が wav の隣に同じ名前の mp3(64kbps)を作り、voice.js に声ごとに mp3・wav の順で並べる。4 声 108 本を作り、2 回目は作り直しが 0 本だった。表示は「無料: wav➡mp3 1MB: …」。recorded.js は key と形式の組で声を選ぶ形にした(同じ key に 2 つの形式があるため)。wav と mp3 の長さの差は全 108 本で最大 0.3 ミリ秒で、wav の時刻をそのまま使う(75-A)。既存のテストを並びと既定の声に合わせて直し、chromium と webkit で全件が通った(79 件。音のない webkit の 5 件は従来どおり飛ばす)。PC の Chrome では利用者が聞き、問題なかった(2026-10-13)。公開したあと、iPhone の Safari でも鳴ることを利用者が確かめた(2026-10-13)。