Add encoding frame rate limit
This commit is contained in:
@@ -417,6 +417,7 @@ namespace config {
|
||||
|
||||
video_t video {
|
||||
false, // headless_mode
|
||||
true, // limit_framerate
|
||||
28, // qp
|
||||
|
||||
0, // hevc_mode
|
||||
@@ -1089,6 +1090,7 @@ namespace config {
|
||||
}
|
||||
|
||||
bool_f(vars, "headless_mode", video.headless_mode);
|
||||
bool_f(vars, "limit_framerate", video.limit_framerate);
|
||||
int_f(vars, "qp", video.qp);
|
||||
int_between_f(vars, "hevc_mode", video.hevc_mode, { 0, 3 });
|
||||
int_between_f(vars, "av1_mode", video.av1_mode, { 0, 3 });
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
namespace config {
|
||||
struct video_t {
|
||||
bool headless_mode;
|
||||
bool limit_framerate;
|
||||
// ffmpeg params
|
||||
int qp; // higher == more compression and less quality
|
||||
|
||||
|
||||
@@ -193,6 +193,8 @@
|
||||
"dd_config_revert_delay": 3000,
|
||||
"dd_mode_remapping": {"mixed": [], "resolution_only": [], "refresh_rate_only": []},
|
||||
"dd_wa_hdr_toggle": "disabled",
|
||||
"fallback_mode": "",
|
||||
"headless_mode": "disabled",
|
||||
"min_fps_factor": 1,
|
||||
},
|
||||
},
|
||||
@@ -229,6 +231,7 @@
|
||||
"fec_percentage": 20,
|
||||
"qp": 28,
|
||||
"min_threads": 2,
|
||||
"limit_framerate": "enabled",
|
||||
"hevc_mode": 0,
|
||||
"av1_mode": 0,
|
||||
"capture": "",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import PlatformLayout from '../../PlatformLayout.vue'
|
||||
import Checkbox from "../../Checkbox.vue";
|
||||
|
||||
const props = defineProps([
|
||||
'platform',
|
||||
@@ -34,6 +35,14 @@ const config = ref(props.config)
|
||||
<div class="form-text">{{ $t('config.min_threads_desc') }}</div>
|
||||
</div>
|
||||
|
||||
<!-- Limit Framerate -->
|
||||
<Checkbox class="mb-3"
|
||||
id="limit_framerate"
|
||||
locale-prefix="config"
|
||||
v-model="config.limit_framerate"
|
||||
default="true"
|
||||
></Checkbox>
|
||||
|
||||
<!-- HEVC Support -->
|
||||
<div class="mb-3">
|
||||
<label for="hevc_mode" class="form-label">{{ $t('config.hevc_mode') }}</label>
|
||||
|
||||
@@ -283,6 +283,8 @@
|
||||
"lan_encryption_mode_1": "Enabled for supported clients",
|
||||
"lan_encryption_mode_2": "Required for all clients",
|
||||
"lan_encryption_mode_desc": "This determines when encryption will be used when streaming over your local network. Encryption can reduce streaming performance, particularly on less powerful hosts and clients.",
|
||||
"limit_framerate": "Limit capture framerate",
|
||||
"limit_framerate_desc": "Limit the framerate being captured to client requested framerate. May not run at full framerate if vsync is enabled and display refreshrate does not match requested framerate. Could cause lag on some clients if disabled.",
|
||||
"locale": "Locale",
|
||||
"locale_desc": "The locale used for Apollo's user interface.",
|
||||
"log_level": "Log Level",
|
||||
|
||||
@@ -278,6 +278,8 @@
|
||||
"lan_encryption_mode_1": "为支持的客户端启用",
|
||||
"lan_encryption_mode_2": "强制所有客户端使用",
|
||||
"lan_encryption_mode_desc": "这将决定在本地网络上进行流媒体传输时何时使用加密。加密会降低流媒体性能,尤其是在功能较弱的主机和客户端上。",
|
||||
"limit_framerate": "限制捕获帧率",
|
||||
"limit_framerate_desc": "将捕获帧率限制到客户端请求的帧率。当启用垂直同步且显示器刷新率与客户端刷新率不匹配时可能会跑不满请求的帧率。若禁用,可能会在某些客户端上导致延迟。",
|
||||
"locale": "本地化",
|
||||
"locale_desc": "用于 Apollo 用户界面的本地化设置。",
|
||||
"log_level": "日志级别",
|
||||
|
||||
Reference in New Issue
Block a user