mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 09:10:30 +08:00
don't restart streamer with the same params
This commit is contained in:
parent
99f994c866
commit
00bf4a2ab1
@ -206,13 +206,15 @@ class KvmdServer(HttpServer): # pylint: disable=too-many-arguments,too-many-ins
|
|||||||
|
|
||||||
@exposed_http("POST", "/streamer/set_params")
|
@exposed_http("POST", "/streamer/set_params")
|
||||||
async def __streamer_set_params_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
async def __streamer_set_params_handler(self, request: aiohttp.web.Request) -> aiohttp.web.Response:
|
||||||
|
current_params = self.__streamer.get_params()
|
||||||
for (name, validator) in [
|
for (name, validator) in [
|
||||||
("quality", valid_stream_quality),
|
("quality", valid_stream_quality),
|
||||||
("desired_fps", valid_stream_fps),
|
("desired_fps", valid_stream_fps),
|
||||||
]:
|
]:
|
||||||
value = request.query.get(name)
|
if (value := request.query.get(name)):
|
||||||
if value:
|
value = validator(value)
|
||||||
self.__new_streamer_params[name] = validator(value)
|
if current_params[name] != value:
|
||||||
|
self.__new_streamer_params[name] = value
|
||||||
await self.__streamer_notifier.notify()
|
await self.__streamer_notifier.notify()
|
||||||
return make_json_response()
|
return make_json_response()
|
||||||
|
|
||||||
|
|||||||
@ -173,6 +173,9 @@ class Streamer: # pylint: disable=too-many-instance-attributes
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def get_params(self) -> Dict:
|
||||||
|
return dict(self.__params)
|
||||||
|
|
||||||
async def get_state(self) -> Dict:
|
async def get_state(self) -> Dict:
|
||||||
state = None
|
state = None
|
||||||
if self.__streamer_task:
|
if self.__streamer_task:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user