diff --git a/frigate/ptz/onvif.py b/frigate/ptz/onvif.py index be3a83bb7..d22bb04a3 100644 --- a/frigate/ptz/onvif.py +++ b/frigate/ptz/onvif.py @@ -542,14 +542,25 @@ class OnvifController: == ZoomingModeEnum.relative ) ): - move_request.Speed = { - "PanTilt": { - "x": speed, - "y": speed, - }, - "Zoom": {"x": speed}, - } - move_request.Translation.Zoom.x = zoom + try: + move_request.Speed = { + "PanTilt": { + "x": speed, + "y": speed, + }, + "Zoom": {"x": speed}, + } + move_request.Translation.Zoom.x = zoom + except (AttributeError, KeyError): + logger.warning( + f"{camera_name}: zoom translation not available, sending pan/tilt only" + ) + move_request.Speed = { + "PanTilt": { + "x": speed, + "y": speed, + }, + } else: move_request.Speed = { "PanTilt": {