Skip to main content

Crate oxideav_core

Crate oxideav_core 

Source
Expand description

Core types and registries for the oxideav framework.

This crate is the dependency-light foundation: primitive types (timestamps, packets, frames, media formats) plus the registries every sibling crate registers itself into. The aggregate RuntimeContext bundles all four registries (codec / container / source / filter) into a single value that consumers pass around.

Re-exports§

pub use capabilities::CodecCapabilities;
pub use capabilities::CodecPreferences;
pub use capabilities::DEFAULT_PRIORITY;
pub use error::Error;
pub use error::Result;
pub use execution::ExecutionContext;
pub use filter::FilterContext;
pub use filter::PortParams;
pub use filter::PortSpec;
pub use filter::StreamFilter;
pub use format::MediaType;
pub use format::PixelFormat;
pub use format::SampleFormat;
pub use frame::AudioFrame;
pub use frame::Frame;
pub use frame::VideoFrame;
pub use frame::VideoPlane;
pub use options::parse_options;
pub use options::CodecOptions;
pub use options::CodecOptionsStruct;
pub use options::OptionField;
pub use options::OptionKind;
pub use options::OptionValue;
pub use packet::Packet;
pub use picture::AttachedPicture;
pub use picture::PictureType;
pub use rational::Rational;
pub use registry::CodecImplementation;
pub use registry::CodecInfo;
pub use registry::CodecRegistry;
pub use registry::ContainerProbeFn;
pub use registry::ContainerRegistry;
pub use registry::Decoder;
pub use registry::DecoderFactory;
pub use registry::Demuxer;
pub use registry::Encoder;
pub use registry::EncoderFactory;
pub use registry::FilterFactory;
pub use registry::FilterRegistry;
pub use registry::Muxer;
pub use registry::OpenDemuxerFn;
pub use registry::OpenMuxerFn;
pub use registry::OpenSourceFn;
pub use registry::ProbeData;
pub use registry::ProbeScore;
pub use registry::ReadSeek;
pub use registry::RuntimeContext;
pub use registry::SourceRegistry;
pub use registry::WriteSeek;
pub use registry::MAX_PROBE_SCORE;
pub use registry::PROBE_SCORE_EXTENSION;
pub use stream::CodecId;
pub use stream::CodecParameters;
pub use stream::CodecResolver;
pub use stream::CodecTag;
pub use stream::Confidence;
pub use stream::NullCodecResolver;
pub use stream::ProbeContext;
pub use stream::ProbeFn;
pub use stream::StreamInfo;
pub use subtitle::CuePosition;
pub use subtitle::Segment;
pub use subtitle::SubtitleCue;
pub use subtitle::SubtitleStyle;
pub use subtitle::TextAlign;
pub use time::TimeBase;
pub use time::Timestamp;

Modules§

bits
Shared bit-level I/O — MSB-first and LSB-first readers and writers.
capabilities
Codec capability description.
error
Shared error type for oxideav.
execution
Runtime hints passed from the executor to codecs and filters.
filter
Multi-stream filter model.
format
Media-type and sample/pixel format enumerations.
frame
Uncompressed audio and video frames.
options
Generic, schema-validated option bag for codec (and container) init.
packet
Compressed-data packet passed between demuxer → decoder and encoder → muxer.
picture
Attached picture metadata (cover art, artist photos, etc.).
rational
Rational number used for time bases and frame rates.
registry
Framework registries.
stream
Stream metadata shared between containers and codecs.
subtitle
Unified subtitle cue representation.
time
Time base and timestamp types.