次の方法で共有


出力メタデータ

Media Services ロゴ v3


警告

Azure Media Services は、2024 年 6 月 30 日に廃止されます。 詳細については、 AMS 廃止ガイドを参照してください。

エンコード ジョブは、エンコーディング タスクを実行する入力資産に関連付けられています。 たとえば、MP4 ファイルを H.264 MP4 アダプティブ ビットレート セットにエンコードし、サムネイルを作成し、オーバーレイを作成します。 タスクが完了すると、出力資産が生成されます。 出力資産には、ビデオ、オーディオ、サムネイル、およびその他のファイルが含まれます。 出力資産には、出力資産に関するメタデータが格納されたファイルも含まれます。 メタデータ JSON ファイルの名前は、<source_file_name>_manifest.json (BigBuckBunny_manifest.json など) になります。 ソース ファイル名 (切り詰めなし) を見つけるには、すべての *_metadata.json をスキャンして、その中のファイルパス文字列のクエリを実行する必要があります。

Media Services では、メタデータを生成するために入力資産は事前にスキャンされません。 入力メタデータは、入力資産がジョブで処理されるときに、成果物としてのみ生成されます。 そのため、この成果物は、出力資産に書き込まれます。 入力資産と出力資産のメタデータの生成には、異なるツールが使用されます。 したがって、入力メタデータには、出力メタデータとは若干異なるスキーマがあります。

この記事では、出力メタデータ (<source_file_name>_manifest.json) が基づく JSON スキーマの要素と種類について説明します。

CopyVideo または CopyAudio プリセットを使用する場合の BaseName 文字の長さ

出力メタデータ ファイルの名前付けに使用される {baseName} ファイルの名前付けマクロは、標準エンコード プリセットまたはカスタム プリセットに使用する場合、32 文字に短縮されます。 ただし、カスタム プリセットで CopyCodec 操作 (CopyAudio または CopyVideo) のいずれかを使用する場合、名前付けの競合を回避するために、{Basename} は 64 文字に制限されます。 これは、アセット内のすべての出力ファイルをアーカイブするシナリオをサポートするためです。 ファイル名が非常に長い場合、最初の 32 文字は複数の出力ファイルで同じである可能性があります。 この場合、CopyVideo または CopyAudio を使用すると、最初の 32 文字で重複した出力ファイルが生成されます。 その結果、プリセットで CopyCodec が使用されている場合、{Basename} の動作は 64 文字を保持します。

完全なスキーマ コードと JSON の例は、この記事の最後で紹介します。

AssetFile

エンコード ジョブの AssetFile エントリのコレクション。

名前 説明
Sources この AssetFile を生成するために処理された入力/ソース メディア ファイルのコレクション。
例: "Sources": [{"Name": "Ignite-short_1280x720_AACAudio_3551.mp4"}]
VideoTracks 各物理 AssetFile には、適切なコンテナー形式にインターリーブされる 0 個以上のビデオ トラックを含めることができます。
VideoTracks」を参照してください。
AudioTracks 各物理 AssetFile には、適切なコンテナー形式にインターリーブされる 0 個以上のオーディオ トラックを含めることができます。 これは、そのオーディオ トラックすべてのコレクションです。
詳細については、「AudioTracks」を参照してください。
名前
必須
メディア資産ファイルの名前。

例: "Name": "Ignite-short_1280x720_AACAudio_3551.mp4"
[サイズ]
必須
資産ファイルのサイズ (バイト単位)。

例: "Size": 32414631
Duration
必須
コンテンツの再生時間。 詳細については、ISO8601 形式を参照してください。

例: "Duration": "PT1M10.315S"

VideoTracks

各物理 AssetFile には、適切なコンテナー形式にインターリーブされる 0 個以上のビデオ トラックを含めることができます。 VideoTracks 要素は、すべてのビデオ トラックのコレクションを表します。

名前 説明
Id
必須
このビデオ トラックの 0 から始まるインデックス。注: この Id は、必ずしも MP4 ファイルで使用されている TrackID であるとは限りません。

例: "Id": 1
FourCC
必須
ffmpeg によって報告されるビデオ コーデックの FourCC コード。

例: "FourCC": "avc1" | "hev1" | "hvc1"
プロファイル H264 プロファイル (H264 コーデックのみに適用されます)

例: "Profile": "High"
Level H264 レベル (H264 コーデックのみに適用されます)。

例: "Level": "3.2"
Width
必須
エンコードされたビデオの幅 (ピクセル単位)。

例: "Width": "1280"
Height
必須
エンコードされたビデオの高さ (ピクセル単位)。

例: "Height": "720"
DisplayAspectRatioNumerator
必須
ビデオ ディスプレイの縦横比の分子。

例: "DisplayAspectRatioNumerator": 16.0
DisplayAspectRatioDenominator
必須
ビデオ ディスプレイの縦横比の分母。

例: "DisplayAspectRatioDenominator": 9.0
FrameRate
必須
.3f 形式の測定されたビデオ フレーム レート。

例: "Framerate": 29.970
Bitrate
必須
AssetFile から計算された平均ビデオ ビット レート (ビット/秒)。 基本ストリーム ペイロードのみがカウントされます。パッケージのオーバーヘッドは含まれません。

例: "Bitrate": 3551567
TargetBitrate
必須
エンコード プリセットを使用して要求された、このビデオ トラックのターゲット平均ビットレート (ビット/秒)。

例: "TargetBitrate": 3520000

AudioTracks

各物理 AssetFile には、適切なコンテナー形式にインターリーブされる 0 個以上のオーディオ トラックを含めることができます。 AudioTracks 要素は、すべてのオーディオ トラックのコレクションを表します。

