シャドーイング教材を英語ニュースから自動で作ってAnkiに反映|アップデート編【PART5】

英字新聞と3色のボタンのスマホ、イヤホンと単語カード

※本記事はアフィリエイト広告を含みます

また、シャドーイング教材ジェネレーターの話です。

自分がシャドーイングしたい英語のニュースを、入力フォームに貼るだけ。

あとは、AIが長い記事でも要約して、重要な表現や単語もまとめてくれて、アメリカ・イギリス・オーストラリアの3つのアクセントの音声つきで、Ankiのカードにしてくれる。

そんな仕組みを、5月から6月にかけて、4回に分けて作りました。

n8nで英語シャドーイング教材を自動生成してAnkiにストックする仕組みを作る【PART1】

今回は、それをちょっとアップデートした話です。

きっかけは、月に1回やっている自宅のNAS(Synology)の点検でした。動いているアプリの一覧を見ていたら、見覚えのうすいものが1つ。

「これ、何に使っていたんだっけ? なにか音声をAnkiに入れるやつだった気がするけど…」

調べてもらったら、シャドーイング教材の音声を作っている部品でした。そういえば最近、音声がうまく流れなかった気もしていて、試しに1つ入力してみたら——やっぱり音声だけ作れていませんでした。

さらにスマホのAnkiで開いてみたら、こっちでも音が鳴らない。

この2つを直して、ついでに欲しかった一時停止・停止ボタンも足しました。

英字新聞と3色のボタンのスマホ、イヤホンと単語カード

この記事でわかること
・好きな英語ニュースから、3つのアクセントの音声つきシャドーイング教材を作る流れ
・半年ぶりに使ったら音声が作れなかった原因(edge-ttsの403エラー)
・スマホのAnkiで音声が鳴らなかった原因と直し方
・カードに一時停止・再生・停止ボタンを足した話

スポンサーリンク

シャドーイング教材ジェネレーターでできること

まずは、今どんなふうに動いているかを紹介しますね。

使うのは、自宅のNASで動かしているn8n(自動化のツール)、Gemini(GoogleのAI)、Edge TTS(文章を読み上げて音声にするもの)、Obsidian(メモアプリ)、そしてAnkiです。

n8nの中は、こんな流れになっています。

n8nのワークフロー全体。フォーム→Gemini→Obsidianに保存→Edge TTSで3つの音声

① 英語のニュースをフォームに貼るだけ

シャドーイングしたいニュースの英文を、n8nで作った入力フォームに貼って「Submit」を押すだけです。

n8nで作ったシャドーイング教材ジェネレーターの入力フォーム

送ると、この画面になります。あとは待つだけです。

フォームを送ったあとの画面

フォームはn8nの機能で作っていて、リンクが漏れたときにだれでも開いて送れてしまわないよう、パスワードをかけることもできます。スーツマンは設定しました。

私は英語の勉強にThe Japan Times Alpha(英語学習者向けの週刊の英字新聞)を使っていて、今回もそのニュースから、デジタルデトックスの記事を入れました。

(有料会員向けの記事なので、このあとのスクショの英文と日本語訳はモザイクにしています)

※本リンクはアフィリエイト広告です(PR)

📰 英語学習にThe Japan Times Alphaを使っています

The Japan Times Alpha

週刊の英字新聞で、時事ニュースを英語で読む習慣をつけるのに使っています。語彙解説や文法コーナーもあり、英検・TOEIC対策にも使えます。Fujisanで定期購読すると毎週自動で届くので管理が楽です。

The Japan Times Alpha をFujisanで見る

② AIが要約して、表現と単語をまとめてくれる

ここからはGemini(Gemini 2.5 Flash)の出番です。

貼った記事が長くても、100〜120語くらいのシャドーイング用の英文に要約してくれます。レベルはB2〜C1くらいを指定しています。

あわせて、

  • 日本語訳
  • 重要な表現5つ(例文つき)
  • 関連する単語5つ
  • ジャンル分け(テクノロジー、社会・文化など)

まで作ってくれます。

とある記事の全文をコピーして入力してみたところ、カードがすぐ降りてきました。その中の一部です。

AIが作った重要表現と関連語彙

あ、ちなみに、試しに自分で書いた1文だけ(「I went to a cafe in Seto yesterday.」)をn8nの入力フォームに入れてみたら……

1文だけ入れたら、AIが100語以上のカフェ体験記にふくらませた(作り話)

AIが勝手に話をふくらませて、100語以上のカフェ体験記にしてくれました。笑

