Supported codecs
Progressive MP4
An MP4 file contains all video and audio tracks. All the tracks in that MP4 will be extracted except subtitle.
Video
H.264/AVC and H.265/HEVC with multiple bitrates.
For H.264/AVC, both avc1
and avc3
are accepted, but the result always be
stored with avc1
type of video sample entry box.
For H.265/HEVC, both hev1
and hvc1
are accepted, but the result will always
be stored with hev1
type of video sample entry box.
In case a common GoP duration of all video tracks can be found, one or more
common GoP will be combined to form a segment that has duration --minseg
to --maxseg
, if we have more than one segment durations that satisfy the
range, the lowest one will be chosen. Then, all output video tracks will be
segmented with the same segment duration.
On the other hand, if a common GoP duration among video tracks cannot be found,
the segments will be formed base on the sync-frames distances of each video
track. Segment will begin with a sync-frame, it can contain one or more
sync-frames in it and will end right before a sync-frame (end sync-frame).
The DTS diff between begin sync-frame and end sync-frame is segment duration
and will be from --minseg
to --maxseg
. In this case, the segment duration
can be vary, but the duration of corresponding segments within tracks will be
the same.
Video track timescales, as defined in mdhd
box, need to be the same among
videos, or differ by an integer factor like 50 and 25 with factor is 2, or
60000 and 20000 with factor is 3.
Audio
AAC, HE-AACv1, HE-AACv2, AC3, Enhanced AC3, and MP4 with multiple
bitrates and languages. Language will be gotten from mdhd
box.
Subtitle
Embedded subtitle are not supported.
Note: you can add subtitle track later by this tools. Or you can use Directory input method by putting MP4 files and subtitle files into the same directory.
SMIL + progressive MP4
In this case, the assets have a SMIL file describing the Progressive MP4 video, audio and text stream.
Video
The same with Progressive MP4
Audio
The same with Progressive MP4
Subtitle
The SMIL-file syntax and usage is explained in the SMIL section. In that section, you can also find the subtitle specification at Subtitle input.
MPEG2-TS
A TS file contains all video and audio tracks, and them all will be extracted except subtitle track.
Video
H.264/AVC and H.265/HEVC with multiple bitrates.
In case a common GoP duration of all video tracks can be found, one or more
common GoP will be combined to form a segment that has duration --minseg
to --maxseg
, if we have more than one segment durations that satisfy the
range, the lowest one will be chosen. Then, all output video tracks will be
segmented with the same segment duration.
On the other hand, if a common GoP duration among video tracks cannot be found,
the segments will be formed base on the sync-frames distances of each video
track. Segment will begin with a sync-frame, it can contain one or more
sync-frames in it and will end right before a sync-frame (end sync-frame).
The DTS diff between begin sync-frame and end sync-frame is segment duration
and will be from --minseg
to --maxseg
. In this case, the segment duration
can be vary, but the duration of corresponding segments within tracks will be
the same.
The timescale in TS file must be standard, 90000.
Audio
AAC, HE-AACv1, HE-AACv2, AC3, and Enhanced AC3 with multiple bitrates and languages. Language will be gotten from stream descriptors in PMT.
Subtitle
Embedded subtitle are not supported.
Note: you can add subtitle track later by this tools. Or you can use Directory input method by putting TS files and subtitle files into the same directory.
Directory
A directory contains all the input TS, MP4 and subtitle files. ew-vodingest
will scan and extract all the media tracks from the media files in that
directory.
Video
The same with Progressive MP4 and MPEG2-TS sections, duplicated tracks are going to be dropped.
Audio
The same with Progressive MP4 and MPEG2-TS sections, duplicated tracks are going to be dropped.
Subtitle
Side-loaded subtitle text files are supported.
Supported formats: ttml
, webvtt
, srt
, stl
. Subtitle format will be
detected by the file extension:
.ttml
for ttml
format.
.vtt
and .webvtt
for webvtt
format.
.srt
for srt
format.
.stl
for stl
format.
MPEG DASH On-Demand Profile
A DASH On-Demand MPD file describes the asset.
Video
H.264/AVC and H.265/HEVC with multiple bitrates.
For H.264/AVC, both avc1
and avc3
are accepted, but the result always be
stored with avc1
type of video sample entry box.
For H.265/HEVC, both hev1
and hvc1
are supported, but the result always be
stored with hev1
type of video sample entry box.
All video tracks need to have the same timescale as defined in mdhd
box.
Audio
AAC, HE-AACv1, HE-AACv2, AC3 and Enchaned AC3 with multiple bitrates and languagues.
Subtitle
Side-loaded subtitle text files are supported under formats:
ttml
, webvtt
, srt
.
Side loaded subtitle fragmented mp4 files is supported under
formats: stpp
and fragmented webvtt
.
CEA608 Closed Captions is preserved from MPD manifest file.
Apple HLS
A Master Playlist file describes the asset. Multiplexed and isolate video and audio tracks are both supported in individual segment files or a concatenated files.
Video
H.264/AVC in TS encapsulation.
H.264/AVC and H.265/HEVC are supported in fMP4 encapsulation.
Audio
AAC, HE-AACv1, HE-AACv2, AC3 and Enhanced AC3 in fMP4 and TS encapsulation.
Subtitle
HLS WebVTT as side loaded, complete or segmented text files.
HLS stpp as fragmented files.
CEA608 Closed Captions are preserved from master playlist (.m3u8 file).
Microsoft SmoothStreaming
The MSS/ISM manifest file is used to define the asset.
Video
H.264/AVC with multiple bitrates.
Although it is not standard, H.265/hevc with muiltiple bitrates is supported.
Audio
AAC and HE-AAC with multiple bitrates and languages.
Subtitle
TTML as side-loaded complete files.