tpt_kinetix_core/lib.rs
1//! `tpt-kinetix-core` — shared types for the TPT Kinetix media processing engine.
2//!
3//! This crate is the single source of truth for the data structures that flow
4//! between all other Kinetix crates:
5//!
6//! - [`error`] — the top-level [`error::KinetixError`] enum
7//! - [`timestamp`] — rational media timestamps
8//! - [`codec`] — codec and media-type identifiers
9//! - [`pixel_format`] — supported pixel / chroma-sampling formats
10//! - [`frame`] — decoded [`frame::VideoFrame`]
11//! - [`packet`] — compressed [`packet::Packet`] as produced by a demuxer
12//! - [`encode`] — codec-agnostic encoder configuration
13//! - [`capabilities`] — per-decoder [`capabilities::DecoderCapabilities`] introspection
14
15pub mod capabilities;
16pub mod codec;
17pub mod encode;
18pub mod error;
19pub mod frame;
20pub mod packet;
21pub mod pixel_format;
22pub mod timestamp;
23
24// Convenience re-exports of the most commonly used types.
25pub use capabilities::DecoderCapabilities;
26pub use codec::{CodecId, MediaType};
27pub use encode::{EncodeConfig, RateControl, SpeedPreset};
28pub use error::KinetixError;
29pub use frame::{AudioFrame, SampleFormat, VideoFrame};
30pub use packet::Packet;
31pub use pixel_format::PixelFormat;
32pub use timestamp::Timestamp;