Crate matroska

Source
Expand description

A library for Matroska file metadata parsing functionality

Implemented as a set of nested structs with public values which one can use directly.

§Example 1

let matroska = matroska::open("file.mkv").unwrap();
println!("title : {:?}", matroska.info.title);

§Example 2

use matroska::Info;
if let Ok(Some(Info { duration, ..})) = matroska::get_from::<_, Info>("file.mkv") {
    println!("duration : {:?}", duration);
}

For additional information about the Matroska format, see the official specification

Structs§

Attachment
An attached file (often used for cover art)
Audio
An audio track’s specifications
Chapter
An individual chapter point
ChapterDisplay
The display string for a chapter point entry
ChapterEdition
A complete set of chapters
DateTime
An opaque DateTime value representing seconds since the MKV epoch
Info
An Info segment with information pertaining to the entire file
Matroska
A Matroska file
SimpleTag
General information about the target
Tag
An attached tag
Target
Which elements the metadata’s tag applies to
Track
A TrackEntry segment in the Tracks segment container
Video
A video track’s specifications

Enums§

EyeOrder
Which eye is displayed first
Language
Which form of language is in use
MatroskaError
A possible error when parsing a Matroska file
Settings
The settings a track may have
StereoColors
Which colors are used for anaglyph stereo 3D
StereoMode
How a video track may be displayed in stereo mode
TagValue
A tag’s value
TargetTypeValue
The type of value the tag is for
Tracktype
The type of a given track

Traits§

Parseable
An element which can be parsed from the Matroska stream

Functions§

get
Returns a single item from open Matroska file such as Info
get_from
Returns a single item from Matroska file on disk, such as Info
open
Opens Matroska file on disk

Type Aliases§

Error
A possible error when reading or parsing a Matroska file