Module sega_film::container [] [src]

Contains tools for parsing the FILM container. This module contains types for parsing the header of a Sega FILM file. The FILM container header has some basic metadata, and encapsulates two additional chunks:

  • FDSC, the format descriptor, which contains information about the container's contents
  • STAB, the sample table, which contains information about each sample within the container

Structs

FDSC

The FDSC chunk contains information about the streams inside the container; it provides the information necessary to be able to decode the content.

FILMHeader

Represents the header of a FILM container. Parsing a FILMHeader provides all of the information necessary to read the file, including the data from the sub-chunks. Most of the time, you can safely work from parsing the FILMHeader at the start of a file without needing to manually parse the FDSC or STAB segments.

STAB

The STAB chunk contains the sample table. This table contains a list of every sample in the file; when parsing the file, you'll use the data in this struct to determine how to actually read the audio and video streams.

Sample

Represents a single sample in the file. Each sample within the FILM file is either audio or video; this data from the sample table will tell you the location of the sample along with what kind of data it contains and some basic metadata about it. For the audio stream, this information and the information in the FDSC is enough to parse the data after you've demuxed it. For the video stream, you'll need some additional information from the Cinepak headers which are contained in every video sample.

Enums

AudioCodec