1. はじめに
Amazon Transcribeでは、(2022年3月現在、最大10人までの)複数話者に対応して文字起こしができる。試しに、使ってみた。
2. 使い方
2.1. 音声ファイルを用意する。
mp4a等(FLAC, MP3, MP4, Ogg, WebM, AMR, そして WAV)のファイルを用意する。なお、AACの場合、どこかでAWSが受け付けるフォーマットに変換する必要がある。
2.2. Amazon Transcribe
mp4a等のファイルをS3に登録する。(アクセス権限は最小で非公開にしておいても、Transcribeは動く。このため、オーナーと同一権限で処理が行われるのではと思われる。)
ここで、話者(Speaker)識別のフラグをオンにして音声認識を実行する必要がある。デフォルトはチャンネル別なので、フラグを変更する必要がある。そして、音声認識結果のjsonファイル(asrOutput.json)を作成する
- (AWS) 音声を文字起こしする
2.3. jsonからテキストに変換する。
上記のファイルだと、json書式で見ずらいのでテキストに変換する。以下のコマンドで変換する。なお、スクリプト本体は参考資料のgithubを参考のこと。
git clone https://github.com/trhr/aws-transcribe-transcript
cd aws-transcribe-transcript
python3 transcript.py asrOutput.json # output goes to asrOutput.json.txt
出力は、上の場合(拡張子に.txtが追加され)asrOutput.json.txt
が出力される。出力例としては以下のような感じである。[0:17:35]
が開始時刻からの時分秒である。spk_0
/spk_2
が話者に相当する。
[0:17:35] spk_2: ま 一つ 提案 という か 質問 さ せ て いただけれ ば と
[0:17:39] spk_0: 思い ます ありがとう ござい ます それでは
A. 参考資料
A.1. 使い方の例(ほかのWeb頁)
A.2. 公式資料や使ったスクリプト
-
Amazon Transcribe
- 音声を文字起こしする Amazon Transcribe を使用 # 利用方法の公式説明
- Amazon Transcribe の料金
- 入力可能データ # FLAC, MP3, MP4, Ogg, WebM, AMR, そして WAVに対応する。(mp4aにも対応している)
- スピーカーの特定 (スピーカーダイアリゼーション)
- カスタム語彙 # 認識精度を上げたい場合に100程度の単語を登録できる。
- trhr/aws-transcribe-transcript # 話者名とその発言ごとに、切り分けるPythonスクリプト。もともとは、PHPで書かれていたようだが、それをPythonに書き換えたらしい。