From b9d8e20b6bff6b51f73106b688bd6e5d98e08215 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 21 Apr 2025 20:36:34 +0200 Subject: new transcoding args system --- common/src/config.rs | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) (limited to 'common/src/config.rs') diff --git a/common/src/config.rs b/common/src/config.rs index 522fa0f..4ec43eb 100644 --- a/common/src/config.rs +++ b/common/src/config.rs @@ -29,28 +29,25 @@ pub struct GlobalConfig { #[serde(default)] pub default_permission_set: PermissionSet, #[serde(default)] - pub encoders: EncoderArgs, + pub transcoder: TranscoderConfig, } +#[rustfmt::skip] #[derive(Debug, Deserialize, Serialize, Default)] -pub struct EncoderArgs { - pub avc: Option, - pub hevc: Option, - pub vp8: Option, - pub vp9: Option, - pub av1: Option, - pub generic: Option, -} - -#[derive(Debug, Deserialize, Serialize, Clone, Copy)] -#[serde(rename_all = "snake_case")] -pub enum EncoderClass { - Aom, - Svt, - X26n, - Vpx, - Vaapi, - Rkmpp, +pub struct TranscoderConfig { + #[serde(default)] pub offer_avc: bool, + #[serde(default)] pub offer_hevc: bool, + #[serde(default)] pub offer_vp8: bool, + #[serde(default)] pub offer_vp9: bool, + #[serde(default)] pub offer_av1: bool, + #[serde(default)] pub enable_rkmpp: bool, + #[serde(default)] pub enable_rkrga: bool, + #[serde(default)] pub use_svtav1: bool, + #[serde(default)] pub use_rav1e: bool, + pub svtav1_preset: Option, // 0..=13, high is fast + pub rav1e_preset: Option, // 0..=10 + pub aom_preset: Option, // 0..=8, high is fast + pub x264_preset: Option, } #[derive(Serialize, Deserialize, Debug, Default)] -- cgit v1.2.3-70-g09d2