EXT-X-PLAYLIST-TYPE:VOD Setting
Hi there,
I'm using the web xonsole to test MediaConvert before building it out with the API.
At the moment the m3u8 manifest files have the following at the top:
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-INDEPENDENT-SEGMENTS
However i'm looking to have them marked as VOD content, so for example:
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TARGETDURATION:4
#EXT-X-INDEPENDENT-SEGMENTS
I've looked through all the settings and can't see anything that would make this happen.
My job JSON is included below (with a few things xxx'd out)
Many thanks in advance,
Stuart
{
"Queue": "xxx",
"UserMetadata": {},
"Role": "xxx",
"Settings": {
"TimecodeConfig": {
"Source": "ZEROBASED"
},
"OutputGroups": [
{
"Name": "Apple HLS",
"Outputs": [
{
"ContainerSettings": {
"Container": "M3U8",
"M3u8Settings": {
"AudioFramesPerPes": 4,
"PcrControl": "PCR_EVERY_PES_PACKET",
"PmtPid": 480,
"PrivateMetadataPid": 503,
"ProgramNumber": 1,
"PatInterval": 0,
"PmtInterval": 0,
"Scte35Source": "NONE",
"Scte35Pid": 500,
"NielsenId3": "NONE",
"TimedMetadata": "NONE",
"TimedMetadataPid": 502,
"VideoPid": 481,
"AudioPids": [
482,
483,
484,
485,
486,
487,
488,
489,
490,
491,
492
]
}
},
"VideoDescription": {
"ScalingBehavior": "DEFAULT",
"TimecodeInsertion": "DISABLED",
"AntiAlias": "ENABLED",
"Sharpness": 50,
"CodecSettings": {
"Codec": "H_264",
"H264Settings": {
"InterlaceMode": "PROGRESSIVE",
"NumberReferenceFrames": 3,
"Syntax": "DEFAULT",
"Softness": 0,
"GopClosedCadence": 1,
"GopSize": 90,
"Slices": 1,
"GopBReference": "DISABLED",
"SlowPal": "DISABLED",
"EntropyEncoding": "CABAC",
"FramerateControl": "INITIALIZE_FROM_SOURCE",
"RateControlMode": "QVBR",
"CodecProfile": "MAIN",
"Telecine": "NONE",
"MinIInterval": 0,
"AdaptiveQuantization": "AUTO",
"CodecLevel": "AUTO",
"FieldEncoding": "PAFF",
"SceneChangeDetect": "ENABLED",
"QualityTuningLevel": "MULTI_PASS_HQ",
"FramerateConversionAlgorithm": "DUPLICATE_DROP",
"UnregisteredSeiTimecode": "DISABLED",
"GopSizeUnits": "FRAMES",
"ParControl": "INITIALIZE_FROM_SOURCE",
"NumberBFramesBetweenReferenceFrames": 2,
"RepeatPps": "DISABLED",
"DynamicSubGop": "STATIC"
}
},
"AfdSignaling": "NONE",
"DropFrameTimecode": "ENABLED",
"RespondToAfd": "NONE",
"ColorMetadata": "INSERT"
},
"AudioDescriptions": [
{
"AudioTypeControl": "FOLLOW_INPUT",
"CodecSettings": {
"Codec": "AAC",
"AacSettings": {
"AudioDescriptionBroadcasterMix": "NORMAL",
"Bitrate": 96000,
"RateControlMode": "CBR",
"CodecProfile": "LC",
"CodingMode": "CODING_MODE_2_0",
"RawFormat": "NONE",
"SampleRate": 48000,
"Specification": "MPEG4"
}
},
"LanguageCodeControl": "FOLLOW_INPUT"
}
],
"OutputSettings": {
"HlsSettings": {
"AudioGroupId": "program_audio",
"AudioOnlyContainer": "AUTOMATIC",
"IFrameOnlyManifest": "EXCLUDE"
}
}
}
],
"OutputGroupSettings": {
"Type": "HLS_GROUP_SETTINGS",
"HlsGroupSettings": {
"ManifestDurationFormat": "INTEGER",
"SegmentLength": 6,
"TimedMetadataId3Period": 10,
"CaptionLanguageSetting": "OMIT",
"Destination": "xxx",
"TimedMetadataId3Frame": "PRIV",
"CodecSpecification": "RFC_6381",
"OutputSelection": "MANIFESTS_AND_SEGMENTS",
"ProgramDateTimePeriod": 600,
"MinSegmentLength": 0,
"MinFinalSegmentLength": 0,
"DirectoryStructure": "SINGLE_DIRECTORY",
"ProgramDateTime": "EXCLUDE",
"SegmentControl": "SEGMENTED_FILES",
"ManifestCompression": "NONE",
"ClientCache": "ENABLED",
"AudioOnlyHeader": "INCLUDE",
"StreamInfResolution": "INCLUDE"
}
},
"AutomatedEncodingSettings": {
"AbrSettings": {
"MaxAbrBitrate": 8000000,
"MinAbrBitrate": 400000
}
}
}
],
"AdAvailOffset": 0,
"Inputs": [
{
"AudioSelectors": {
"Audio Selector 1": {
"Offset": 0,
"DefaultSelection": "DEFAULT",
"ProgramSelection": 1
}
},
"VideoSelector": {
"ColorSpace": "FOLLOW",
"Rotate": "DEGREE_0",
"AlphaBehavior": "DISCARD"
},
"FilterEnable": "AUTO",
"PsiControl": "USE_PSI",
"FilterStrength": 0,
"DeblockFilter": "DISABLED",
"DenoiseFilter": "DISABLED",
"InputScanType": "AUTO",
"TimecodeSource": "ZEROBASED",
"FileInput": "xxx"
}
]
},
"AccelerationSettings": {
"Mode": "DISABLED"
},
"StatusUpdateInterval": "SECONDS_60",
"Priority": 0
}
Hi Stuart,
What is the issue you are trying to resolve? Are you trying to add "#EXT-X-PLAYLIST-TYPE:VOD" in your manifest? This tag is already added in the child manifest.
Following is the master and child manifest running with your JSON.
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:BANDWIDTH=942707,AVERAGE-BANDWIDTH=461799,CODECS="avc1.4d401e,mp4a.40.2",RESOLUTION=640x364,FRAME-RATE=24.000
big_buck_bunny_1_1.m3u8
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:8
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:8,
big_buck_bunny_1_1_00001.ts
If you want to set #EXT-X-TARGETDURATION:4, you can change the follow setting.
"FramerateControl": "INITIALIZE_FROM_SOURCE"
"GopSize": from 90 to 50 (if source's framerate is 50/25) or 60 (if source's framerate is 60/30/)
"SegmentLength": from 6 to 4,
Thanks,
Sam
Edited by: samuelaws on Nov 25, 2020 12:11 AM
Hi Sam,
Many thanks for the help - i'm a little embarrased as I should have checked the child manifests, it's just the ones I was comparing against had it in the main manifest so was expecting to see it there - so thanks for letting me know and it seems fine to have it just there.
Thank you also for the direction in EXT-X-TARGETDURATION
Much appreciated!
Stuart
Relevant questions
The image saved in S3 doesn't match the original file
Accepted Answerasked 5 months agoFirst chunk freezing when splitting into segments
asked 10 months agoMediaLive Stream Bad Performance
asked 5 months agoEnabling S3 Encryption-at-rest on a go-forward basis with s3fs
asked 8 days agoMediaTailor SEGMENT_DURATION_MISMATCH
asked 2 months agoEXT-X-PLAYLIST-TYPE:VOD Setting
asked 2 years agoFine-Grained Control Over MediaConvert HLS Output?
Accepted Answerasked 3 years agoRhytmic Noise Blasts on audio track when converting from ProRes HQ
asked 5 months agoMediaConvert HLS subtitles off by default
asked 25 days agoLambda Authorizer with API Key enabled on API Gateway
asked 2 months ago