Crate matroska_demuxer

source ·
Expand description

A demuxer that can demux Matroska and WebM container files.

Example:

use std::fs::File;
use matroska_demuxer::*;

let file = File::open("test.mkv").unwrap();
let mut mkv = MatroskaFile::open(file).unwrap();
let video_track = mkv
    .tracks()
    .iter()
    .find(|t| t.track_type() == TrackType::Video)
    .map(|t| t.track_number().get())
    .unwrap();

let mut frame = Frame::default();
while mkv.next_frame(&mut frame).unwrap() {
    if frame.track == video_track {
        dbg!("video frame found");
    }
}

Structs

  • Audio settings.
  • Contains the atom information to use as the chapter atom.
  • Contains all possible strings to use for the chapter display.
  • Settings describing the colour format.
  • Settings describing the encryption algorithm used.
  • Settings for one content encoding like compression or encryption.
  • Settings describing the encryption used.
  • The EBML header of the file.
  • Contains all information about a segment edition.
  • A data frame inside the Matroska container.
  • Contains general information about the segment.
  • SMPTE 2086 mastering data.
  • Demuxer for Matroska files.
  • Contains general information about the target.
  • A single metadata descriptor.
  • Specifies which other elements the metadata represented by the tag applies to.
  • Describes a track.
  • Video settings.

Enums