diff --git a/src/file_builders/wivrn_config.rs b/src/file_builders/wivrn_config.rs index ccc6368..00151d8 100644 --- a/src/file_builders/wivrn_config.rs +++ b/src/file_builders/wivrn_config.rs @@ -16,6 +16,7 @@ pub enum Encoder { X264, Nvenc, Vaapi, + Vulkan, } impl Display for Encoder { @@ -24,17 +25,18 @@ impl Display for Encoder { Self::X264 => "x264", Self::Nvenc => "NVEnc", Self::Vaapi => "VAAPI", + Self::Vulkan => "Vulkan", }) } } impl Encoder { pub fn iter() -> Iter<'static, Self> { - [Self::X264, Self::Nvenc, Self::Vaapi].iter() + [Self::X264, Self::Nvenc, Self::Vaapi, Self::Vulkan].iter() } pub fn as_vec() -> Vec { - vec![Self::X264, Self::Nvenc, Self::Vaapi] + vec![Self::X264, Self::Nvenc, Self::Vaapi, Self::Vulkan] } } @@ -44,6 +46,7 @@ impl From<&Encoder> for u32 { Encoder::X264 => 0, Encoder::Nvenc => 1, Encoder::Vaapi => 2, + Encoder::Vulkan => 3, } } } diff --git a/src/ui/factories/wivrn_encoder_group_factory.rs b/src/ui/factories/wivrn_encoder_group_factory.rs index e41ed5d..ebc13bf 100644 --- a/src/ui/factories/wivrn_encoder_group_factory.rs +++ b/src/ui/factories/wivrn_encoder_group_factory.rs @@ -57,7 +57,7 @@ impl AsyncFactoryComponent for WivrnEncoderModel { }, add: encoder_combo = &combo_row( "Encoder", - Some("x264: CPU based h264 encoding\nNVEnc: Nvidia GPU encoding\nVAAPI: Intel or AMD GPU encoding"), + Some("x264: CPU based h264 encoding\nNVEnc: Nvidia GPU encoding\nVAAPI: Intel or AMD GPU encoding\nVulkan: Vulkan Video encoding (h264 only)"), &self.encoder_conf.encoder.to_string(), Encoder::iter().map(Encoder::to_string).collect::>(), {