Ankiで音声出力する方法 まとめ (Android/iOS/PC)
Ankiで「音声ファイルを出力する方法」と「テキストを読み上げさせる方法」について、どのような手段があるか紹介します。また、AwesomeTTSを使った音声ファイル一括設定方法についても説明します。
目 次
Ankiで音声を出力したい、英単語の発音を確認したい!
方法は色々あるが…
TTSか音声ファイルを利用する
Ankiで音声を出力する方法はいくつかありますが、「TTS (Text-to-Speech、テキスト読み上げ機能) を利用する方法」と、「音声ファイルを取り込んで再生する方法」に大別できます。
TTS (テキスト読み上げ) | 音声ファイル | |||||
---|---|---|---|---|---|---|
すぐ使える | Javascript | アドオン | 取り込み | 再生 | 再生 (HTML5) | |
AnkiDroid (Android) | 〇 | × | × | 〇 | 〇 | 〇 |
AnkiMobile (iOS) | 〇 | 〇 | × | × | 〇 | 〇 |
Anki (PC) | × | × | 〇 | 〇 | 〇 | 〇 (2.1以上) |
本記事ではそれぞれの設定方法を解説します。
オススメの方法は?
手軽なのはTTSですが、OSごとに設定方法異なり、かつ読み上げ範囲の指定が細かくできない方法が多いという欠点もあります。一方、音声ファイルは一度取り込めばデバイスに依存せず再生できますが、音声ファイルを用意する手間がかかります。
どちらも一長一短ですが、TTSでは痒い所まで手が届かないことが多いため、音声ファイルを取り込む方がオススメです。音声ファイルが無い場合は、PCのAnkiでアドオン (AwesomeTTS) を利用し一括で音声ファイルの自動生成・設定を行うこともできます。個人的にはこの方法が一番オススメです。
もちろん、PCで作業してもAnkiWebを通じてAndroid版、iOS版のAnkiに音声ファイルを同期することが可能です。Anki全般の情報については「Ankiを始める/紹介する時に必要な情報を集めたページ」を参照ください。
前提条件
英単語一覧の取り込み
本記事では、Ankiのインストールおよび英単語一覧の取り込みまで完了しており、英単語の発音を確認したい、という状況を想定しています。英単語一覧の作成・取り込みについては以下記事を参照してください。
作業環境
本記事の内容はAnki 2.0.50 (Windows版) での操作になります。バージョン 2.1以上の場合でも操作手順自体は同じですが、項目の名称や名称が多少違う場合があります。適宜読み替えてください。Mac版のAnkiについては試していませんがWindows版と同等の操作ができるはずです。
OS | ソフトウェア |
---|---|
Android 7.0 | AnkiDroid 2.8.3 |
iOS 11.4 | AnkiMobile 2.0.38 |
Windows 10 | Anki 2.0.5.0 |
TTS (音声読み上げ機能) を利用する方法
概要
OSの機能を利用する
Android、iOS、Windows、MacにはTTS (合成音声でテキストを読み上げる機能) が備わっています。とりあえず簡単に音声を出力できるので、Ankiの使い方が良く分からない場合はこの方法を利用しても良いでしょう。特にAndroid版のAnkiにはアプリ内にTTSに関する設定があり、簡単に合成音声を出力することができます。
一方、iOS版やWindows版、Mac版のAnkiは直接TTSと連動していないため読み上げる範囲を指定したり、アドオンをインストールし、カードテンプレートにも変更を加える必要があったりと、少し手間がかかります。
Android (AnkiDroid) のTTS
AnkiDroidの設定
Android端末には「Googleテキスト読み上げ」などのTTSがインストールされており、AnkiDroidの設定で有効・無効を切り替えることができます。
設定手順は「Android版Anki(ankidroid)で、英単語の読み上げを有効にする」を参照ください。
iOS (AnkiMobile) のTTS
iOSの読み上げ機能/Javascriptを利用する
iOSの機能を利用する方法
iOSには、選択した項目または画面全体のテキストを読み上げる機能があります。[設定]-[一般]-[アクセシビリティ]-[スピーチ]の中に設定があるので、有効にすればAnkiのカード上にある英単語や英文を読み上げさせることができます。
※ | 英単語が日本語音声で読み上げられる場合、デバイスの使用言語を英語にすれば英語音声で読み上げられる (はず) |
Javascriptを利用する方法
AnkiMobile限定ですが、音声読み上げ用のJavascriptをAnkiの表面/裏面テンプレートに記述することで、自動で音声を読み上げさせることもできます。
詳細は「iPhone 版 Anki でテキストを読み上げるには – ノートを読み上げるカードテンプレートの作り方」を参照ください。
※ | Javascriptで読み上げさせる方法は正式サポート外 |
PC (Windows/Mac) のTTS
アドオンをインストールして対応する
Windows、MacにもTTSの機能自体はありますが、AnkiにはTTSを利用する機能がありません。しかし、AnkiにAwesomeTTSというアドオンを追加し、表面/裏面テンプレートに
なお、このAwesomeTTSは音声ファイルの一括作成・設定もできます (手順は後述)。個人的にはファイルを作成する方法の方がオススメです。
2018年6月時点で利用できない方法
GoogleのオンラインTTSサービスは利用できない?
Ankiマニュアルなどで説明されている音声出力方法の1つに、カートテンプレートにGoogleのテキスト読み上げ機能を呼び出すURLを記載する方法があります。以下のような記述をAnkiの表面/裏面テンプレートに記載するだけという手軽な方法でしたが、Google側で仕様変更があったようでこの方法は使えません (2018年6月時点)。
[sound:http://translate.google.com/translate_tts?ie=utf-8&tl=en&q={{Front}}] |
音声ファイルの取り込んで再生する
概要
PCで作業するのが一番簡単
すでに音声ファイルが準備できているのであれば、
- Ankiのフォルダ内にmp3などの音声ファイルを保存する
- Ankiのカード テンプレートに音声ファイルを呼び出す記述を書く
上記作業でAnki上で音声を出力することができます。基本的にはPCのAnkiで一括設定し、Android/iOS側で同期を行う方法が簡単です。
① 音声ファイルをAnkiフォルダに保存する
ファイルの保存場所
OSのバージョン、AnkiのバージョンによってAnkiのインストールフォルダは異なる場合がありますが、基本的には以下フォルダが該当します。Windows、Mac、Linuxについてはマニュアルの説明も参照してください。
OS | Ankiで音声ファイルを保存するフォルダ |
---|---|
Android | (ストレージ)\AnkiDroid\collection.media |
Windows | %APPDATA%\Anki2 |
Mac | ~/Library/Application Support/Anki2 |
iOSについては、AnkiMobileのmediaフォルダはシステム管理下におかれ、通常の方法ではアクセスできません。PCで作業し、同期する方法を取りましょう。
Windowsでの操作方法例
例として、Windows 10での操作を記載します。
キーボードの[Windows (四角い窓のロゴ)]キーと[R]キーを同時に押します。[ファイル名を指定して実行]画面が表示されるので以下を入力し、[OK]をクリックします。
%APPDATA%\Anki2 |
Anki2フォルダが開かれるので、その中の[ユーザー名]-[collection.media]フォルダを開き、その中に音声ファイルを保存すれば作業は完了です。
※ | 音声ファイルの名前は任意。英単語と同じ名称だと管理上便利ではある |
② 音声ファイルを呼び出す記述
基本となる書き方 (Android/iOS/PC)
基本の書き方
Ankiで音声ファイルを扱うには、以下のように記載します。
[sound:音声ファイル名.拡張子] |
例えば音声ファイル名が「ecclesiastical.mp3」の場合、[sound:ecclesiastical.mp3]のように記載します。
ただ、Ankiの画面でSoundフィールドに1つ1つ入力していくのは手間なので、CSVファイルで音声ファイル名を管理し、一括で取り込んだ方が良いでしょう。
なお、画像のように音声ファイル名のみのCSVファイルを取り込む場合は、カードテンプレートに以下のような記述をします。
[sound:{{Sound}}] |
音声ファイル名と英単語を同じに設定した場合
英単語と音声ファイル名が同じ場合、カードテンプレートに以下のような記述を追加すれば、わざわざ音声ファイル名を入力する「Sound」フィールドを用意する必要はありません。
[sound:{{Eng}}.mp3] |
補足: 再生ボタンの表示について
音声再生ボタン (▶) は、Android版とiOS版のAnkiでは自動で表示されますが、PC版では表示されません。表示させるには別途アドオン「Replay buttons on card」をインストールする必要があります。
HTML5での書き方 (Android/iOS/PC(2.1以上))
HTML5のaudioタグを利用
AndroidやiOSのスマホ/タブレット、またはPC版 Anki 2.1以上で実施しているという場合は、HTML5で記述しても良いでしょう。
具体的には、以下のような記述をします。
<audio controls autoplay src="音声ファイル名.拡張子" /> |
カードテンプレートには
<audio controls autoplay src="{{Sound}}" /> |
<audio controls autoplay src="{{Eng}}.mp3" /> |
上記のように記載することになるかと思います。
再生開始時間の指定も可能
audioタグでは、音声ファイルの再生開始時間を指定することができます。
<audio controls autoplay src="音声ファイル名.拡張子#t=開始時間,終了時間" /> |
例えば、以下のように記述すると、再生時間5~10秒間の音声が自動再生されます。
<audio controls autoplay src="section1.mp3#t=5,10" /> |
CSVファイルで開始時間・終了時間を準備し、それぞれAnkiの「Start」「End」フィールドに読みんだとすると、以下の記述をカードテンプレートに記載すれば良いでしょう。
<audio controls autoplay src="{{Sound}}#t={{Start}},{{End}}" /> |
複数の単語・文章が1つにまとまっている音声ファイルの場合は、このようにHTML5のaudioタグを利用した方がよさそうですね。
AwesomeTTSで英単語の音声ファイルを一括設定
概要
PC版AnkiでTTSを利用するために必要なアドオン「AwesomeTTS」ですが、Googleの合成音声やOxford Dictionaryの英単語の音声をダウンロード・保存する機能があります。一度音声ファイルを作成すれば環境に左右されず音声再生が可能なため、TTSで音声を再生するよりもおすすめです。
ここでは具体的な操作方法を説明します。
アドオンのインストール
AwesomeTTS
Downloadコードを確認してインストールする
Ankiを起動し、[ツール]-[アドオン]-[検索とインストール]をクリックします。
※ | Ver 2.1以上の場合は、[ツール]-[アドオン]をクリックし、起動した画面で[新たにアドをンを取得]をクリック |
一覧の中に「AwesomeTTS」があるのでクリックして開き、ページの下の方にある[Download]のコードをコピーします。
※ | Anki 2.0と2.1ではAwesomeTTSのDLコードが異なるので注意 |
Replay buttons on card
再生ボタンを表示するアドオン
前述していますが、PC版Ankiで音声再生ボタン (▶) を表示させる場合は、アドオン「Replay buttons on card」をインストールする必要があります。
必要な場合はAwesomeTTSと同様の手順でDownloadコードを確認し、インストールしてください。
フィールドとテンプレートの準備
音声ファイル設定用のフィールドを作成
音声を作成する単語帳を画面の左型の一覧から選び、右側の[フィールド]をクリックします。
※ | 画像ではVol.4という単語帳の英単語に音声ファイルを追加する |
※ | Ankiのバージョンが2.1以上のブラウザーで画面左の単語帳一覧が表示されていない場合、画面上部のメニュー[移動]-[サイドバー]を選択すると単語帳一覧が表示される |
カードテンプレートの編集
テンプレートの編集画面が表示されるので、表面/裏面テンプレートに{{フィールド名}}を追記します。フィールド名がSoundの場合は{{Sound}}をテンプレート内に記載します。
以上でテンプレートの編集は完了です。
音声ファイルの一括作成
環境設定
設定画面の[MP3s]タブを開き、画面下部の「After」と「sleep for」の設定を変更します。任意に決めて良いのですが、ひとまず以下の値に設定し、[OK]をクリックします。
項目 | 値 |
---|---|
After | 100 operations |
sleep for | 30 seconds |
ちなみのこの設定は「音声ファイルをいくつ作成したら、何秒間隔をあけるか」を決めるもので、Afterの設定を大きくするほど、sleep forの設定を小さくするほど処理の一時停止時間が短くなります。
※ | 停止時間を短くしすぎるとサーバー側の負荷が高くなり、正常に処理されなくなる可能性があるので程々にしておくこと |
音声ファイル一括設定
音声作成の設定
設定画面の画面左側は音声を作成/ダウンロードするサービスの選択画面です。
任意で選択して問題ありませんが、例えば英単語の音声 (米国) を作成する場合は以下を選択します。
Generate Using | Oxford Dictionay |
Voice | English, American (en-US) |
単語ではなく英文の音声を作成する場合は以下を選択します
Generate Using | Google Translate |
Voice | English, American (en-US) |
設定画面の右側では、どのフィールドの音声を、どこのフィールドに設定するのかを決めます。
「Eng」フィールドの単語の音声を「Sound」フィールドに設定する場合は、以下のように設定します。
Source Field | Eng |
Destination Field | Sound |
Overwrite ~ | チェック |
Wrap the Filename ~ | チェック |
補足
音声ファイルが未設定の項目のみ抽出して一括設定する方法
音声ファイルの一括作成を途中で中断したり、単語帳に英単語を追加などした場合、音声ファイルの設定を行っていない項目のみ抽出して処理を行いたいことがあるので、作業手順を簡単ですが説明します。
まずは[ブラウザー]画面を開き、画面左側の一覧から処理対象の単語帳を選びます。
項目一覧の上に「deck:単語帳名」と表示された欄があるので、その後ろに半角スペースを空けて「-[sound」と入力し、キーボードの[Enter]キーを押すと音声ファイル未設定の項目の一覧が表示されます。
あとはキーボードの[Ctrl]と[A]キーを同時押しして全選択し、前述の手順で音声ファイルの設定を行えば良いでしょう。
※ | 検索欄に マイナス(-) を付けた文字を入力することで、その文字を含まない項目を抽出することができる |
音声ファイルの設定を一括削除する場合
音声ファイルの設定を一括削除することも可能です。
[ブラウザー]画面で音声ファイルを削除したい項目を選択したら、[AwesomeTTS]-[Remove Audio from Selected]をクリックします。
学習時、音声を自動再生したい場合
終わりに
音声の出力方法は色々ありすぎて……
Ankiで音声出力する方法は多く存在し、またOSに依存する部分もあるのでややこしいです。ネットで検索しても部分的な情報しか掲載されていないことも多いため、この記事では音声出力に関する方法全般についてまとめました。お役に立てば幸いです。
About me
管理人 矢月
(@yazuki_tw)
英語の娯楽作品に関する情報をまとめています。洋書に加え、英語のマンガ・アニメ・ライトノベル・ドラマ・ゲームでの多読多聴も楽しいですよ……!
英検、TOEIC、英単語集の語彙レベルや Anki についても調べて公開中。