frigate: [Support]: Go2rtc - error="wrong response on DESCRIBE"
Describe the problem you are having
I have updated Frigate and am attempting to use Go2rtc.
One of my cameras works fine (a Hikvison), however, the other two do not.
Cameras are working fine, and recording, detecting etc…
This is the error: 2023-04-11 09:24:23.103873100 09:24:23.103 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error=“wrong response on DESCRIBE” url=rtsp://u321cctv:xxx@10.10.10.240:554/stream1 2023-04-11 09:24:48.324691399 09:24:48.324 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error=“wrong response on DESCRIBE” url=rtsp://u321cctv:xxx@10.10.10.241:554/stream1
Version
0.13.0-6986949
Frigate config file
# yaml-language-server: $schema=http://battersea:5000/api/config/schema
mqtt:
host: mosquitto
user: u32-1
password:
detectors:
coral:
type: edgetpu
device: usb
birdseye:
enabled: True
mode: continuous
width: 1920
height: 1080
quality: 1
ffmpeg:
# input_args:
# - -avoid_negative_ts
# - make_zero
hwaccel_args: -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format yuv420p
output_args:
record: -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac
#logger:
# Optional: default log level (default: shown below)
#default: debug
# Optional: module by module log level configuration
#logs:
# frigate.mqtt: error
go2rtc:
streams:
West:
- rtsp://u321cctv:xxx@10.10.10.242:554/Streaming/Channels/101/
East:
- rtsp://u321cctv:xxx@10.10.10.240:554/stream1
South:
- rtsp://u321cctv:xxx@10.10.10.241:554/stream1
cameras:
East: # <------ Name the camera
ui:
order: 0
ffmpeg:
inputs:
- path: rtsp://u321cctv:xxx@10.10.10.240:554/stream1 # <----- Update for your camera
roles:
- record
- path: rtsp://u321cctv:xxx@10.10.10.240:554/stream2 # <----- Update for your camera
roles:
- detect
detect:
width: 640 # <---- update for your camera's resolution
height: 360 # <---- update for your camera's resolution
fps: 5
stationary:
interval: 5
threshold: 50
motion:
mask:
# Cable and timestamp
- 0,175,224,30,228,0,0,0
# - 2560,0,2560,141,2051,61,1533,62,639,258,650,319,552,376,178,655,0,801,0,0
# Optional: The threshold passed to cv2.threshold to determine if a pixel is different enough to be counted as motion. (default: shown below)
# Increasing this value will make motion detection less sensitive and decreasing it will make motion detection more sensitive.
# The value should be between 1 and 255. 25 default
threshold: 25
# Optional: Minimum size in pixels in the resized motion image that counts as motion (default: 30)
# Increasing this value will prevent smaller areas of motion from being detected. Decreasing will
# make motion detection more sensitive to smaller moving objects. 30 default
# As a rule of thumb:
# - 15 - high sensitivity
# - 30 - medium sensitivity
# - 50 - low sensitivity
contour_area: 15
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging the motion delta across multiple frames (default: shown below)
# Higher values mean the current frame impacts the delta a lot, and a single raindrop may register as motion.
# Too low and a fast moving person wont be detected as motion.
delta_alpha: 0.2
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging frames to determine the background (default: shown below)
# Higher values mean the current frame impacts the average a lot, and a new object will be averaged into the background faster.
# Low values will cause things like moving shadows to be detected as motion for longer.
# https://www.geeksforgeeks.org/background-subtraction-in-an-image-using-concept-of-running-average/
frame_alpha: 0.2
# Optional: Height of the resized motion frame (default: 50)
# This operates as an efficient blur alternative. Higher values will result in more granular motion detection at the expense
# of higher CPU usage. Lower values result in less CPU, but small changes may not register as motion.
frame_height: 50
improve_contrast: True
objects:
track:
- person
- dog
- cat
- sheep
- cow
- horse
- umbrella
filters:
person:
mask:
- 0,0,380,0,214,36,0,179
snapshots:
enabled: True
bounding_box: True
height: 360
retain:
default: 14
required_zones:
- doorbell_east
- all_east
record:
enabled: True
retain:
mode: all
days: 7
events:
retain:
default: 14
pre_capture: 5
post_capture: 120
required_zones:
- doorbell_east
- all_east
zones:
doorbell_east:
coordinates: 640,360,0,360,0,319,367,137,542,89,640,103
objects:
- person
- umbrella
all_east:
coordinates: 640,360,640,0,0,0,0,360
objects:
- dog
- cat
- sheep
- cow
- horse
South: # <------ Name the camera
ui:
order: 1
ffmpeg:
inputs:
- path: rtsp://u321cctv:xxx@10.10.10.241:554/stream1 # <----- Update for your camera
roles:
- record
- path: rtsp://u321cctv:xxx@10.10.10.241:554/stream2 # <----- Update for your camera
roles:
- detect
detect:
width: 640 # <---- update for your camera's resolution
height: 360 # <---- update for your camera's resolution
fps: 5
stationary:
interval: 5
threshold: 50
motion:
mask:
- 0,21,231,21,228,0,0,0
# - 2560,233,2560,0,1966,0
# - 2560,1440,2560,633,2097,1440
# - 789,0,791,59,0,61,0,0
# Optional: The threshold passed to cv2.threshold to determine if a pixel is different enough to be counted as motion. (default: shown below)
# Increasing this value will make motion detection less sensitive and decreasing it will make motion detection more sensitive.
# The value should be between 1 and 255. 25 default
threshold: 25
# Optional: Minimum size in pixels in the resized motion image that counts as motion (default: 30)
# Increasing this value will prevent smaller areas of motion from being detected. Decreasing will
# make motion detection more sensitive to smaller moving objects. 30 default
# As a rule of thumb:
# - 15 - high sensitivity
# - 30 - medium sensitivity
# - 50 - low sensitivity
contour_area: 15
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging the motion delta across multiple frames (default: shown below)
# Higher values mean the current frame impacts the delta a lot, and a single raindrop may register as motion.
# Too low and a fast moving person wont be detected as motion.
delta_alpha: 0.2
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging frames to determine the background (default: shown below)
# Higher values mean the current frame impacts the average a lot, and a new object will be averaged into the background faster.
# Low values will cause things like moving shadows to be detected as motion for longer.
# https://www.geeksforgeeks.org/background-subtraction-in-an-image-using-concept-of-running-average/
frame_alpha: 0.2
# Optional: Height of the resized motion frame (default: 50)
# This operates as an efficient blur alternative. Higher values will result in more granular motion detection at the expense
# of higher CPU usage. Lower values result in less CPU, but small changes may not register as motion.
frame_height: 50
improve_contrast: True
objects:
track:
- person
- dog
- cat
- sheep
- cow
- horse
- umbrella
snapshots:
enabled: True
bounding_box: True
height: 360
retain:
default: 14
required_zones:
- doorbell_south
- all_south
record:
enabled: True
retain:
mode: all
days: 7
events:
retain:
default: 14
pre_capture: 5
post_capture: 120
required_zones:
- doorbell_south
- all_south
zones:
doorbell_south:
coordinates: 0,360,195,360,83,130,297,47,485,71,491,50,336,27,260,22,83,81,44,115,0,136
objects:
- person
- umbrella
all_south:
coordinates: 640,360,640,0,0,0,0,360
objects:
- dog
- cat
- sheep
- cow
- horse
West: # <------ Name the camera
ui:
order: 2
ffmpeg:
inputs:
- path: rtsp://u321cctv:xxx@10.10.10.242:554/Streaming/Channels/101/ # <----- Update for your camera
roles:
- record
- path: rtsp://u321cctv:xxx@10.10.10.242:554/Streaming/Channels/103/ # <----- Update for your camera
roles:
- detect
#rtmp:
# enabled: True # <-- RTMP should be disabled if your stream is not H264
detect:
width: 1280 # <---- update for your camera's resolution
height: 720 # <---- update for your camera's resolution
fps: 6
stationary:
interval: 5
threshold: 50
max_frames:
objects:
car: 750
motion:
mask:
# Timestamp
- 30,24,335,24,335,2,30,2
# Cable
- 957,720,1020,720,932,58,902,63
#- 59,94,672,95,672,38,57,39
# Optional: The threshold passed to cv2.threshold to determine if a pixel is different enough to be counted as motion. (default: shown below)
# Increasing this value will make motion detection less sensitive and decreasing it will make motion detection more sensitive.
# The value should be between 1 and 255. 25 default
threshold: 25
# Optional: Minimum size in pixels in the resized motion image that counts as motion (default: 30)
# Increasing this value will prevent smaller areas of motion from being detected. Decreasing will
# make motion detection more sensitive to smaller moving objects. 30 default
# As a rule of thumb:
# - 15 - high sensitivity
# - 30 - medium sensitivity
# - 50 - low sensitivity
contour_area: 15
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging the motion delta across multiple frames (default: shown below)
# Higher values mean the current frame impacts the delta a lot, and a single raindrop may register as motion.
# Too low and a fast moving person wont be detected as motion.
delta_alpha: 0.2
# Optional: Alpha value passed to cv2.accumulateWeighted when averaging frames to determine the background (default: shown below)
# Higher values mean the current frame impacts the average a lot, and a new object will be averaged into the background faster.
# Low values will cause things like moving shadows to be detected as motion for longer.
# https://www.geeksforgeeks.org/background-subtraction-in-an-image-using-concept-of-running-average/
frame_alpha: 0.2
# Optional: Height of the resized motion frame (default: 50)
# This operates as an efficient blur alternative. Higher values will result in more granular motion detection at the expense
# of higher CPU usage. Lower values result in less CPU, but small changes may not register as motion.
frame_height: 50
improve_contrast: True
objects:
track:
- person
- car
- dog
- cat
- sheep
- cow
- horse
- umbrella
filters:
person:
min_area: 375
mask:
- 0,0,743,0,1280,0,1280,155,915,114,348,122,0,204
car:
min_area: 1000
snapshots:
enabled: True
bounding_box: True
height: 720
retain:
default: 14
required_zones:
- person_west
- car_west
- all_west
record:
enabled: True
retain:
mode: all
days: 7
events:
retain:
default: 14
pre_capture: 5
post_capture: 120
required_zones:
- person_west
- car_west
- all_west
zones:
person_west:
coordinates: 0,720,1280,720,1280,311,1176,225,147,395,147,503,0,549
objects:
- person
- umbrella
car_west:
coordinates: 170,664,848,607,1280,487,1280,368,720,471,173,526
objects:
- car
all_west:
coordinates: 1280,720,1280,0,0,0,0,720
objects:
- dog
- cat
- sheep
- horse
- cow
Relevant log output
2023-04-11 09:23:52.603778701 [INFO] Preparing go2rtc config...
2023-04-11 09:23:52.804503528 [INFO] Starting go2rtc...
2023-04-11 09:23:52.916525507 09:23:52.916 INF go2rtc version 1.2.0 linux/amd64
2023-04-11 09:23:52.916753002 09:23:52.916 INF [api] listen addr=:1984
2023-04-11 09:23:52.917054768 09:23:52.916 INF [rtsp] listen addr=:8554
2023-04-11 09:23:52.917298121 09:23:52.917 INF [srtp] listen addr=:8443
2023-04-11 09:23:52.917511341 09:23:52.917 INF [webrtc] listen addr=:8555
2023-04-11 09:24:02.608656196 [INFO] Starting go2rtc healthcheck service...
2023-04-11 09:24:22.499020170 09:24:22.498 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error="wrong response on DESCRIBE" url=rtsp://u321cctv:xxx@10.10.10.240:554/stream1
2023-04-11 09:24:23.103873100 09:24:23.103 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error="wrong response on DESCRIBE" url=rtsp://u321cctv:xxx@10.10.10.240:554/stream1
2023-04-11 09:24:48.324691399 09:24:48.324 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error="wrong response on DESCRIBE" url=rtsp://u321cctv:xxx@10.10.10.241:554/stream1
2023-04-11 09:24:48.929638151 09:24:48.929 ERR github.com/AlexxIT/go2rtc/cmd/streams/producer.go:53 > error="wrong response on DESCRIBE" url=rtsp://u321cctv:xxx@10.10.10.241:554/stream1
FFprobe output from your camera
Frigate is unable to get FFprobe output for the C320WS cameras
Frigate stats
{"East":{"camera_fps":5.1,"capture_pid":302,"detection_enabled":1,"detection_fps":9.6,"ffmpeg_pid":313,"pid":297,"process_fps":5.1,"skipped_fps":0.0},"South":{"camera_fps":5.1,"capture_pid":305,"detection_enabled":1,"detection_fps":7.9,"ffmpeg_pid":309,"pid":299,"process_fps":5.1,"skipped_fps":0.0},"West":{"camera_fps":6.1,"capture_pid":308,"detection_enabled":1,"detection_fps":16.6,"ffmpeg_pid":315,"pid":301,"process_fps":6.0,"skipped_fps":0.0},"cpu_usages":{"%Cpu(s):":{"cpu":"id,","mem":"0.3"},"1":{"cpu":"0.0","mem":"0.0"},"107":{"cpu":"7.6","mem":"3.5"},"108":{"cpu":"0.0","mem":"0.0"},"119":{"cpu":"0.0","mem":"0.1"},"122":{"cpu":"0.0","mem":"0.0"},"123":{"cpu":"0.3","mem":"0.1"},"124":{"cpu":"0.0","mem":"0.0"},"125":{"cpu":"0.0","mem":"0.0"},"15":{"cpu":"0.0","mem":"0.0"},"16":{"cpu":"0.0","mem":"0.0"},"1977":{"cpu":"0.0","mem":"0.0"},"2025":{"cpu":"0.0","mem":"0.0"},"2031":{"cpu":"0.0","mem":"0.0"},"2033":{"cpu":"0.0","mem":"0.0"},"2039":{"cpu":"0.7","mem":"0.0"},"24":{"cpu":"0.0","mem":"0.0"},"25":{"cpu":"0.0","mem":"0.0"},"26":{"cpu":"0.0","mem":"0.0"},"27":{"cpu":"0.0","mem":"0.0"},"28":{"cpu":"0.0","mem":"0.0"},"282":{"cpu":"0.0","mem":"1.4"},"288":{"cpu":"0.7","mem":"0.1"},"289":{"cpu":"32.9","mem":"1.7"},"29":{"cpu":"0.0","mem":"0.0"},"291":{"cpu":"23.9","mem":"1.6"},"297":{"cpu":"19.9","mem":"1.5"},"298":{"cpu":"0.0","mem":"0.4"},"299":{"cpu":"12.0","mem":"1.5"},"30":{"cpu":"0.0","mem":"0.0"},"300":{"cpu":"0.0","mem":"0.4"},"301":{"cpu":"48.8","mem":"1.6"},"302":{"cpu":"1.0","mem":"1.5"},"305":{"cpu":"1.3","mem":"1.5"},"308":{"cpu":"3.7","mem":"1.5"},"309":{"cpu":"6.0","mem":"0.3"},"31":{"cpu":"0.0","mem":"0.0"},"313":{"cpu":"5.6","mem":"0.3"},"315":{"cpu":"5.3","mem":"0.4"},"317":{"cpu":"0.0","mem":"0.4"},"319":{"cpu":"4.0","mem":"0.2"},"32":{"cpu":"0.0","mem":"0.0"},"322":{"cpu":"20.6","mem":"0.6"},"324":{"cpu":"3.7","mem":"0.2"},"325":{"cpu":"6.0","mem":"0.2"},"41":{"cpu":"0.0","mem":"0.0"},"42":{"cpu":"0.0","mem":"0.0"},"79":{"cpu":"0.0","mem":"0.0"},"81":{"cpu":"0.0","mem":"0.0"},"82":{"cpu":"0.0","mem":"0.0"},"88":{"cpu":"0.0","mem":"0.1"},"MiB":{"cpu":"6305.1","mem":"avail"},"PID":{"cpu":"%CPU","mem":"%MEM"},"Tasks:":{"cpu":"stopped,","mem":"0"},"top":{"cpu":"average:","mem":"2.78,"}},"detection_fps":34.1,"detectors":{"coral":{"detection_start":0.0,"inference_speed":11.44,"pid":289}},"gpu_usages":{"intel-vaapi":{"gpu":"2.18 %","mem":"- %"}},"service":{"last_updated":1681195266,"latest_version":"0.12.0","storage":{"/dev/shm":{"free":264.4,"mount_type":"tmpfs","total":268.4,"used":4.0},"/media/frigate/clips":{"free":910597.0,"mount_type":"exfat","total":4000768.3,"used":3090171.3},"/media/frigate/recordings":{"free":910597.0,"mount_type":"exfat","total":4000768.3,"used":3090171.3},"/tmp/cache":{"free":1988.9,"mount_type":"tmpfs","total":2000.0,"used":11.1}},"temperatures":{},"uptime":1033,"version":"0.13.0-6986949"}}
Operating system
Other Linux
Install method
Docker Compose
Coral version
USB
Network connection
Wired
Camera make and model
TP-Link C320WS
Any other information that may be helpful
No response
About this issue
- Original URL
- State: closed
- Created a year ago
- Comments: 15 (2 by maintainers)
Hi there, I just had exactly the same issues with my Tplink Tapo C200. The problem was that the camera does only allow two concurrent streams from any frontend. So if you have frigate configured to use go2rtc and rtsp over ffmpg, these are already the 2 streams available.
You have to close all other streams, e.g. Home Assistant, offical App, etc…
Maybe make an issue on go2rtc repo, but it seems those cameras are just not compatible with go2rtc as it is right now from what I can tell