出力メタデータ
警告
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 に問い合わせるか、次のいずれかの方法で更新内容に従ってください。
- Q & A
-
Stack Overflow。 質問に タグを付けます
azure-media-services
。 - @MSFTAzureMedia するか 、@AzureSupport を使用してサポートを要求します。
- Azure portalからサポート チケットを開きます。