Skip to main content

ace_player/decoder/
mod.rs

1//! Media decoding — video + audio streams.
2pub mod video;
3pub mod audio;
4
5use anyhow::Result;
6use crate::MediaInfo;
7
8/// Probe a media source to extract metadata without full decode.
9pub async fn probe(source: &str) -> Result<MediaInfo> {
10    use std::path::Path;
11
12    // TODO: use symphonia probe for full format detection
13    // For now, return a stub — replace with symphonia::probe in Phase 1
14    tracing::info!("Probing source: {source}");
15
16    Ok(MediaInfo {
17        duration_secs: 0.0,
18        width: 1920,
19        height: 1080,
20        has_video: true,
21        has_audio: true,
22        codec_video: Some("h264".to_string()),
23        codec_audio: Some("aac".to_string()),
24        fps: 30.0,
25    })
26}