Skip to content

Commit

Permalink
chore(mmserver): increase required NVIDIA driver version
Browse files Browse the repository at this point in the history
  • Loading branch information
colinmarc committed Jan 30, 2025
1 parent 8f806b2 commit 02a4823
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 17 deletions.
9 changes: 2 additions & 7 deletions mm-server/src/encoder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1056,13 +1056,8 @@ fn default_hdr10_profile(op: vk::VideoCodecOperationFlagsKHR) -> vk::VideoProfil
.luma_bit_depth(vk::VideoComponentBitDepthFlagsKHR::TYPE_10)
}

fn default_encode_usage(driver_version: DriverVersion) -> vk::VideoEncodeUsageInfoKHR<'static> {
// Nvidia chokes on "ULTRA LOW" for some reason.
let tuning_mode = if matches!(driver_version, DriverVersion::NvidiaProprietary { .. }) {
vk::VideoEncodeTuningModeKHR::LOW_LATENCY
} else {
vk::VideoEncodeTuningModeKHR::ULTRA_LOW_LATENCY
};
fn default_encode_usage() -> vk::VideoEncodeUsageInfoKHR<'static> {
let tuning_mode = vk::VideoEncodeTuningModeKHR::ULTRA_LOW_LATENCY;

vk::VideoEncodeUsageInfoKHR::default()
.video_usage_hints(vk::VideoEncodeUsageFlagsKHR::STREAMING)
Expand Down
7 changes: 2 additions & 5 deletions mm-server/src/encoder/h264.rs
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,8 @@ impl H264Encoder {
let h264_profile_info =
vk::VideoEncodeH264ProfileInfoEXT::default().std_profile_idc(profile_idc);

let mut profile = H264EncodeProfile::new(
profile,
super::default_encode_usage(vk.device_info.driver_version.clone()),
h264_profile_info,
);
let mut profile =
H264EncodeProfile::new(profile, super::default_encode_usage(), h264_profile_info);

let mut caps = H264EncodeCapabilities::default();

Expand Down
7 changes: 2 additions & 5 deletions mm-server/src/encoder/h265.rs
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,8 @@ impl H265Encoder {
let h265_profile_info =
vk::VideoEncodeH265ProfileInfoEXT::default().std_profile_idc(profile_idc);

let mut profile = H265EncodeProfile::new(
profile,
super::default_encode_usage(vk.device_info.driver_version.clone()),
h265_profile_info,
);
let mut profile =
H265EncodeProfile::new(profile, super::default_encode_usage(), h265_profile_info);

let mut caps = H265EncodeCapabilities::default();

Expand Down

0 comments on commit 02a4823

Please sign in to comment.