LynxTipsとは?
クラウドSTT(Speech-To−Text、以下STT)サービスを利用してユーザテストなどの動画記録の書き起こしを行い、動画眼(後述)で任意のシーンの頭出しに活用するためのツールです。クラウドSTTサービスとしてはIBM Cloud(Watson)を使用します。音声ファイル先頭からのタイムインデックスを付与してくれる点と、有償オプションですが他社にはない単語登録(カスタム言語モデル)などのカスタマイズができる為、専門用語や製品名が頻出するユーザテストの書き起こしには適しているとの判断です。
IBM CloudのクラウドAIサービスWatsonのSpeech-To-Text(音声認識)サービスのページ
動画眼とは?
動画ファイルと、「タイムコード(タブ区切り)発話」というフォーマットで記録したサイドカーテキストファイルを読み込み、発話箇所をダブルクリックして動画の頭出しを行うWindows向け拙作ツールです。従来、発話記録方法として、
- 事後に"動画眼"上で動画を再生しながら分析者が記入
- 姉妹ツール"動画眼Note"で実査中に観察者が記録(録画機材とタイムコードを同期して記入する)
という方法がありましたが、これに加え今回、
- 事後に動画/音声ファイルをクラウドSTTにかけ、全発話をインデックスとして使用
という第3の選択肢を提供するのが本ツールの目的です。
動画眼についての詳細はこちらのページをご覧ください。
なまえのひみつ
Lynxとはヤマネコのことで、某テキストブラウザが有名ですが一切関係ありません。
Lynx Tipsというのは我が家でも飼っていたメインクーン種の猫特有の耳の先端にアンテナのようにピンと立つ毛のことです。
(いやいや1画像ではよくわからない、もっと見せろ!という方はこちらをどうぞ。)
本ツールは「猫の手も借りたい」ということわざをもじって「猫の耳も借りたい」というコピーを採用しています。実のところ現在の音声認識技術ではちょっと実用になるかビミョーな認識精度なわけですが、それでも忙しい方には何かの助けにはなるかも知れない、というシロモノです。それでなにか猫の耳にちなんだ名前やアイコンはないかなぁと物色する中で、このアンテナを思いつきました。実際音や風をより鋭敏にキャッチする機能があるんだとか。
まぁ本ツール名を思い出せなかったら「猫の耳」とか読んでいただいても結構です。
LynxTipsの仕組み
LynxTips自体はWindows向けのアプリケーションです。動画から音声を抽出したり形式変換を行うのにffmpegというオンラインツールを使用します。そしてSTT処理にIBM Cloud(Watson)のSTTサービスを使用します。同サービスはWAVやMP3、FLACのような音声ファイルを送信することで、書き起こし結果をタイムインデックス付きのテキスト情報として返します。この時の形式はJSONと呼ばれるプログラム処理向けのフォーマットになる為、本ツールで動画眼と互換性のある「タイムコード(タブ区切り)発話」形式に変換します。シンプルなタブ区切り形式のため、Excelなどの表計算ツールで開くことも可能です。将来的にはWatsonの返す話者推定情報や書き起こし信頼度のような情報もフォーマットの中に取り込み、次期バージョンの動画眼で活用できるようにする予定です。
本ツールは書き起こししたい動画ファイルをドラッグ&ドロップするだけで、
- 動画ファイルから音声のみを抜き出しWatsonに最適な16kHzなFLAC形式音声ファイルを生成
- その音声ファイルをWatsonサーバーに送信
- JSON形式の出力データをタブ区切りテキストファイルに変換して保存
といったことを自動で行います。また、
- 認識精度を向上させる為、いわゆる単語登録的な機能(カスタム言語モデル)に対応
- ICレコーダーなどの高音質なWAVファイルをWatson向けに十分な音質のMP3ファイルに変換
- 複数ファイルの並行処理により書き起こし時間の短縮
といった機能も備えています。これらをコマンドラインツール(黒画面)を駆使することなく誰でもGUIで簡単に利用できるようにするのが本ツール利用の意義となります。
利用に必要なもの
音声状態の良い動画ファイル
UTなどを録画した動画ファイルです。MP4、MPEG2など最近のビデオカメラ、スマートフォン、レコーダー、画面記録ソフトなどが出力する主要な動画形式には対応できてると思います(FFPMPEGの対応に依存します)。より書き起こし精度を上げるため特に音声収録環境に気を配り、雑音が少なく対象人物声がはっきりと聞き取れる状態が望ましいです(対象ではない人の声が混じって聞こえるのもよくありません)。
.NET Framework 4.7
Microsoftが配布するアプリケーション実行環境です。Windowsのバージョンによっては既に導入済みであることが多いですが、場合によっては追加インストールが必要になる場合もあります。無償です。必要バージョンは将来的に変更する可能性があります。
LynxTips(本ツール)
開発バージョンは無償でご利用いただけます。将来的にどうするかは未定です。
FFMPEG
様々な形式の動画ファイルから音声を抽出するのに使用します。オープンソースで無償でダウンロードできます。本ツールとは別にダウンロード/インストールしておく必要があります。
IBM Cloudアカウントおよび利用料
IBM Cloudにはライトアカウントという無償ライセンスアカウントもありますが、残念ながら単語登録などによるカスタム機能が利用できません。本ツールでは原則として有料アカウントを用いた利用を想定しています(カスタム機能を用いないのであればGoogleなどの無償サービスもあるため)。
Watson利用料金のめやす(2019.7月現在)
1分あたり、約2円(基本)+約3円(カスタマイズ)=約5円強。利用量が一定基準を超えると基本部分が下がるようですが250,000分とかなのであまり関係ないでしょう。「1分辺り」というのが音声データの長さなのかサーバー上の処理時間なのかはっきりしないのですが、ほぼ実時間かかるので音声データの長さで考えてよいと思います。つまり、60分の音声があったとすると、60分 x 5円 = 300円というところだと思います。無言区間が長くても60分は60分だと考えておくと良いでしょう。
※利用料金はプランや時期、ご利用条件により異なります。詳細は公式ページを御確認ください。
インターネット接続
クラウドサービスを使用するので、本ツール実行時はインターネット環境が必要です。
動画眼(オプション)
当サイトでフリーソフトとして配布している動画再生ツールです。タブ区切りテキストを取得するまでが目的であれば不要です。
Watson STT精度について
音声収録条件にもよりますが、ぶっちゃけまだまだです。テキストだけ読むと意味が通じない部分などザラにあります。テキストだけ読んでUTセッション観察の代わりにできる、ということにはならないでしょう。ただ、セッションを実際に観察していた人が、「あのシーンを詳しく見返したい」と思って探す手がかりにはなるのではないかと考えています(動画眼を使えばキーワード検索もできます)。
またWatsonのカスタム言語モデル学習機能に対応しているので、セッションに固有の製品名や専門用語をあらかじめ登録することで認識精度を向上させることは可能です。Watson自体には単語だけではなく文章を食わせるコーパス学習機能も備わっており、本ツールも将来的には対応させたいと思っています。これは例えばそのセッションで使われる言葉や文を含むテキスト、つまりタスク一覧とかインタビューガイド/進行シートの内容を学習素材にする方法です。あるいは1人分を手作業である程度修正したものを利用する手などもあるかも知れません。これらについては効果も検証しつつ今後の課題としていきたいと思います。
利用許諾
以下の内容に同意いただける場合のみβ版をご利用いただけます。
- 認識エンジンはWatson Speech to Textサービスで、書き起こし精度は同サービスの性能および音声収録品質に依存します
- Watson利用は有償であり、本ツールがクラッシュなどでデータを保存できなかった場合でも利用料が発生することがあります
- 送信された音声データは暗号化されてWatsonクラウドに送信され、処理後はサーバー側には保管されないはずですが、それを製作者が保証するものではありません
- 利用情報はアプリケーションとWatsonクラウド間でのみやりとりされ、製作者の側がそれを読み取ることはありません
- ただしバグ検証の目的でクラッシュログなどを任意でご提出いただく場合に、ファイル名や形式、再生時間などの情報が含まれる場合はありますので、その際には事前に送信内容を御確認ください