このページの本文へ

前へ 1 2 3 次へ

松本典子の「Azure Logic Apps」超入門 ~AI編~ 第11回

Azureの「Logic Apps」+「Video Indexer」でYouTubeでも使えるWebVTT形式のデータを生成する

AI+ノーコードで動画の字幕を自動生成するツールを作ろう

2021年02月15日 08時00分更新

文● 松本典子 編集● 大塚/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

3-3. video-captionワークフロー(.vttファイルを生成してOneDriveに保存する)

video-captionの全体図

 2つめのLogic Appsワークフロー、video-captionの全体図はこのような形です。先ほど作成したvideo-indexerの結果を利用して、WebVTTフォーマットのキャプションテキストファイルを生成し、OneDriveの指定フォルダに保存します。

3-3-1. Azure Logic Appsのトリガーの作成

 このワークフローのトリガーには「HTTP 要求の受信時」を選択します。「要求の受信時」と検索するとトリガー欄に表示されるので、選択します。

 ここでいくつかの設定項目が表示されますが、特に設定することはありません。

3-3-2. Get Account Access Token(プレビュー)コネクタの設定

 「+新しいステップ」をクリックして、次のアクション(Video Indexerサービスへの接続)を追加します。

 「Video Indexer」コネクタを検索して、アクション一覧から「Get Account Access Token(プレビュー)」を選択します。

Get Account Access Token(プレビュー)コネクタの設定

 上の画面表示に切り替わったら、以下の設定を入力します。

  1. Location:「trial」を選択
  2. Account ID:2-1-2.で確認したAccount IDをコピー&ペースト
  3. Allow Edit:「はい」を選択

3-3-3. Get Video Index(プレビュー)コネクタの設定

Get Video Index(プレビュー)コネクタの設定

 「+新しいステップ」をクリックして、次のアクション(Video Indexerサービスからビデオのインデックス情報を取得)を追加します。

 「Video Indexer」コネクタを検索し、「Get Video Index(プレビュー)」アクションを選択します。この表示に切り替わったら、以下の内容を入力します。

  1. Location:「trial」を選択
  2. Account ID:2-1-2.で確認したAccount IDをコピー&ペースト
  3. Video ID:「動的なコンテンツ」から「HTTP 要求の受信時」の「id」を選択
  4. Access Token:「動的なコンテンツ」から「Get Account Access Token」の「Access Token」を選択
  5. Captions Language:「Japanese」を選択

3-3-4. Get Video Captions(プレビュー)コネクタの設定

Get Video Caption(プレビュー)コネクタの設定

 「+新しいステップ」をクリックして、次のアクション(取得したインデックスからのキャプション抽出)を追加します。

 「Video Indexer」コネクタを検索して、「Get Video Captions(プレビュー)」アクションを選択します。上の画面表示に切り替わったら、以下の内容を入力します。

  1. Location:「trial」を選択
  2. Account ID:2-1-2.で確認したAccount IDをコピー&ペースト
  3. Video ID:「動的なコンテンツ」から「HTTP 要求の受信時」の「id」を選択
  4. Access Token:「動的なコンテンツ」から「Get Account Access Token」の「Access Token」を選択
  5. Format:「vtt」(WebVTT形式)を選択
  6. Captions Language:「Japanese」を選択

3-3-5. ファイル作成コネクタの設定

 「+新しいステップ」をクリックして、次のアクション(OneDriveへのキャプションファイル保存)を追加します。

 「OneDrive」コネクタを検索し、「ファイル作成」アクションを選択します。

ファイル作成コネクタの設定

 上の画面表示に切り替わったら、以下の内容を入力します。

  1. フォルダーのパス:自動生成した「.vtt」形式のテキストファイルを保存するフォルダ(movie-caption)を選択
  2. ファイル名:「動的なコンテンツ」から「Get Video Index」の「Name」を選択。後ろに続けて拡張子「.vtt」を入力
  3. ファイルコンテンツ:「動的なコンテンツ」から「Get Video Captions」の「本文」を選択

 以上で2つめのワークフローも完成しました。最後に「保存」をクリックします。

トリガーのHTTP POST URLが生成されるのでコピー

 video-captionフローを保存すると、トリガーの「HTTP 要求の受信時」にHTTP POSTのURLが表示されるので、このURLをコピーした状態で、1つめに作成したvideo-indexerフローをふたたび開きます。

3-4. video-indexerフローのCallback URL設定

Upload video and index(プレビュー)コネクタのCallback URL設定

 ここでは、video-indexerフローの最後のアクションである「Upload video and index(プレビュー)」に設定を追加し、このアクションが実行されたら(つまりVideo Indexerサービスにビデオファイルがアップロードされたら)、2つめのvideo-captionフローのトリガーが起動するようにします。

 まず「Upload video and index(プレビュー)」アクションを開き、「Add new parameter」をクリックして「Callback URL」にチェックを入れます。そのうえで、先ほど3-3-5.で取得したHTTP POST URLをペーストします。設定追加はこれだけです。

 最後に「保存」をクリックして、修正したvideo-indexerフローを保存します。

実行結果

 以上で、OneDriveに動画をアップロードすると、動画に字幕を付けるための.vttファイルを自動で書き出す仕組みが出来上がりました。

OneDriveにアップロードしたビデオファイルと、生成された.vttファイル(字幕ファイル)/p>

 まず、OneDriveの指定フォルダ「movie-original」に動画ファイルを入れてみます(今回は自分のプレゼン動画を使いました)。しばらくすると、OneDriveの「movie-caption」に.vtt形式のファイルが出力されます。これを手元のPCにダウンロードします。

 なお、動画ファイルのサイズによって、アップロードや処理に時間がかかることがあります。アップロードや処理の進捗状況はVideo Indexerポータルで確認できます。

動画再生ツールで.vttファイルを設定

 WebVTTはクローズドキャプションデータの標準形式であり、さまざまな再生ツールが対応しています。たとえばWindows 10標準の動画再生アプリの場合、まず動画ファイルを開き、①をクリックすると「字幕ファイルを選択」というメニューが表示されます。ここで、先ほどダウンロードした.vttファイルを指定し②のように選択します。

動画に字幕(クローズドキャプション)が表示された

 キャプションのファイルを指定すると、このような形で、しゃべった内容に合わせて字幕が表示されるようになります。そのほかにも、たとえばYouTubeにこの.vttファイルをアップロードすることで、字幕を追加することができます。

 なお、Video Indexerが書き起こした内容に間違いがあることもあります。この場合、.vttファイルをテキストエディタや「Visual Studio Code」などのツールで開けば、キャプションのテキストは簡単に修正できます。

 このような形で、動画のテキストを自動で書き起こし、字幕用のファイルを自動作成することができます。動画に字幕をつけたい場面では、ぜひ活用してみてください。

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事