1#![warn(clippy::all)]
27#![warn(clippy::pedantic)]
28
29pub mod audio;
30pub(crate) mod cache;
31pub mod error;
32pub mod event;
33pub mod playback;
34
35#[cfg(feature = "proxy")]
36pub mod proxy;
37
38#[cfg(feature = "timeline")]
39pub mod scene;
40
41pub use audio::{AudioMixer, AudioTrackHandle};
42pub use error::PreviewError;
43pub use event::PlayerEvent;
44pub use ff_decode::HardwareAccel;
45pub use ff_format::{ErrorSeverity, MediaError};
46pub use playback::{
47 DecodeBuffer, DecodeBufferBuilder, FrameResult, FrameSink, PlaybackClock, PlayerCommand,
48 PlayerHandle, PlayerRunner, PreviewPlayer, RgbaFrame, RgbaSink, SeekEvent,
49};
50
51#[cfg(feature = "tokio")]
52pub use playback::AsyncPreviewPlayer;
53
54#[cfg(feature = "proxy")]
55pub use proxy::{ProxyGenerator, ProxyJob, ProxyResolution};
56
57#[cfg(feature = "timeline")]
58pub use scene::{
59 Scene, SceneAudioPlacement, SceneAudioTrack, ScenePlacement, ScenePlayer, SceneRunner,
60 SceneVideoTrack,
61};