Amazon Transcribeで約17分の動画ファイルの文字起こしをしてみた

AWSのAmazon Transcribeで約17分の動画ファイルの文字起こしをしてみたAmazon Transcribeを使って、YouTubeに投稿する動画の文字起こしをしてみました。
2020.06.25

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Developers.IO 2020 CONNECT用に作成した動画ファイルの文字起こしに挑戦してみました。 いくつかの手段がありますが、AWSのAmazon Transcribeを使ってみます。

Amazon Transcribeで文字起こしをする

動画ファイルを音声ファイルに変換する

Amazon Transcribeは動画ファイルは扱えないため、音声ファイルに変換します。 今回はQuickTime Playerを使って、オーディオファイルの書き出しを行いました。

動画を音声に変換する

S3バケットに音声ファイルをアップロードする

適当なS3バケットに先ほど変換した音声ファイルをアップロードします。

S3バケットに音声ファイルをアップロードする

Jobを作成する

適当なJob名を入力し、入力言語としてJapaneseを選択します。

Amazon TranscribeのJobを作成する

Input Dataとして、先ほどアップロードしたS3オブジェクトであるs3://cm-fujii.genki-test/amazon_transcribe_devio.m4aと入力します。 Output DataはデフォルトのService-managed S3 bucketを選択しておきます。

Amazon TranscribeのJobが動き出した

Nextを押して進みます。Optiona設定はそのままで進むとJobが開始されました。

Amazon TranscribeのJobが動き出した

3分ぐらいで終わりました。早い。

Amazon TranscribeのJobが完了する

文字起こし結果を確認する

プレビュー表示の様子

なんかいい感じです。

Amazon Transcribeの結果(プレビュー表示)

5000文字を超えたのでプレビュー表示は終わっていました。

Amazon Transcribeの結果(プレビュー表示)で5000文字を超えた

全データを確認する

Example API responseにあるJSON内のURL(TranscriptFileUri)をコピペして叩くと、JSONファイルがダウンロードできました。

Amazon Transcribeの結果のJSONファイルを取得する

中を見てみると、最後までバッチリ文字起こしされていました。

Amazon Transcribeの結果(JSONファイル)

Amazon Transcribeの結果(JSONファイル)

このままだと空白があって読みにくいので、一括置換で空白を削除すると良さそうです。

おもしろ間違いをピックアップしてみた

滑舌とかノイズとか音量レベルとかいろんな理由があると思いますが、変な文字起こしをピックアップしました。

文字起こし結果 実際の発言
魔性 〜ます、〜ましょう
妹ワーク リモートワーク
ディベロッパー剤 Developers.IO
デベロッパー材用 Developers.IO
ディベロッパー材料 Developers.IO
永田ベース AWS
選ぶレース AWS
足うむロール Assume Role
嫌みポリシー IAMポリシー

たくさん話したけれど、これ以外に変なところはあまり無かったです。すごい。(同音で異なる漢字とかはあります。「聞く側」と「菊川」とか。)

全体的に英語の発音ですね、はい……。

さいごに

思っていたよりも精度が良くて驚きました。自分の滑舌や発音が良ければ、もっと精度が上がるのでしょうか……。

参考