Fix bug with label not working

This commit is contained in:
Nick Mowen 2022-02-15 22:31:42 -07:00
parent 6422d13d64
commit d2b0fbaf93

View File

@ -367,30 +367,38 @@ def latest(camera_name, label):
resize_quality = request.args.get("quality", default=70, type=int) resize_quality = request.args.get("quality", default=70, type=int)
if camera_name in current_app.frigate_config.cameras: if camera_name in current_app.frigate_config.cameras:
event_query = ( if label is "any":
Event.select() event_query = (
.where(Event.camera == camera_name) Event.select()
.where(Event.has_snapshot == True) .where(Event.camera == camera_name)
.where(Event.end_time != None) .where(Event.has_snapshot == True)
) .where(Event.end_time != None)
.order_by(Event.start_time.desc())
)
else:
event_query = (
Event.select()
.where(Event.camera == camera_name)
.where(Event.label == label)
.where(Event.has_snapshot == True)
.where(Event.end_time != None)
.order_by(Event.start_time.desc())
)
if label != "any": try:
event_query.where(Event.label == label) event = event_query.get()
# read snapshot from disk
event = event_query.order_by(Event.start_time.desc()).get() frame = cv2.imread(
os.path.join(CLIPS_DIR, f"{event.camera}-{event.id}-clean.png")
if event is None: )
return "No event for {} was found".format(label), 404 except DoesNotExist:
event = None
# read snapshot from disk frame = np.zeros((720, 1280, 3), np.uint8)
frame = cv2.imread(
os.path.join(CLIPS_DIR, f"{event.camera}-{event.id}-clean.png")
)
crop = bool(request.args.get("crop", 0, type=int)) crop = bool(request.args.get("crop", 0, type=int))
if crop: if crop:
box_size = 300 box_size = 300
box = event.box box = event.box if event is not None else (0, 0, box_size, box_size)
region = calculate_region( region = calculate_region(
frame.shape, frame.shape,
box[0], box[0],