名前 説明
Id
必須
このオーディオ トラックの 0 から始まるインデックス。注: これは、必ずしも MP4 ファイルで使用されている TrackID であるとは限りません。

例: "Id": 2
Codec オーディオ トラック コーデック文字列。

例: "Codec": "aac"
Language 例: "Language": "eng"
Channels
必須
オーディオ チャネルの数。

例: "Channels": 2
SamplingRate
必須
オーディオ サンプリング レート (サンプル数/秒または Hz)。

例: "SamplingRate": 48000
Bitrate
必須
AssetFile から計算された、平均オーディオ ビット レート (ビット/秒)。 基本ストリーム ペイロードのみがカウントされます。パッケージのオーバーヘッドは含まれません。

例: "Bitrate": 128041

JSON スキーマの例

{
  "AssetFile": [
    {
      "Sources": [
        {
          "Name": "Ignite-short_1280x720_AACAudio_3551.mp4"
        }
      ],
      "VideoTracks": [
        {
          "Id": 1,
          "FourCC": "avc1",
          "Profile": "High",
          "Level": "3.2",
          "Width": "1280",
          "Height": "720",
          "DisplayAspectRatioNumerator": 16.0,
          "DisplayAspectRatioDenominator": 9.0,
          "Framerate": 29.970,
          "Bitrate": 3551567,
          "TargetBitrate": 3520000
        }
      ],
      "AudioTracks": [
        {
          "Id": 2,
          "Codec": "aac",
          "Language": "eng",
          "Channels": 2,
          "SamplingRate": 48000,
          "Bitrate": 128041
        }
      ],
      "Name": "Ignite-short_1280x720_AACAudio_3551.mp4",
      "Size": 32414631,
      "Duration": "PT1M10.315S"
    },
    {
      "Sources": [
        {
          "Name": "Ignite-short_960x540_AACAudio_2216.mp4"
        }
      ],
      "VideoTracks": [
        {
          "Id": 1,
          "FourCC": "avc1",
          "Profile": "High",
          "Level": "3.1",
          "Width": "960",
          "Height": "540",
          "DisplayAspectRatioNumerator": 16.0,
          "DisplayAspectRatioDenominator": 9.0,
          "Framerate": 29.970,
          "Bitrate": 2216326,
          "TargetBitrate": 2210000
        }
      ],
      "AudioTracks": [
        {
          "Id": 2,
          "Codec": "aac",
          "Language": "eng",
          "Channels": 2,
          "SamplingRate": 48000,
          "Bitrate": 128041
        }
      ],
      "Name": "Ignite-short_960x540_AACAudio_2216.mp4",
      "Size": 20680897,
      "Duration": "PT1M10.315S"
    },
    {
      "Sources": [
        {
          "Name": "Ignite-short_640x360_AACAudio_1150.mp4"
        }
      ],
      "VideoTracks": [
        {
          "Id": 1,
          "FourCC": "avc1",
          "Profile": "High",
          "Level": "3.0",
          "Width": "640",
          "Height": "360",
          "DisplayAspectRatioNumerator": 16.0,
          "DisplayAspectRatioDenominator": 9.0,
          "Framerate": 29.970,
          "Bitrate": 1150440,
          "TargetBitrate": 1150000
        }
      ],
      "AudioTracks": [
        {
          "Id": 2,
          "Codec": "aac",
          "Language": "eng",
          "Channels": 2,
          "SamplingRate": 48000,
          "Bitrate": 128041
        }
      ],
      "Name": "Ignite-short_640x360_AACAudio_1150.mp4",
      "Size": 11313920,
      "Duration": "PT1M10.315S"
    },
    {
      "Sources": [
        {
          "Name": "Ignite-short_480x270_AACAudio_722.mp4"
        }
      ],
      "VideoTracks": [
        {
          "Id": 1,
          "FourCC": "avc1",
          "Profile": "High",
          "Level": "2.1",
          "Width": "480",
          "Height": "270",
          "DisplayAspectRatioNumerator": 16.0,
          "DisplayAspectRatioDenominator": 9.0,
          "Framerate": 29.970,
          "Bitrate": 722682,
          "TargetBitrate": 720000
        }
      ],
      "AudioTracks": [
        {
          "Id": 2,
          "Codec": "aac",
          "Language": "eng",
          "Channels": 2,
          "SamplingRate": 48000,
          "Bitrate": 128041
        }
      ],
      "Name": "Ignite-short_480x270_AACAudio_722.mp4",
      "Size": 7554708,
      "Duration": "PT1M10.315S"
    },
    {
      "Sources": [
        {
          "Name": "Ignite-short_320x180_AACAudio_380.mp4"
        }
      ],
      "VideoTracks": [
        {
          "Id": 1,
          "FourCC": "avc1",
          "Profile": "High",
          "Level": "1.3",
          "Width": "320",
          "Height": "180",
          "DisplayAspectRatioNumerator": 16.0,
          "DisplayAspectRatioDenominator": 9.0,
          "Framerate": 29.970,
          "Bitrate": 380655,
          "TargetBitrate": 380000
        }
      ],
      "AudioTracks": [
        {
          "Id": 2,
          "Codec": "aac",
          "Language": "eng",
          "Channels": 2,
          "SamplingRate": 48000,
          "Bitrate": 128041
        }`
      ],
      "Name": "Ignite-short_320x180_AACAudio_380.mp4",
      "Size": 4548932,
      "Duration": "PT1M10.315S"
    }
  ]
}

ヘルプとサポート

質問がある場合は Media Services に問い合わせるか、次のいずれかの方法で更新内容に従ってください。