「Komorebi(こもれび)」というカフェの名前も、ラテや陶器をイメージしたケーキの話も、全部AIの作り話です。(実在のお店ではありません)

長い記事なら120語くらいに要約してくれて、短い文だと、逆に想像でふくらませてくれる。「100〜120語のシャドーイング用の英文を作って」と頼んでいるので、足りない分をAIががんばって埋めてくれたみたいです。これはこれで、なんか面白いなと思いました。

③ 3つのアクセントで音声を作る

できた英文を、Edge TTSがアメリカ・イギリス・オーストラリアの3つのアクセントで読み上げて、音声ファイルにします。

しかも、それぞれ男性か女性かはランダムです。

アクセント声(どちらかがランダム)
アメリカChristopher(男性)/Aria(女性)
イギリスRyan(男性)/Sonia(女性)
オーストラリアWilliam(男性)/Natasha(女性)

できた英文と音声は、Obsidianにカードの形で保存されます。Obsidianの中でも、そのまま3つの音声が聴けます。

Obsidianに保存されたカード。US・UK・AUの3つの音声が聴ける(英文はモザイク)

④ Ankiに送る

Ankiを開いた状態で、Obsidianのプラグイン「Obsidian_to_Anki」のScan Vaultを押すと、Ankiの「英語シャドーイング」のデッキにカードが届きます。

Ankiの英語シャドーイングのデッキに新しいカードが届いた
ObsidianからAnkiに直接同期できるプラグインを見つけて、PC移行の悩みが消えた話

⑤ カードで聴き比べる

カードの表には、US・UK・AUのボタンが並んでいます。押したアクセントの音声が流れて、再生バーが出てきます。

カードの表。US・UK・AUのボタンと再生バー、速度ボタン

ボタンの使い方は、このあとの「一時停止・再生・停止ボタンを足した」で、画像つきで紹介しますね。

裏を返すと、シャドーイング用の英文と日本語訳、重要表現と単語が出てきます。

カードの裏。シャドーイング用の英文(モザイク)

ここまでが、今の完成形です。では、ここからアップデートの話を。

半年ぶりに使ったら音声が作れなかった

試しに1つ入力して、n8nの実行の記録を見てみると、こうなっていました。

n8nの実行記録。音声を作るHTTP Requestだけ赤くなって止まっている

フォーム → Gemini → Obsidianに保存、までは成功。音声を作るところ(HTTP Request)だけ赤くなって止まっています。

エラーの中身は、Microsoftの読み上げサービスからの403(お断り)。記録をさかのぼると、最後にちゃんと音声ができていたのは5月25日でした。

CLAUDE君に調べてもらうと、Microsoftが10月に、読み上げサービスへの接続のしかたを変えたのが原因で、Edge TTSの中で使われているedge-ttsという部品の古い版が、門前払いされていたみたいです。

NASのコンテナの中のedge-ttsを、新しいしくみに対応した7.3.1に入れ替えて、n8nで失敗したところからやり直したら……

n8nで失敗した実行をやり直して成功した画面

