3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Video Indexer で処理した Azure Media Services 部分を独自アプリケーションに流用する

Last updated at Posted at 2020-02-03

背景

動画を使った処理では、結局映像を見る行為をしないと、映っているものの確認ができません。そのため、よく行われている Video Indexer を使った動画解析では、以下の2つのパイプライン処理を行う事が多いです。

  • 動画を Blob Storage にUpload
    • Video Indexer で解析処理
    • Azure Media Services でトランスコード・配信URL作成

ただ、これですと Azure Media Services の処理が冗長です。しかも、Azure Media Services はデフォルトで Azure CDN もついているため、殆どの動画配信のシナリオにはキャパシティとしても十二分です。

Video Indexer は内部で Azure Media Services の各種エンジンを使って、Video Indexer の ポータルでのストリーミング表示を実現させています。

image.png

実際に、Video Indexer を有料モードにする際には、Azure Media Services の作成あるいはアタッチを行います。

vi.jpg

ここでは、Video Indexer の処理 1つである程度終わらせる事を目指します。

制約

作戦

  • Video Indexer が内部で使用している Azure Media Services に Locator を設定する

用意するもの

手順

いきなりAPIコールするコードを書く前に、Azure Media Services Explorer Tools で挙動を確認しましょう😊

1. Video Indexer に動画 をアップロード

以下の項目を変更します。

項目 メモ
ストリーミングの品質 アダブティブ ビットレート 無線など不安定な回線での快適なストリーミングをやりやすくなります

image.png

2. Azure Media Services Explorer Tools で Locator を追加

  • Video Indexer で使っている Azure Media Services アカウントと同じものであることを確認します

    image.png

  • 3つのアセットが出来ています

image.png

  • 一番上: VideoAnalyzer の出力結果
    image.png

  • 真ん中: Encoding ジョブの出力

    • Locator が設定されている
    • Dynamic Encryption が設定されている - 認証・暗号化
      image.png
  • 一番下: オリジナル動画

3. Encoding ジョブの出力アセットから Locator 作成

Locator は 1つのアセットに、100 個まで設定できます。これは、ユーザー毎に設定するのではなく、コンテンツホルダーとの契約での公開期間や、サービスメニューとしてのセキュリティ設定の違い (無料 / 有償ユーザーの違い) などをカバーするためのものです。

Azure Media Services v3 のクォータと制限
https://docs.microsoft.com/ja-jp/azure/media-services/latest/limits-quotas-constraints

ここでは、2つ目の Locator を追加します

  • Locator の作成を選択
    vi2.jpg

....画面のレンダリングが乱れておりますが(涙)...
そのまま[ロケーターを作成]を選択します
  image.png

Locator が作成されます
image.png

作成後、Azure Media Services Explorer Tools 上では、Publication 列に 2つのアイコンが確認できます
image.png

4. 再生してみましょう

[Azure Media Player での再生] を選択します
image.png

Locator が2つありますので、どちらを使うのか、というダイアログボックスが表示されます。

  • 末尾がmanifestで終わっているものを選択します。

    • こちら
      vi4.jpg

    • こちらは認証+暗号化設定 されているオリジナル。今回は使いません。Video Indexer の Portal 用
      vi5.jpg
      - ここ超大事です。実際には、コンテンツに必要な保護設定をしてください
      - ここでは動作確認のため、保護設定なし、にしています。データの暗号化も、認証も設定してませんので、ご注意ください **

!!! ばっちり再生 !!!
image.png

5. 後始末

Video Indexer でジョブ実行後、必要に応じて Azure Portal から Azure Media Services のリソースの停止を行ってください。

  • Azure Media Servicesの [メディア占有ユニット] の S3 が1つ残っています

    • S1 に変更
    • 数を0に
      image.png
  • [ストリーミング エンドポイント] を 停止

自動化のために

Azure Media Services は、APIベースのサービスであるため、自動化が可能です。
サンプルが幾つかありますので、適時ご参照ください。

ストリーミング ロケーター:
https://docs.microsoft.com/ja-jp/azure/media-services/latest/streaming-locators-concept

.NET / Java などのサンプル:
https://docs.microsoft.com/ja-jp/samples/browse/?products=azure-media-services

REST のサンプル:
https://github.com/Azure-Samples/media-services-v3-rest-postman

まとめ

有料版ならではの選択肢を Video Indexer は提供しています。内部機能が、ご自身のアカウントで使えている事実を確認しながら、うまく作業フローの中で、自動化して使ってください。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?