MKV¶
Matroska Video files use the EBML structure.
Track types¶
- enzyme.mkv.VIDEO_TRACK¶
Video track type
- enzyme.mkv.AUDIO_TRACK¶
Audio track type
- enzyme.mkv.SUBTITLE_TRACK¶
Subtitle track type
Main interface¶
- class enzyme.mkv.MKV(stream, recurse_seek_head=False)¶
Matroska Video file
- Parameters:
stream – seekable file-like object
- class enzyme.mkv.Info(title=None, duration=None, date_utc=None, timecode_scale=None, muxing_app=None, writing_app=None)¶
Object for the Info EBML element
- class enzyme.mkv.Track(type=None, number=None, name=None, language=None, enabled=None, default=None, forced=None, lacing=None, codec_id=None, codec_name=None)¶
Base object for the Tracks EBML element
- class enzyme.mkv.VideoTrack(width=0, height=0, interlaced=False, stereo_mode=None, crop=None, display_width=None, display_height=None, display_unit=None, aspect_ratio_type=None, **kwargs)¶
Object for the Tracks EBML element with
VIDEO_TRACKTrackType- classmethod fromelement(element)¶
Load the
VideoTrackfrom anElement- Parameters:
element (
Element) – the Track element withVIDEO_TRACKTrackType
- class enzyme.mkv.AudioTrack(sampling_frequency=None, channels=None, output_sampling_frequency=None, bit_depth=None, **kwargs)¶
Object for the Tracks EBML element with
AUDIO_TRACKTrackType- classmethod fromelement(element)¶
Load the
AudioTrackfrom anElement- Parameters:
element (
Element) – the Track element withAUDIO_TRACKTrackType
- class enzyme.mkv.SubtitleTrack(type=None, number=None, name=None, language=None, enabled=None, default=None, forced=None, lacing=None, codec_id=None, codec_name=None)¶
Object for the Tracks EBML element with
SUBTITLE_TRACKTrackType
- class enzyme.mkv.Tag(targets=None, simpletags=None)¶
Object for the Tag EBML element
- class enzyme.mkv.SimpleTag(name, language='und', default=True, string=None, binary=None)¶
Object for the SimpleTag EBML element
- class enzyme.mkv.Chapter(start, hidden=False, enabled=False, end=None, string=None, language=None)¶
Object for the ChapterAtom and ChapterDisplay EBML element
Note
For the sake of simplicity, it is assumed that the ChapterAtom element has no more than 1 ChapterDisplay child element and informations it contains are merged into the
Chapter