Skip to main content

lumen_engine/media/
store.rs

1use std::fmt::Debug;
2
3use crate::audio::AudioResolver;
4
5use super::{FontResolver, ImageResolver, VideoFrameResolver};
6
7pub trait MediaStore: Send + Sync + Debug {
8    fn get_image_resolver(&self, source: &str) -> Option<Box<dyn ImageResolver>>;
9
10    fn get_video_resolver(&self, stream_id: &str) -> Option<Box<dyn VideoFrameResolver>>;
11
12    fn get_audio_resolver(&self, _source: &str) -> Option<Box<dyn AudioResolver>> {
13        None
14    }
15
16    fn get_font_resolver(&self, _source: &str) -> Option<Box<dyn FontResolver>> {
17        None
18    }
19}