mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-15 15:45:27 +03:00
Lazily calculate ffmpeg cmds
This commit is contained in:
parent
80eef448e5
commit
d3e2377d4e
@ -135,20 +135,18 @@ class CameraConfig(FrigateBaseModel):
|
|||||||
|
|
||||||
@property
|
@property
|
||||||
def ffmpeg_cmds(self) -> list[dict[str, list[str]]]:
|
def ffmpeg_cmds(self) -> list[dict[str, list[str]]]:
|
||||||
|
if not hasattr(self, "_ffmpeg_cmds"):
|
||||||
|
ffmpeg_cmds = []
|
||||||
|
for ffmpeg_input in self.ffmpeg.inputs:
|
||||||
|
ffmpeg_cmd = self._get_ffmpeg_cmd(ffmpeg_input)
|
||||||
|
if ffmpeg_cmd is None:
|
||||||
|
continue
|
||||||
|
|
||||||
|
ffmpeg_cmds.append({"roles": ffmpeg_input.roles, "cmd": ffmpeg_cmd})
|
||||||
|
self._ffmpeg_cmds = ffmpeg_cmds
|
||||||
|
|
||||||
return self._ffmpeg_cmds
|
return self._ffmpeg_cmds
|
||||||
|
|
||||||
def create_ffmpeg_cmds(self):
|
|
||||||
if "_ffmpeg_cmds" in self:
|
|
||||||
return
|
|
||||||
ffmpeg_cmds = []
|
|
||||||
for ffmpeg_input in self.ffmpeg.inputs:
|
|
||||||
ffmpeg_cmd = self._get_ffmpeg_cmd(ffmpeg_input)
|
|
||||||
if ffmpeg_cmd is None:
|
|
||||||
continue
|
|
||||||
|
|
||||||
ffmpeg_cmds.append({"roles": ffmpeg_input.roles, "cmd": ffmpeg_cmd})
|
|
||||||
self._ffmpeg_cmds = ffmpeg_cmds
|
|
||||||
|
|
||||||
def _get_ffmpeg_cmd(self, ffmpeg_input: CameraInput):
|
def _get_ffmpeg_cmd(self, ffmpeg_input: CameraInput):
|
||||||
ffmpeg_output_args = []
|
ffmpeg_output_args = []
|
||||||
if "detect" in ffmpeg_input.roles:
|
if "detect" in ffmpeg_input.roles:
|
||||||
|
|||||||
@ -559,8 +559,6 @@ class FrigateConfig(FrigateBaseModel):
|
|||||||
if not camera_config.live.stream_name:
|
if not camera_config.live.stream_name:
|
||||||
camera_config.live.stream_name = name
|
camera_config.live.stream_name = name
|
||||||
|
|
||||||
# generate the ffmpeg commands
|
|
||||||
camera_config.create_ffmpeg_cmds()
|
|
||||||
self.cameras[name] = camera_config
|
self.cameras[name] = camera_config
|
||||||
|
|
||||||
verify_config_roles(camera_config)
|
verify_config_roles(camera_config)
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user