Module codec

Module codec 

Source
Expand description

Audio, video, and subtitle codec support.

This module provides encoding and decoding capabilities for various media codecs. It wraps FFmpeg’s libavcodec library with safe Rust interfaces.

§Main Components

  • decoder - Decode compressed media to raw frames
  • encoder - Encode raw frames to compressed media
  • Context - Codec context managing encoder/decoder state
  • packet::Packet - Compressed data packet (encoded media)
  • Parameters - Codec parameters (resolution, bitrate, sample rate, etc.)
  • Audio / Video - Type-specific codec information

§Usage

Decoders are typically created from an input stream’s codec parameters, while encoders are configured with desired output parameters before use.

§Submodules

  • packet - Compressed media packets
  • subtitle - Subtitle codec support
  • capabilities - Codec capability flags
  • threading - Multi-threaded encoding/decoding
  • profile - Codec profiles (baseline, main, high, etc.)
  • compliance - Standard compliance levels

Re-exports§

pub use self::flag::Flags;
pub use self::id::Id;
pub use self::context::Context;
pub use self::capabilities::Capabilities;
pub use self::parameters::Parameters;
pub use self::video::Video;
pub use self::audio::Audio;
pub use self::compliance::Compliance;
pub use self::debug::Debug;
pub use self::profile::Profile;

Modules§

audio
audio_service
capabilities
codec
compliance
context
debug
decoder
discard
encoder
field_order
flag
id
packet
parameters
profile
subtitle
threading
traits
video

Functions§

configuration
Returns the libavcodec build configuration string.
license
Returns the libavcodec license string.
version
Returns the libavcodec version number.