本頁面會顯示輸入媒體檔案 (即 ElementaryStream
) 編碼的設定範例。
影片串流
VideoStream
屬性彼此之間沒有相依關係。您可以獨立設定解析度 (高度和寬度)、位元率和影格速率等屬性。
{
"videoStream": {
"h264": {
"profile": "high",
"preset": "veryfast",
"heightPixels": 360,
"widthPixels": 640,
"pixelFormat": "yuv420p",
"bitrateBps": 550000,
"rateControlMode": "vbr",
"crfLevel": 21,
"vbvSizeBits": 550000,
"vbvFullnessBits": 495000,
"gopDuration": "3s",
"entropyCoder": "cabac",
"bFrameCount": 3,
"frameRate": 30,
"aqStrength": 1
}
},
"key": "video-stream0"
}
音訊串流
某些 AudioStream
屬性彼此互相依賴。channelCount
屬性值必須等於 channelLayout
陣列中的版面配置數量。這個值也必須與對應輸入串流中的聲道數量相同。
基本音訊串流
以下是未對應、未混合的音訊串流範例。
{
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"sampleRateHertz": 48000,
"languageCode": "en-US",
"displayName": "English"
},
"key": "audio-stream0"
}
含對應項目的音訊串流
以下是輸入對應音訊串流的範例。輸出立體聲 AudioStream
由下列輸入內容組成:
- 曲目 1
- 管道 0
- 曲目 1
- 管道 1
請注意,channelCount
屬性值必須等於 mapping
下定義的物件數量,每個物件都有自己的 outputChannel
。
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"sampleRateHertz": 48000,
"languageCode": "en-US",
"displayName": "English",
"mapping": [
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 1,
"inputChannel": 0,
"outputChannel": 0,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 1,
"inputChannel": 1,
"outputChannel": 1,
"gainDb": 0
}
]
}
}
含混音的音訊串流
以下是混合音訊串流的範例。輸出立體聲 AudioStream
由下列輸入內容組成:
- 曲目 2
- 管道 0
- 管道 2
- Channel 4
- 曲目 2
- 管道 1
- 管道 3
- 5 頻道
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 128000,
"channelCount": 2,
"mapping": [
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 0,
"outputChannel": 0,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 2,
"outputChannel": 0,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 4,
"outputChannel": 0,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 1,
"outputChannel": 1,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 3,
"outputChannel": 1,
"gainDb": 0
},
{
"atomKey": "atom0",
"inputKey": "video_and_stereo_audio",
"inputTrack": 2,
"inputChannel": 5,
"outputChannel": 1,
"gainDb": 0
}
],
"sampleRateHertz": 44100
}
}
單一檔案中的多語音訊串流
以下是單一輸入影片檔案的設定範例,其中包含影片和多個不同語言的音軌。mapping[]
物件用於建立多個輸出音訊串流,每個語言一個。影片和每個音訊串流都包含在 HLS 和 DASH 資訊清單中。
{
"outputUri": "gs://STORAGE_BUCKET_NAME/",
"config": {
"inputs": [
{
"key": "input0",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
}
],
"editList": [
{
"key": "atom0",
"inputs": [
"input0"
],
"startTimeOffset": "0s"
}
],
"elementaryStreams": [
{
"key": "video-stream0",
"videoStream": {
"h264": {
"widthPixels": 640,
"heightPixels": 360,
"frameRate": 30,
"bitrateBps": 500000
}
}
},
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 1,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 1,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "en-US",
"displayName": "English"
}
},
{
"key": "audio-stream1",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 2,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 2,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "es-ES",
"displayName": "Spanish"
}
},
{
"key": "audio-stream2",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 3,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 3,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "fr-Fr",
"displayName": "French"
}
}
],
"muxStreams": [
{
"key": "sd",
"container": "fmp4",
"elementaryStreams": [
"video-stream0"
]
},
{
"key": "audio-0",
"container": "fmp4",
"elementaryStreams": [
"audio-stream0"
]
},
{
"key": "audio-1",
"container": "fmp4",
"elementaryStreams": [
"audio-stream1"
]
},
{
"key": "audio-2",
"container": "fmp4",
"elementaryStreams": [
"audio-stream2"
]
}
],
"manifests": [
{
"fileName": "manifest.m3u8",
"type": "HLS",
"muxStreams": [
"sd",
"audio-0",
"audio-1",
"audio-2"
]
},
{
"fileName": "manifest.mpd",
"type": "DASH",
"muxStreams": [
"sd",
"audio-0",
"audio-1",
"audio-2"
]
}
]
}
}
多種語言的音訊串流,來自多個音訊檔案
以下是輸入影片檔案的設定範例,其中包含影片和只有一個預設語言音軌。系統也會使用兩個獨立的輸入音訊檔案,每種語言一個。mapping[]
物件用於建立多個輸出音訊串流,每個語言一個。影片和每個音訊串流都包含在 HLS 和 DASH 資訊清單中。
{
"outputUri": "gs://STORAGE_BUCKET_NAME/",
"config": {
"inputs": [
{
"key": "input0",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
},
{
"key": "input1",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_AUDIO1"
},
{
"key": "input2",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_AUDIO2"
}
],
"editList": [
{
"key": "atom0",
"inputs": [
"input0",
"input1",
"input2"
],
"startTimeOffset": "0s"
}
],
"elementaryStreams": [
{
"key": "video-stream0",
"videoStream": {
"h264": {
"widthPixels": 640,
"heightPixels": 360,
"frameRate": 30,
"bitrateBps": 500000
}
}
},
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 1,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input0",
"inputTrack": 1,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "en-US",
"displayName": "English"
}
},
{
"key": "audio-stream1",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input1",
"inputTrack": 0,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input1",
"inputTrack": 0,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "es-ES",
"displayName": "Spanish"
}
},
{
"key": "audio-stream2",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"channelCount": 2,
"channelLayout": [
"fl",
"fr"
],
"mapping": [
{
"atomKey": "atom0",
"inputKey": "input2",
"inputTrack": 0,
"inputChannel": 0,
"outputChannel": 0
},
{
"atomKey": "atom0",
"inputKey": "input2",
"inputTrack": 0,
"inputChannel": 1,
"outputChannel": 1
}
],
"sampleRateHertz": 48000,
"languageCode": "fr-Fr",
"displayName": "French"
}
}
],
"muxStreams": [
{
"key": "sd",
"container": "fmp4",
"elementaryStreams": [
"video-stream0"
]
},
{
"key": "audio-0",
"container": "fmp4",
"elementaryStreams": [
"audio-stream0"
]
},
{
"key": "audio-1",
"container": "fmp4",
"elementaryStreams": [
"audio-stream1"
]
},
{
"key": "audio-2",
"container": "fmp4",
"elementaryStreams": [
"audio-stream2"
]
}
],
"manifests": [
{
"fileName": "manifest.m3u8",
"type": "HLS",
"muxStreams": [
"sd",
"audio-0",
"audio-1",
"audio-2"
]
},
{
"fileName": "manifest.mpd",
"type": "DASH",
"muxStreams": [
"sd",
"audio-0",
"audio-1",
"audio-2"
]
}
]
}
}
文字串流
TextStream
屬性彼此之間沒有相依關係。您可以獨立設定屬性。
文字串流可能會使用編輯清單來修改輸出檔案。以下各節將說明如何使用編輯清單提供字幕。
以下範例顯示編輯清單中含有一個原子的文字串流。
{
"editList":[
{
"key":"atom0",
"inputs":[
"video_input0",
"caption_input0"
],
"startTimeOffset":"0s",
"endTimeOffset":"300s"
}
],
"elementaryStreams":[
{
"key": "cea-stream0",
"textStream": {
"codec": "cea708",
"languageCode": "en-US",
"displayName": "English",
"mapping": [
{
"atomKey": "atom0",
"inputKey": "caption_input0",
"inputTrack": 0
}
]
}
}
]
}
以下範例顯示編輯清單中含有兩個原子的文字串流。
{
"editList":[
{
"key":"atom0",
"inputs":[
"video_input0",
"caption_input0"
],
"startTimeOffset":"0s",
"endTimeOffset":"300s"
},
{
"key":"atom1",
"inputs":[
"video_input1",
"caption_input1"
],
"startTimeOffset":"0s",
"endTimeOffset":"300s"
}
],
"elementaryStreams":[
{
"key": "cea-stream0",
"textStream": {
"codec": "cea708",
"languageCode": "en-US",
"displayName": "English",
"mapping": [
{
"atomKey": "atom0",
"inputKey": "caption_input0",
"inputTrack": 0
},
{
"atomKey": "atom1",
"inputKey": "caption_input1",
"inputTrack": 0
}
]
}
}
]
}
進階
以下各節會概述各種進階設定。
僅音訊輸出
以下設定會輸出純音訊 MP4 和 TS 檔案。
{
"config": {
"inputs": [
{
"key": "input0",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
}
],
"elementaryStreams": [
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"languageCode": "en-US",
"displayName": "English"
}
}
],
"muxStreams": [
{
"key": "audio-only-ts",
"fileName": "audio-only.ts",
"container": "ts",
"elementaryStreams": [
"audio-stream0"
]
},
{
"key": "audio-only-mp4",
"fileName": "audio-only.mp4",
"container": "mp4",
"elementaryStreams": [
"audio-stream0"
]
}
],
"manifests": [
{
"fileName": "manifest.m3u8",
"type": "HLS",
"muxStreams": [
"audio-only-ts"
]
}
],
"output": {
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
}
}
}
MuxStream 和 fmp4
使用 fmp4 容器的 MuxStream
只能包含單一 ElementaryStream
。針對這個容器,請使用兩個 MuxStreams
:一個用於音訊,另一個用於影片:
"muxStreams":[
{
"key": "hd3-video",
"container": "fmp4",
"elementaryStreams":["video-stream1"]
},
{
"key": "hd3-audio",
"container": "fmp4",
"elementaryStreams":["audio-stream1"]
}
],
在多個資訊清單中重複使用串流
以下示例設定顯示在 HLS 和 DASH 資訊清單中同時使用兩個影片和一個音訊編碼:
{
"config": {
"inputs": [
{
"key": "input0",
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_INPUT_VIDEO"
}
],
"elementaryStreams": [
{
"videoStream": {
"h264": {
"heightPixels": 360,
"widthPixels": 640,
"bitrateBps": 500000,
"frameRate": 30
}
},
"key": "video-stream0"
},
{
"videoStream": {
"h264": {
"heightPixels": 720,
"widthPixels": 1280,
"bitrateBps": 3200000,
"frameRate": 30
}
},
"key": "video-stream1"
},
{
"audioStream": {
"codec": "aac",
"bitrateBps": 64000,
"sampleRateHertz": 48000
},
"key": "audio-stream0"
}
],
"muxStreams": [
{
"key": "video-only-sd",
"container": "fmp4",
"elementaryStreams": [
"video-stream0"
]
},
{
"key": "video-only-hd",
"container": "fmp4",
"elementaryStreams": [
"video-stream1"
]
},
{
"key": "audio-only",
"container": "fmp4",
"elementaryStreams": [
"audio-stream0"
]
}
],
"manifests": [
{
"fileName": "manifest.m3u8",
"type": "HLS",
"muxStreams": [
"video-only-sd",
"video-only-hd",
"audio-only"
]
},
{
"fileName": "manifest.mpd",
"type": "DASH",
"muxStreams": [
"video-only-sd",
"video-only-hd",
"audio-only"
]
}
],
"output": {
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
}
}
}
轉碼多個設定檔的建議設定
針對輸出解析度和位元率,視輸入解析度/影格速率 (50/60 FPS) 而定,如果適用,請為 50/60 FPS 新增較高的影格速率步驟。請注意,新增額外步驟需要更多運算能力。建議的階梯如下:
解析度 (ScanMode)/影格速率 | H.264 High Profile 位元率 (Kbps) |
---|---|
170x96 p12/15 | 130 |
256x144 p25/30 | 240 |
416x234 p25/30 | 300 |
640x360 p25/30 | 400 |
768x432 p25/30 | 750 |
768x432 p25/30 | 1100 |
960x540 p25/30 | 2200 |
1280x720 p25/30 | 3300 |
1280x720 p50/60 | 5500 |
1920x1080 p25/30 | 6000 |
1920x1080 p50/60 | 9000 |
針對音訊,系統會根據聲道數量提供最佳化建議:
管道 | AAC 位元率 (Kbps) |
---|---|
2.0 | 64 |
2.0 | 160 |
5.1 | 384 |
使用這個輸出階層來建立設定,以便以不同組合輸出 HLS 和 MPEG-DASH 資訊清單:
{
"config": {
"inputs": [
{
"key": "input0",
"uri": "gs://my-bucket/input0.mp4"
}
],
"elementaryStreams": [
{
"key": "video-stream0",
"videoStream": {
"h264": {
"heightPixels": 96,
"widthPixels": 170,
"bitrateBps": 130000,
"frameRate": 15,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream1",
"videoStream": {
"h264": {
"heightPixels": 144,
"widthPixels": 256,
"bitrateBps": 240000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream2",
"videoStream": {
"h264": {
"heightPixels": 234,
"widthPixels": 416,
"bitrateBps": 300000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream3",
"videoStream": {
"h264": {
"heightPixels": 360,
"widthPixels": 640,
"bitrateBps": 400000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream4",
"videoStream": {
"h264": {
"heightPixels": 432,
"widthPixels": 768,
"bitrateBps": 1100000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream5",
"videoStream": {
"h264": {
"heightPixels": 540,
"widthPixels": 960,
"bitrateBps": 2200000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream6",
"videoStream": {
"h264": {
"heightPixels": 720,
"widthPixels": 1280,
"bitrateBps": 3300000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream7",
"videoStream": {
"h264": {
"heightPixels": 720,
"widthPixels": 1280,
"bitrateBps": 5500000,
"frameRate": 60,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 6,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream8",
"videoStream": {
"h264": {
"heightPixels": 1080,
"widthPixels": 1920,
"bitrateBps": 6000000,
"frameRate": 30,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 3,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "video-stream9",
"videoStream": {
"h264": {
"heightPixels": 1080,
"widthPixels": 1920,
"bitrateBps": 9000000,
"frameRate": 60,
"gopDuration": "4.0s",
"pixelFormat": "yuv420p",
"rateControlMode": "crf",
"crfLevel": 10,
"bFrameCount": 6,
"profile": "high",
"enableTwoPass": true,
"preset": "medium"
}
}
},
{
"key": "audio-stream0",
"audioStream": {
"codec": "aac",
"bitrateBps": 32000
}
},
{
"key": "audio-stream1",
"audioStream": {
"codec": "aac",
"bitrateBps": 64000
}
},
{
"key": "audio-stream2",
"audioStream": {
"codec": "aac",
"bitrateBps": 96000
}
},
{
"key": "audio-stream3",
"audioStream": {
"codec": "aac",
"bitrateBps": 128000
}
},
{
"key": "audio-stream4",
"audioStream": {
"codec": "aac-he",
"bitrateBps": 160000
}
},
{
"key": "audio-stream5",
"audioStream": {
"codec": "aac-he-v2",
"bitrateBps": 384000
}
}
],
"muxStreams": [
{
"key": "1",
"container": "ts",
"elementaryStreams": [
"video-stream0",
"audio-stream0"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "2",
"container": "ts",
"elementaryStreams": [
"video-stream1",
"audio-stream0"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "3",
"container": "ts",
"elementaryStreams": [
"video-stream2",
"audio-stream1"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "4",
"container": "ts",
"elementaryStreams": [
"video-stream3",
"audio-stream1"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "5",
"container": "ts",
"elementaryStreams": [
"video-stream4",
"audio-stream2"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "6",
"container": "ts",
"elementaryStreams": [
"video-stream5",
"audio-stream3"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "7",
"container": "ts",
"elementaryStreams": [
"video-stream6",
"audio-stream3"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "8",
"container": "ts",
"elementaryStreams": [
"video-stream7",
"audio-stream4"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "9",
"container": "ts",
"elementaryStreams": [
"video-stream8",
"audio-stream4"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "10",
"container": "ts",
"elementaryStreams": [
"video-stream9",
"audio-stream5"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-1",
"container": "fmp4",
"elementaryStreams": [
"video-stream0"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-2",
"container": "fmp4",
"elementaryStreams": [
"video-stream1"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-3",
"container": "fmp4",
"elementaryStreams": [
"video-stream2"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-4",
"container": "fmp4",
"elementaryStreams": [
"video-stream3"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-5",
"container": "fmp4",
"elementaryStreams": [
"video-stream4"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-6",
"container": "fmp4",
"elementaryStreams": [
"video-stream5"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-7",
"container": "fmp4",
"elementaryStreams": [
"video-stream6"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-8",
"container": "fmp4",
"elementaryStreams": [
"video-stream7"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-9",
"container": "fmp4",
"elementaryStreams": [
"video-stream8"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "video-10",
"container": "fmp4",
"elementaryStreams": [
"video-stream9"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-1",
"container": "fmp4",
"elementaryStreams": [
"audio-stream0"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-2",
"container": "fmp4",
"elementaryStreams": [
"audio-stream1"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-3",
"container": "fmp4",
"elementaryStreams": [
"audio-stream2"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-4",
"container": "fmp4",
"elementaryStreams": [
"audio-stream3"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-5",
"container": "fmp4",
"elementaryStreams": [
"audio-stream4"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
},
{
"key": "audio-6",
"container": "fmp4",
"elementaryStreams": [
"audio-stream5"
],
"segmentSettings": {
"segmentDuration": "4.0s",
"individualSegments": true
}
}
],
"manifests": [
{
"fileName": "manifest.m3u8",
"type": "HLS",
"muxStreams": [
"10",
"9",
"8",
"7",
"6",
"5",
"4",
"3",
"2",
"1"
]
},
{
"fileName": "manifest.mpd",
"type": "DASH",
"muxStreams": [
"video-10",
"video-9",
"video-8",
"video-7",
"video-6",
"video-5",
"video-4",
"video-3",
"video-2",
"video-1",
"audio-6",
"audio-5",
"audio-4",
"audio-3",
"audio-2",
"audio-1"
]
}
],
"output": {
"uri": "gs://STORAGE_BUCKET_NAME/STORAGE_OUTPUT_FOLDER/"
}
}
}