1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
#[derive(Copy, Clone)]
#[allow(dead_code)]
pub enum MediaType {
MediaTypeNone,
MediaTypeVideo,
MediaTypeAudio,
}
pub trait BasePlugin {
// get plugin args
fn get_args(&self) -> Vec<String>;
// get plugin author
fn get_author(&self) -> String;
// get plugin filter name
fn get_filter_name(&self) -> String;
// get plugin media type
fn get_media_type(&self) -> MediaType;
// validate args
fn validate_user_args(&self, args: &Vec<String>) -> Result<bool, &'static str>;
}
