mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-03-10 02:29:19 +03:00
Fix preview retrieval to handle missing previews gracefully
This commit is contained in:
parent
4e71a835cb
commit
2e0b2f4f36
@ -1531,25 +1531,25 @@ def preview_gif(
|
|||||||
):
|
):
|
||||||
if datetime.fromtimestamp(start_ts) < datetime.now().replace(minute=0, second=0):
|
if datetime.fromtimestamp(start_ts) < datetime.now().replace(minute=0, second=0):
|
||||||
# has preview mp4
|
# has preview mp4
|
||||||
preview: Previews = (
|
try:
|
||||||
Previews.select(
|
preview: Previews = (
|
||||||
Previews.camera,
|
Previews.select(
|
||||||
Previews.path,
|
Previews.camera,
|
||||||
Previews.duration,
|
Previews.path,
|
||||||
Previews.start_time,
|
Previews.duration,
|
||||||
Previews.end_time,
|
Previews.start_time,
|
||||||
|
Previews.end_time,
|
||||||
|
)
|
||||||
|
.where(
|
||||||
|
Previews.start_time.between(start_ts, end_ts)
|
||||||
|
| Previews.end_time.between(start_ts, end_ts)
|
||||||
|
| ((start_ts > Previews.start_time) & (end_ts < Previews.end_time))
|
||||||
|
)
|
||||||
|
.where(Previews.camera == camera_name)
|
||||||
|
.limit(1)
|
||||||
|
.get()
|
||||||
)
|
)
|
||||||
.where(
|
except DoesNotExist:
|
||||||
Previews.start_time.between(start_ts, end_ts)
|
|
||||||
| Previews.end_time.between(start_ts, end_ts)
|
|
||||||
| ((start_ts > Previews.start_time) & (end_ts < Previews.end_time))
|
|
||||||
)
|
|
||||||
.where(Previews.camera == camera_name)
|
|
||||||
.limit(1)
|
|
||||||
.get()
|
|
||||||
)
|
|
||||||
|
|
||||||
if not preview:
|
|
||||||
return JSONResponse(
|
return JSONResponse(
|
||||||
content={"success": False, "message": "Preview not found"},
|
content={"success": False, "message": "Preview not found"},
|
||||||
status_code=404,
|
status_code=404,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user