diff --git a/docs/configuration.md b/docs/configuration.md
index ef2486436..36237f0d7 100644
--- a/docs/configuration.md
+++ b/docs/configuration.md
@@ -1363,35 +1363,6 @@ editing the `conf` file in a text editor. Use the examples as reference.
-### min_fps_factor
-
-
-
-
Description
-
- Sunshine will use this factor to calculate the minimum time between frames. Increasing this value may help
- when streaming mostly static content.
- @warning{Higher values will consume more bandwidth.}
-
-
-
-
Default
-
@code{}
- 1
- @endcode
-
-
-
Range
-
1-3
-
-
-
Example
-
@code{}
- min_fps_factor = 1
- @endcode
-
-
-
## Network
### upnp
diff --git a/src/config.cpp b/src/config.cpp
index 7147fd6cf..89a5a4454 100644
--- a/src/config.cpp
+++ b/src/config.cpp
@@ -504,7 +504,6 @@ namespace config {
{} // wa
}, // display_device
- 1, // min_fps_factor
0 // max_bitrate
};
@@ -1143,7 +1142,6 @@ namespace config {
video.dd.wa.hdr_toggle_delay = std::chrono::milliseconds {value};
}
- int_between_f(vars, "min_fps_factor", video.min_fps_factor, {1, 3});
int_f(vars, "max_bitrate", video.max_bitrate);
path_f(vars, "pkey", nvhttp.pkey);
diff --git a/src/config.h b/src/config.h
index 066b95df1..2e088ea75 100644
--- a/src/config.h
+++ b/src/config.h
@@ -140,7 +140,6 @@ namespace config {
workarounds_t wa;
} dd;
- int min_fps_factor; // Minimum fps target, determines minimum frame time
int max_bitrate; // Maximum bitrate, sets ceiling in kbps for bitrate requested from client
};
diff --git a/src/video.cpp b/src/video.cpp
index 0ff4d7401..b4e3c1477 100644
--- a/src/video.cpp
+++ b/src/video.cpp
@@ -1875,9 +1875,9 @@ namespace video {
}
});
- // set minimum frame time, avoiding violation of client-requested target framerate
- auto minimum_frame_time = std::chrono::milliseconds(1000 / std::min(config.framerate, (config::video.min_fps_factor * 10)));
- BOOST_LOG(debug) << "Minimum frame time set to "sv << minimum_frame_time.count() << "ms, based on min fps factor of "sv << config::video.min_fps_factor << "."sv;
+ // set minimum frame time based on client-requested target framerate
+ std::chrono::duration minimum_frame_time {1000.0 / config.framerate};
+ BOOST_LOG(info) << "Minimum frame time set to "sv << minimum_frame_time.count() << "ms, based on client-requested target framerate "sv << config.framerate << "."sv;
auto shutdown_event = mail->event(mail::shutdown);
auto packets = mail::man->queue(mail::video_packets);
diff --git a/src_assets/common/assets/web/config.html b/src_assets/common/assets/web/config.html
index f021fd71a..6e766e93c 100644
--- a/src_assets/common/assets/web/config.html
+++ b/src_assets/common/assets/web/config.html
@@ -178,7 +178,6 @@
"dd_config_revert_on_disconnect": "disabled",
"dd_mode_remapping": {"mixed": [], "resolution_only": [], "refresh_rate_only": []},
"dd_wa_hdr_toggle_delay": 0,
- "min_fps_factor": 1,
"max_bitrate": 0,
},
},
diff --git a/src_assets/common/assets/web/configs/tabs/audiovideo/DisplayModesSettings.vue b/src_assets/common/assets/web/configs/tabs/audiovideo/DisplayModesSettings.vue
index 2bf997bae..25b12deba 100644
--- a/src_assets/common/assets/web/configs/tabs/audiovideo/DisplayModesSettings.vue
+++ b/src_assets/common/assets/web/configs/tabs/audiovideo/DisplayModesSettings.vue
@@ -11,13 +11,6 @@ const config = ref(props.config)
-
-
-
-
-
{{ $t('config.min_fps_factor_desc') }}
-
-
diff --git a/src_assets/common/assets/web/public/assets/locale/en.json b/src_assets/common/assets/web/public/assets/locale/en.json
index 6d623d364..89405a7e4 100644
--- a/src_assets/common/assets/web/public/assets/locale/en.json
+++ b/src_assets/common/assets/web/public/assets/locale/en.json
@@ -256,8 +256,6 @@
"log_path_desc": "The file where the current logs of Sunshine are stored.",
"max_bitrate": "Maximum Bitrate",
"max_bitrate_desc": "The maximum bitrate (in Kbps) that Sunshine will encode the stream at. If set to 0, it will always use the bitrate requested by Moonlight.",
- "min_fps_factor": "Minimum FPS Factor",
- "min_fps_factor_desc": "Sunshine will use this factor to calculate the minimum time between frames. Increasing this value slightly may help when streaming mostly static content. Higher values will consume more bandwidth.",
"min_threads": "Minimum CPU Thread Count",
"min_threads_desc": "Increasing the value slightly reduces encoding efficiency, but the tradeoff is usually worth it to gain the use of more CPU cores for encoding. The ideal value is the lowest value that can reliably encode at your desired streaming settings on your hardware.",
"misc": "Miscellaneous options",