Skip to main content

Crate ff_preview

Crate ff_preview 

Source
Expand description

§ff-preview

Real-time video/audio preview and proxy workflow for the avio crate family.

This crate provides single-file playback (PreviewPlayer) with frame-accurate seek, A/V sync, and an optional proxy generation workflow.

§Feature Flags

FeatureDescriptionDefault
tokioAsync AsyncPreviewPlayer backed by spawn_blockingno
proxyProxyGenerator for lower-resolution proxy filesno

§Usage

use ff_preview::{PreviewPlayer, RgbaSink};

let mut player = PreviewPlayer::open("clip.mp4")?;
player.set_sink(Box::new(RgbaSink::new()));
player.play();
player.run()?;

Re-exports§

pub use audio::AudioMixer;
pub use audio::AudioTrackHandle;
pub use error::PreviewError;
pub use event::PlayerEvent;
pub use playback::DecodeBuffer;
pub use playback::DecodeBufferBuilder;
pub use playback::FrameResult;
pub use playback::FrameSink;
pub use playback::PlaybackClock;
pub use playback::PlayerCommand;
pub use playback::PlayerHandle;
pub use playback::PlayerRunner;
pub use playback::PreviewPlayer;
pub use playback::RgbaFrame;
pub use playback::RgbaSink;
pub use playback::SeekEvent;
pub use playback::AsyncPreviewPlayer;
pub use proxy::ProxyGenerator;
pub use proxy::ProxyJob;
pub use proxy::ProxyResolution;
pub use timeline::TimelinePlayer;
pub use timeline::TimelineRunner;

Modules§

audio
Multi-track audio mixer for real-time preview.
error
Error types for ff-preview.
event
Player event types emitted by PlayerRunner.
playback
Real-time playback types for ff-preview.
proxy
Proxy file generation for ff-preview.
timeline
Real-time playback of a Timeline.

Enums§

HardwareAccel
Hardware acceleration configuration.