COACHING-L 音声リピートプレーヤー
テキストから作った音声や、端末に保存した音声で、リスニング・シャドーイング・声に出す練習ができるWebアプリです。アカウント登録はいりません。テキストと音声はサーバーへ送らず、使っている端末・ブラウザの中だけで扱います。
公開ページ:https://tools.coaching-l.net/audio-loop-player/
開発・テスト・公開の手順は DEVELOPMENT.md を見てください。
できること
基本の流れは「入口を選ぶ → 素材を用意する → 練習する」です。どの入口から始めても、同じ練習画面で練習します。
- テキストから始める:英語か中国語(普通話)のテキストを、Kokoroというモデルで1文ずつ音声にします。テキストがそのままスクリプトになり、文ごとの時刻も正確です。途中の文で止まったときは、どの文かを示します。その文を直して「音声を作る」を押すと続きから作り、一部の文を直して作り直すときも、直した文だけを作ります。英語は5つ、中国語は3つの声から選べます。1文は400文字まで、全体で20分までです。作った音声はMP3で保存します(1分で約0.5MB)。
- 音源から始める:MP3・M4A・WAV など、ブラウザで再生できる音声を読み込みます。
- 保存した教材:作った音声と読み込んだ音源を、合わせて10件まで保存します。次に開いたときも一覧から選ぶだけです。1件もないうちは表示しません。練習画面も、音声を開くまでは表示しません。
- 区間をくり返す:再生ゲージのA・Bを動かして、くり返す範囲を決め、「区間リピート」をONにします。波形が表示され、「前の文へ」「次の文へ」で文ごとに区間を移れます。
- シャドーイング / リピーティング:練習画面の「練習のしかた」で切り替えます。初めは「シャドーイング」(無音を入れずに再生)です。「リピーティング」にすると、文のあとに無音が入り、その間に声に出して言えます。区間リピートがONなら区間のあとに、OFFなら1文ごとに入ります。スクリプトがないときは、波形の無音で文を区切ります。無音の長さは、初めは文(区間)の1.5倍です(学習者は元の音声よりゆっくり言うことが多いため)。
- 速度を変える:0.5・0.75・1.0・1.25倍のボタンで切り替えます。0.5〜2.0倍の細かい速度は「詳しい設定」で選べます。
- スクリプトを見ながら聞く:教材のスクリプトを貼り付けるか、テキストファイル(UTF-8・GB18030)を読み込むと、1文ずつ表示し、再生している文に色が付きます。文を押すとその文をA–B区間にします。スクリプトは「スクリプトを直す」でいつでも直せます。文の色の位置がずれるときは、「スクリプトを直す」の中の「選んだ文の時刻を今のA–Bにする」で直せます。
- 音声から文字起こし(補助):スクリプトがないときに、スクリプト欄の「その他の方法」から、OpenAIのWhisperというモデルで、端末の中で文字にします(英語・中国語)。精度はそこそこなので、必要に応じて手直ししてください。中国語は簡体字で表示します。
- 詳しい設定(ふだんは折りたたんでいます)
- くり返す回数(無制限・2・3・5・10回)と、リピーティングの無音の長さ(秒数、または「文(区間)と同じ」「1.5倍」「2倍」)。初めは「無制限・1.5倍」です。無音の長さを選ぶと、「リピーティング」に切り替わります。
- ゲージの拡大・縮小・「区間に合わせる」、「今の位置をAに/Bに」と、A・Bの時刻の数字での入力。
- 細かい速度(0.5〜2.0倍、0.05倍ずつ)。
- 録音して聞き比べ:自分の声を録音し、「お手本→自分の声」でA–B区間と続けて聞き比べます。録音は最長60秒で、保存も送信もせず、別の音声を開くと消えます。
- MP3で書き出す:音声全体・A–B区間・5文や10文ごと(ZIP)。文のあとに、文と同じ長さ(1〜8秒)の無音を入れることもできます。無音を含めて20分までです。
- すぐに戻せる:音声やスクリプトを削除した直後は、画面下の「元に戻す」で戻せます。
- 画面の外からも操作できる:ロック画面やイヤホンのボタン、パソコンのキーボード(Space・矢印・A・B・R・[ ])で操作できます。操作部分を通り過ぎてスクロールすると、画面下に小さなプレーヤーが出ます。
機内など、通信のない場所で使う
一度インターネットにつながった状態で開いて音声を保存しておけば、通信なしで起動して練習できます。出発前に、実際に使う端末とブラウザで次を確かめてください。
- 公開ページを開き、練習する音声を追加して「保存しました」と出ることを確かめます。クラウド上にしかないファイルは、先に端末へダウンロードしてください。
- 機内モードにしてページをいったん閉じ、同じアドレスを開き直して、再生できるか試します。
画面下の「ご利用にあたって」に、準備ができていないときの案内と「準備をやり直す」があります。新しいバージョンがあると「更新あり」と出るので、インターネットにつながっているときに「新しいバージョンに更新する」を押してください。登録した音声と設定・スクリプトは消えません。
保存とプライバシー
- 個人情報(氏名・住所・電話番号・メールアドレスなど)や、人に知られたくない内容を含む音声・スクリプトは、登録しないでください。 外部へは送りませんが、同じ端末やブラウザを使う人には見えます。
- 音声・設定・スクリプトは、使っている端末・ブラウザの中に保存します。ほかの端末やブラウザとは同期しません。
- 保存容量が残り少なくなると、「保存した教材」に知らせが出ます。
- 音声を保存すると、ブラウザが自動で消さないように設定を求めます。それでも、ブラウザの履歴・サイトデータを削除すると消えます。元の音声ファイルは残しておいてください。
- 解析サービス・フォントなどの外部への通信はありません。ページ自体も、自分のサイトのファイル以外を読み込めない設定(CSP)にしています。
- 例外は「テキストから始める」の音声モデルだけです。初めて音声を作るときに、音声モデル(英語 約92MB・中国語 約340MB)と声のデータを、Hugging Faceから版を固定して受け取り、ブラウザに保存します。受け取るのはモデルだけで、テキストや作った音声は送りません。一度受け取った言語は、通信なしでも音声を作れます。削除は「ご利用にあたって」の「端末に保存したデータ」からできます。
- 文字起こしも端末の中で行い、音声を送りません。初めて文字起こしするときだけ、文字起こし用のデータ(約95MB)をこのサイトから受け取ってブラウザに保存します。一度保存すれば通信なしでも文字起こしでき、「ご利用にあたって」の「端末に保存したデータ」から削除できます。
- 同じ音声かどうかは「ファイル名・サイズ・最終更新日時」で見分けます。名前を変えたり、編集・再ダウンロードしたりすると、別の音声として扱います。
- Safariのプライベートブラウズでも保存できますが、タブを閉じると消えます。
うまくいかないとき
- iPhoneで音声の追加が進まない:「ファイル」アプリで、音声が端末にダウンロード済みか確かめてください。「音声の読み込みを始める」ボタンが出たら押してください。LINEなどのアプリの中で開いているときは、SafariやChromeで開き直してください。
- 画面を消すと区間がずれる:画面ロックや別のアプリに切り替えている間は、端末の省電力の仕組みで、区間の終わりや無音の長さがずれることがあります。正確に練習したいときは、画面を開いたままにしてください。
- 区間の終わりがわずかにずれる:区間の終わりはJavaScriptで見張っているため、数十ミリ秒ほどずれることがあります。とても短い区間には向きません。
- 再生できない音声がある:拡張子が同じでも、中身の形式や著作権保護(DRM)によって再生できないことがあります。音楽アプリや配信サービスの曲は直接は取り込めません。
- テキストからの音声づくりが止まる:初めてのときは音声モデルを受け取るため、Wi-Fiでお使いください。中国語のモデルは大きく、端末のメモリーが足りないとページが再読み込みされることがあります。そのときは次に開いたときに案内が出ます。ほかのタブやアプリを閉じてから試してください。
- 文字起こしに時間がかかる:端末の性能によって、音声の長さと同じくらいかそれ以上かかることがあります。スマホでは、メモリを使いすぎないように約30秒ごとに文字起こしのしくみを読み直すため、パソコンより時間がかかります。文字起こしできるのは20分までの音声です。途中で止まるときは、ほかのタブやアプリを閉じてから試してください。古いスマホでは、メモリが足りずに使えないことがあります。
- 録音できない:ブラウザの設定で、このページにマイクの使用を許可してください。ほかのアプリがマイクを使っていると録音できないことがあります。
- 文字起こしの誤りが多い:「話している言語」が音声と合っているか確かめてください。雑音や音楽が大きい音声、複数の人が同時に話す音声は苦手です。固有名詞や専門用語は「スクリプトを直す」で直してください。