緑になって、3つの音声ができました♪( ´θ`)ノ

コンテナのイメージを新しくするだけでは直らなかったりと、ちょっとクセのある直し方だったので、手順は別の記事にまとめました。同じ「edge-tts 403」のエラーで困っている方は、こちらを見てみてください。

edge-tts 403エラーの直し方|Synologyのopenai-edge-ttsで音声が作れなくなったら

あ、ちなみに、Edge TTSは、Microsoft Edgeの「音声で読み上げ」の機能を、公式ではない方法で使わせてもらっている仕組みです。なので、作った音声は自分の勉強用にとどめておくのがよさそうです。今回、記事に音声そのものを貼らずにスクショで紹介しているのも、そのためです。

スマホのAnkiで音声が鳴らなかった

イヤホンを片方外して、音が出ずに首をかしげるスーツマン

音声ができたので、スマホのAnkiでも開いてみると……。

スマホのAnkiでボタンを押しても鳴らず、Card Content Errorが出た画面

ボタンを押しても鳴らない。しかも下に「Card Content Error: Failed to load ‘downloadfile.bin’」というエラーが出ています。

以前、スマホで鳴らなかったときは、音声ファイルの名前に漢字が入っていて、AnkiWebで同期できないのが原因でした。

3アクセントボタン実装──US・UK・AUをAnkiカードで聴き分ける仕組みを作った話【PART3】

でも今回は、ファイル名は英数字にしてあります。

原因:速度ボタンのときの作りだった

CLAUDE君に調べてもらうと、原因は6月に再生速度のボタンを付けたときの作りでした。

Ankiカードの再生速度を変える方法──実装で7回詰まったポイントとコードを全公開【PART4】

あのとき、ボタンが「どの音声ファイルを鳴らすか」を、パソコンのAnkiに入れたアドオン(AnkiConnect)に聞く作りにしていたんですね。

ところが、スマホのAnkiにはAnkiConnectがありません。パソコン用のアドオンは、スマホのAnkiでは使えないので。

  • ボタンが、鳴らすファイルの名前を知らないまま、何もしない
  • いない相手(AnkiConnect)に聞きに行って失敗する → それが「downloadfile.bin」のエラー

ということでした。つまり、速度ボタンを付けてから、スマホではずっと鳴っていなかったのかな、と。

直し方:ファイル名をカードの中に隠しておく

PART4で書いたとおり、Ankiのカードの中に[sound:と書くと、Ankiが勝手に再生ボタンに置き換えてしまうので、ファイル名をそのまま書いておくことができません。

そこで、音声の欄に、ファイル名を見えない形でしまっておくことにしました。

AudioUS: ![[20261101_tech_xxxx_us.mp3]] <span class="afn" hidden>20261101_tech_xxxx_us.mp3</span>

hiddenを付けた<span>は画面には出ないので、見た目は変わりません。カードのボタンは、ここからファイル名を読むようにしました。

var afn = document.querySelectorAll('#native-audio .afn');
['us', 'uk', 'au'].forEach(function(acc, i) {
  if (afn[i]) { files[acc] = afn[i].textContent.trim(); }
});

これでパソコンでもスマホでも、AnkiConnectなしでファイル名がわかります。n8nのほうも、カードを作るときにこの<span>を自動で入れるように直しました。

それでもファイルが読めなかったときは、Ankiにもともとある再生ボタンで鳴らすようにして、保険もかけてあります。

スマホで開いてみると……鳴りました!!

できました!!感動です♪( ´θ`)ノ

しかも、さっきまでスマホでは変えられなかった再生速度も、スマホから変えられるようになりました。

一時停止・再生・停止ボタンを足した

使っていて、もう1つ不便だったのが、音声が一度鳴りだしたら止められないこと。

そこで、再生バーの上に、一時停止/再生と停止のボタンを足してもらいました。

カードのボタンの説明。アメリカ英語・イギリス英語・オーストラリア英語、5秒もどる・一時停止・停止・再生速度
  • ①5秒もどる
  • ②一時停止/再生(押すたびに切り替わる)
  • ③停止(止めて、最初にもどる)
  • ④再生速度(1.0・1.25・1.5倍)

パソコンでもスマホでも、同じように使えます。

まとめ

ノートパソコンでAIに頼んで、ほっとした顔のスーツマン

今回のアップデートは、この3つでした。

今回のアップデート
・音声が作れなかった → Microsoftの変更で、edge-ttsを7.3.1にして直した
・スマホのAnkiで鳴らなかった → ファイル名をカードの中に隠しておく形にして直した(スマホでも速度が変えられるように)
・一時停止・再生・停止のボタンを足した

自分がシャドーイングしたいニュースを貼るだけで、要約・表現・単語・3つのアクセントの音声までそろったカードができて、パソコンでもスマホでも、速度を変えながら練習できる。

今回みたいに、音声が作られなかったり、エラーが出たりしたときに、何がいけないのかは、私にはちょっとわかりません。でも、AIがn8nも触ってくれるし、Ankiの中もAnkiConnectで触ってくれるので、ほんとに自然な言葉で頼むだけで直せるようになったのが、いちばん心強いなと思っています。

5〜6月に作ったときより、ちょっとだけ使いやすくなりました。

同じように自分でシャドーイング教材を作っている方の参考になればうれしいです。

シリーズの記事はこちらです。

n8nで英語シャドーイング教材を自動生成してAnkiにストックする仕組みを作る【PART1】
n8nで英語シャドーイング教材を自動生成してAnkiにストックする仕組みを作る──TTS3回詰まり編【PART2】
3アクセントボタン実装──US・UK・AUをAnkiカードで聴き分ける仕組みを作った話【PART3】
Ankiカードの再生速度を変える方法──実装で7回詰まったポイントとコードを全公開【PART4】

☕ この記事、お役に立てましたか?

35歳から8年間、英語学習を続けてきた記録をこのブログに書いています。
よかったら応援していただけると、次の記事を書く励みになります!

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です