独自のビデオ オンデマンド(VOD)アセットがない場合は、Transcoder API を使用して、Video Stitcher API で使用できる VOD マニフェストとセグメント ファイルを作成できます。これは必須ではありません。
VOD マニフェストは、VOD の構成で、ソース URI として使用されます。DASH 形式と HLS 形式の両方がサポートされています。
以下は、Transcoder API で VOD ファイルを作成するために使用できるジョブ構成の例です。詳細については、アドホック構成でのジョブの作成をご覧ください。Google Cloud プロジェクトで Transcoder API を有効にする必要があります。詳しくは、始める前にをご覧ください。
{
"config":{
"inputs":[
{
"key":"input0",
"uri":"gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
}
],
"output":{
"uri":"gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
},
"editList":[
{
"key":"atom0",
"inputs":[
"input0"
]
}
],
"elementaryStreams":[
{
"key":"video_hd",
"videoStream":{
"h264":{
"heightPixels":720,
"widthPixels":1280,
"pixelFormat":"yuv420p",
"bitrateBps":5000000,
"frameRate":25
}
}
},
{
"key":"video_sd",
"videoStream":{
"h264":{
"heightPixels":432,
"widthPixels":768,
"pixelFormat":"yuv420p",
"bitrateBps":1100000,
"frameRate":25
}
}
},
{
"key":"video_sd_low",
"videoStream":{
"h264":{
"heightPixels":360,
"widthPixels":640,
"pixelFormat":"yuv420p",
"bitrateBps":365000,
"frameRate":25
}
}
},
{
"key":"audio_stereo",
"audioStream":{
"codec":"aac",
"bitrateBps":64000,
"channelCount":2,
"channelLayout":[
"fl",
"fr"
],
"sampleRateHertz":48000
}
}
],
"muxStreams":[
{
"key":"hd",
"container":"mp4",
"elementaryStreams":[
"video_hd",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"sd",
"container":"mp4",
"elementaryStreams":[
"video_sd",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"sd_low",
"container":"mp4",
"elementaryStreams":[
"video_sd_low",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"media_hd",
"container":"ts",
"elementaryStreams":[
"video_hd",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"media_sd",
"container":"ts",
"elementaryStreams":[
"video_sd",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"media_sd_low",
"container":"ts",
"elementaryStreams":[
"video_sd_low",
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"video_only_hd",
"container":"fmp4",
"elementaryStreams":[
"video_hd"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"video_only_sd",
"container":"fmp4",
"elementaryStreams":[
"video_sd"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"video_only_sd_low",
"container":"fmp4",
"elementaryStreams":[
"video_sd_low"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
},
{
"key":"audio_only",
"container":"fmp4",
"elementaryStreams":[
"audio_stereo"
],
"segmentSettings":{
"segmentDuration":"6s",
"individualSegments":true
}
}
],
"manifests":[
{
"type":"HLS",
"fileName":"manifest.m3u8",
"muxStreams":[
"media_hd",
"media_sd",
"media_sd_low"
]
},
{
"type":"DASH",
"fileName":"manifest.mpd",
"muxStreams":[
"video_only_hd",
"video_only_sd",
"video_only_sd_low",
"audio_only"
]
}
]
}
}