Si aún no tienes tu propio recurso de video on demand (VOD), puedes usar la API de Transcoder para crear un manifiesto de VOD y segmentar archivos que se puedan usar con la API de Video Stitcher. Esto es completamente opcional.
El manifiesto de VOD se usa como el URI de origen en una configuración de VOD. Se admiten los formatos DASH y HLS.
El siguiente es un ejemplo de configuración de trabajo que puedes usar con la La API de Transcoder para crear los archivos VOD Para obtener más información, consulta Crea trabajos con configuraciones ad hoc. Deberás habilitar la API de Transcoder en tu cuenta de Google Cloud proyecto; consulta Antes de comenzar para más información.
{
"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"
]
}
]
}
}