question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[Camera Support]: Wrong camera randomly showing up

See original GitHub issue

Describe the problem you are having

The wrong camera is randomly appearing in place of a different camera. Please see attached video to help explain what’s going on.

Version

0.11.0-3846a13

Frigate config file

mqtt:
  host: 192.168.1.40
  user: ''
  password: ''


ui:
  use_experimental: true
  
cameras:
  frontdoor:
    ffmpeg:
      inputs:
          #FRONT DOOR CAMERA SUB STREAM
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXX_channel=1_stream=1.sdp?real_stream
          roles:
            - detect
          #FRONT DOOR CAMERA MAIN STREAM FOR HQ RECORDINGS
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXX_channel=1_stream=0.sdp?real_stream
          roles:
            - record
    detect:
      width: 640
      height: 480
      fps: 5


    snapshots:
      # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
      # This value can be set via MQTT and will be updated in startup based on retained value
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: original size)
      # height: 270
      quality: 100
      height: 500
      # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
      required_zones: []
       # - All_Frontdoor
       # - Upper_Entrance
      # Optional: Camera override for retention settings (default: global values)
      retain:
        # Required: Default retention days (default: shown below)
        default: 10
        # Optional: Per object retention days
        objects:
          person: 15
          car: 15


    record:
      # Optional: Enable recording (default: shown below)
      enabled: True
      # Optional: Retention settings for recording
      retain:
        # Optional: Number of days to retain recordings regardless of events (default: shown below)
        # NOTE: This should be set to 0 and retention should be defined in events section below
        #       if you only want to retain recordings of events.
        
        days: 0  #IF WANTING 24/7 RECORDING, CHANGE RSYNC STUFF!!!
        
        # Optional: Mode for retention. Available options are: all, motion, and active_objects
        #   all - save all recording segments regardless of activity
        #   motion - save all recordings segments with any detected motion
        #   active_objects - save all recording segments with active/moving objects
        # NOTE: this mode only applies when the days setting above is greater than 0
        mode: all
      events:
        # Optional: Maximum length of time to retain video during long events. (default: shown below)
        # NOTE: If an object is being tracked for longer than this amount of time, the retained recordings
        # Optional: Number of seconds before the event to include (default: shown below)
        pre_capture: 3
        # Optional: Number of seconds after the event to include (default: shown below)
        post_capture: 12
        # Optional: Objects to save recordings for. (default: all tracked objects)
        objects:
          - person
          - car
        # Optional: Restrict recordings to objects that entered any of the listed zones (default: no required zones)
        required_zones: []
        #  - All_Frontdoor
        #  - Upper_Entrance
        # Optional: Retention settings for recordings of events
        retain:
          # Required: Default retention days (default: shown below)
          default: 10
          # Optional: Per object retention days
          objects:
            person: 15
            car: 15
    #zones:
      #All_Frontdoor:
      #  coordinates: 0,480,640,480,640,451,640,0,235,54,200,94,117,148,0,234
      #  objects:
      #    - person
      #Upper_Entrance:
      #  coordinates: 193,119,118,160,168,173,242,168,392,160,469,21,223,60 #Entrance to driveway
      #  objects:
      #    - car
    motion:
      mask:    
        - 0,0,164,0,409,0,424,21,252,55,208,93,125,141,114,184,0,256
    objects:
      filters:
        person:
          mask:
            - 0,0,164,0,409,0,424,21,252,55,208,93,125,141,114,184,0,256
        car:
          mask:
            - 0,0,164,0,409,0,424,21,252,55,208,93,125,141,114,184,0,256
    objects:
      # Optional: list of objects to track from labelmap.txt (default: shown below)
      track:
        - person
        - car
        
    # Optional: Configuration for the jpg snapshots published via MQTT
    mqtt:
      # Optional: Enable publishing snapshot via mqtt for camera (default: shown below)
      # NOTE: Only applies to publishing image data to MQTT via 'frigate/<camera_name>/<object_name>/snapshot'.
      # All other messages will still be published.
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: shown below)
      height: 500
      # Optional: jpeg encode quality (default: shown below)
      quality: 100
      # Optional: Restrict mqtt messages to objects that entered any of the listed zones (default: no required zones)
      required_zones: []












  patiodoor:
    ffmpeg:
      inputs:
          #PATIO DOOR CAMERA SUB STREAM
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXXX_channel=2_stream=1.sdp?real_stream
          roles:
            - detect
          #PATIO DOOR CAMERA MAIN STREAM FOR HQ RECORDINGS
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXXX_channel=2_stream=0.sdp?real_stream
          roles:
            - record
    detect:
      width: 640
      height: 480
      fps: 5


    snapshots:
      # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
      # This value can be set via MQTT and will be updated in startup based on retained value
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: original size)
      # height: 270
      quality: 100
      height: 500
      # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
      required_zones: []
      # Optional: Camera override for retention settings (default: global values)
      retain:
        # Required: Default retention days (default: shown below)
        default: 10
        # Optional: Per object retention days
        objects:
          person: 15


    record:
      # Optional: Enable recording (default: shown below)
      enabled: True
      # Optional: Retention settings for recording
      retain:
        # Optional: Number of days to retain recordings regardless of events (default: shown below)
        # NOTE: This should be set to 0 and retention should be defined in events section below
        #       if you only want to retain recordings of events.
        
        days: 0  #IF WANTING 24/7 RECORDING, CHANGE RSYNC STUFF!!!
        
        # Optional: Mode for retention. Available options are: all, motion, and active_objects
        #   all - save all recording segments regardless of activity
        #   motion - save all recordings segments with any detected motion
        #   active_objects - save all recording segments with active/moving objects
        # NOTE: this mode only applies when the days setting above is greater than 0
        mode: all
      events:
        # Optional: Maximum length of time to retain video during long events. (default: shown below)
        # NOTE: If an object is being tracked for longer than this amount of time, the retained recordings
        # Optional: Number of seconds before the event to include (default: shown below)
        pre_capture: 3
        # Optional: Number of seconds after the event to include (default: shown below)
        post_capture: 12
        # Optional: Objects to save recordings for. (default: all tracked objects)
        objects:
          - person
        # Optional: Restrict recordings to objects that entered any of the listed zones (default: no required zones)
        required_zones: []
        # Optional: Retention settings for recordings of events
        retain:
          # Required: Default retention days (default: shown below)
          default: 10
          # Optional: Per object retention days
          objects:
            person: 15

    motion:
      mask:    
        - 0,0,407,0,640,0,640,164,508,49,511,0,394,0,322,37,153,68,42,59,46,480,0,480
    objects:
      filters:
        person:
          mask:
            - 0,0,407,0,640,0,640,164,508,49,511,0,394,0,322,37,153,68,42,59,46,480,0,480


    # Optional: Configuration for the jpg snapshots published via MQTT
    mqtt:
      # Optional: Enable publishing snapshot via mqtt for camera (default: shown below)
      # NOTE: Only applies to publishing image data to MQTT via 'frigate/<camera_name>/<object_name>/snapshot'.
      # All other messages will still be published.
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: shown below)
      height: 500
      # Optional: jpeg encode quality (default: shown below)
      quality: 100
      # Optional: Restrict mqtt messages to objects that entered any of the listed zones (default: no required zones)
      required_zones: []












  side:
    ffmpeg:
      inputs:
          #SIDE CAMERA SUB STREAM
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXXX_channel=3_stream=1.sdp?real_stream
          roles:
            - detect
          #SIDE DOOR CAMERA MAIN STREAM FOR HQ RECORDINGS
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXX_channel=3_stream=0.sdp?real_stream
          roles:
            - record
    detect:
      width: 640
      height: 480
      fps: 5


    snapshots:
      # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
      # This value can be set via MQTT and will be updated in startup based on retained value
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: original size)
      # height: 270
      quality: 100
      height: 500
      # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
      required_zones: []
      # Optional: Camera override for retention settings (default: global values)
      retain:
        # Required: Default retention days (default: shown below)
        default: 10
        # Optional: Per object retention days
        objects:
          person: 15
          car: 15

    record:
      # Optional: Enable recording (default: shown below)
      enabled: True
      # Optional: Retention settings for recording
      retain:
        # Optional: Number of days to retain recordings regardless of events (default: shown below)
        # NOTE: This should be set to 0 and retention should be defined in events section below
        #       if you only want to retain recordings of events.
        
        days: 0  #IF WANTING 24/7 RECORDING, CHANGE RSYNC STUFF!!!
        
        # Optional: Mode for retention. Available options are: all, motion, and active_objects
        #   all - save all recording segments regardless of activity
        #   motion - save all recordings segments with any detected motion
        #   active_objects - save all recording segments with active/moving objects
        # NOTE: this mode only applies when the days setting above is greater than 0
        mode: all
      events:
        # Optional: Maximum length of time to retain video during long events. (default: shown below)
        # NOTE: If an object is being tracked for longer than this amount of time, the retained recordings
        # Optional: Number of seconds before the event to include (default: shown below)
        pre_capture: 3
        # Optional: Number of seconds after the event to include (default: shown below)
        post_capture: 12
        # Optional: Objects to save recordings for. (default: all tracked objects)
        objects:
          - person
          - car
        # Optional: Restrict recordings to objects that entered any of the listed zones (default: no required zones)
        required_zones: []
        # Optional: Retention settings for recordings of events
        retain:
          # Required: Default retention days (default: shown below)
          default: 10
          # Optional: Per object retention days
          objects:
            person: 15
            car: 15

    zones:
      Side:
        coordinates: 0,480,640,480,640,139,406,97,212,87,0,121
        objects:
          - person
      Lower_Entrance:
        coordinates: 640,323,640,162,482,124,373,100,185,96,186,131,197,191
        objects:
          - car
    motion:
      mask:    
        - 205,91,434,132,491,157,640,186,640,0,378,0,254,0,194,0,0,0,0,109
    objects:
      filters:
        person:
          mask:
            - 205,91,434,132,491,157,640,186,640,0,378,0,254,0,194,0,0,0,0,109
        car:
          mask:
            - 205,91,434,132,491,157,640,186,640,0,378,0,254,0,194,0,0,0,0,109
      track:
        - person
        - car
    # Optional: Configuration for the jpg snapshots published via MQTT
    mqtt:
      # Optional: Enable publishing snapshot via mqtt for camera (default: shown below)
      # NOTE: Only applies to publishing image data to MQTT via 'frigate/<camera_name>/<object_name>/snapshot'.
      # All other messages will still be published.
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: shown below)
      height: 500
      # Optional: jpeg encode quality (default: shown below)
      quality: 100
      # Optional: Restrict mqtt messages to objects that entered any of the listed zones (default: no required zones)
      required_zones: []









  backstreet:
    ffmpeg:
      inputs:
          #BACK STREET CAMERA SUB STREAM
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXX_channel=4_stream=1.sdp?real_stream
          roles:
            - detect
          #BACK STREET CAMERA MAIN STREAM FOR HQ RECORDINGS
        - path: rtsp://192.168.1.15:554/user=admin_password=XXXXXX_channel=4_stream=0.sdp?real_stream
          roles:
            - record
    detect:
      width: 640
      height: 480
      fps: 5


    snapshots:
      # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
      # This value can be set via MQTT and will be updated in startup based on retained value
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: original size)
      # height: 270
      quality: 100
      height: 500
      # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
      required_zones: []
      # Optional: Camera override for retention settings (default: global values)
      retain:
        # Required: Default retention days (default: shown below)
        default: 10
        # Optional: Per object retention days
        objects:
          person: 15


    record:
      # Optional: Enable recording (default: shown below)
      enabled: True
      # Optional: Retention settings for recording
      retain:
        # Optional: Number of days to retain recordings regardless of events (default: shown below)
        # NOTE: This should be set to 0 and retention should be defined in events section below
        #       if you only want to retain recordings of events.
        
        days: 0  #IF WANTING 24/7 RECORDING, CHANGE RSYNC STUFF!!!
        
        # Optional: Mode for retention. Available options are: all, motion, and active_objects
        #   all - save all recording segments regardless of activity
        #   motion - save all recordings segments with any detected motion
        #   active_objects - save all recording segments with active/moving objects
        # NOTE: this mode only applies when the days setting above is greater than 0
        mode: all
      events:
        # Optional: Maximum length of time to retain video during long events. (default: shown below)
        # NOTE: If an object is being tracked for longer than this amount of time, the retained recordings
        # Optional: Number of seconds before the event to include (default: shown below)
        pre_capture: 3
        # Optional: Number of seconds after the event to include (default: shown below)
        post_capture: 12
        # Optional: Objects to save recordings for. (default: all tracked objects)
        objects:
          - person
        # Optional: Restrict recordings to objects that entered any of the listed zones (default: no required zones)
        required_zones: []
        # Optional: Retention settings for recordings of events
        retain:
          # Required: Default retention days (default: shown below)
          default: 10
          # Optional: Per object retention days
          objects:
            person: 15
            car: 15


    motion:
      mask:    
        - 0,80,0,0,0,0,640,0,640,303,640,480,549,480,584,127,525,0,0,0,0,0,23,0,21,260,37,480,0,480
    objects:
      filters:
        person:
          mask:
            - 0,80,0,0,0,0,640,0,640,303,640,480,549,480,584,127,525,0,0,0,0,0,23,0,21,260,37,480,0,480


    # Optional: Configuration for the jpg snapshots published via MQTT
    mqtt:
      # Optional: Enable publishing snapshot via mqtt for camera (default: shown below)
      # NOTE: Only applies to publishing image data to MQTT via 'frigate/<camera_name>/<object_name>/snapshot'.
      # All other messages will still be published.
      enabled: True
      # Optional: print a timestamp on the snapshots (default: shown below)
      timestamp: False
      # Optional: draw bounding box on the snapshots (default: shown below)
      bounding_box: False
      # Optional: crop the snapshot (default: shown below)
      crop: True
      # Optional: height to resize the snapshot to (default: shown below)
      height: 500
      # Optional: jpeg encode quality (default: shown below)
      quality: 100
      # Optional: Restrict mqtt messages to objects that entered any of the listed zones (default: no required zones)
      required_zones: []






















detectors:
  # Required: name of the detector
  coral:
    # Required: type of the detector
    # Valid values are 'edgetpu' (requires device property below) and 'cpu'.
    type: edgetpu
    # Optional: device name as defined here: https://coral.ai/docs/edgetpu/multiple-edgetpu/#using-the-tensorflow-lite-python-api
    device: usb
    
# Optional: birdseye configuration
birdseye:
  # Optional: Enable birdseye view (default: shown below)
  enabled: False
  # 1 is the highest quality, and 31 is the lowest. Lower quality feeds utilize less CPU resources.
  quality: 12
  # Optional: Mode of the view. Available options are: objects, motion, and continuous
  #   objects - cameras are included if they have had a tracked object within the last 30 seconds
  #   motion - cameras are included if motion was detected in the last 30 seconds
  #   continuous - all cameras are included always
  mode: continuous
  


detect:
  # Optional: Number of frames without a detection before frigate considers an object to be gone. (default: 5x the frame rate)
  max_disappeared: 45
  stationary:
    interval: 0
    threshold: 50
    max_frames:
      # Optional: Default for all object types (default: not set, track forever)
      default: 3000
      # Optional: Object specific values
      objects:
        car: 100

snapshots:
  # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
  # This value can be set via MQTT and will be updated in startup based on retained value
  enabled: True
  # Optional: print a timestamp on the snapshots (default: shown below)
  timestamp: False
  # Optional: draw bounding box on the snapshots (default: shown below)
  bounding_box: False
  # Optional: crop the snapshot (default: shown below)
  crop: False
  # Optional: height to resize the snapshot to (default: original size)
  # height: 270
  quality: 100
  height: 500
  # Optional: Restrict snapshots to objects that entered any of the listed zones (default: no required zones)
  required_zones: []
  # Optional: Camera override for retention settings (default: global values)
  retain:
    # Required: Default retention days (default: shown below)
    default: 10
    # Optional: Per object retention days
    objects:
      person: 15







# Optional: RTMP configuration
# NOTE: Can be overridden at the camera level
rtmp:
  # Optional: Enable the RTMP stream (default: True)
  enabled: False

Relevant log output

[2022-10-02 10:37:34] frigate.app                    INFO    : Starting Frigate (0.11.0-3846a13)

[2022-10-02 10:37:34] frigate.app                    INFO    : Creating directory: /tmp/cache

Starting migrations

[2022-10-02 10:37:34] peewee_migrate                 INFO    : Starting migrations

There is nothing to migrate

[2022-10-02 10:37:35] peewee_migrate                 INFO    : There is nothing to migrate

[2022-10-02 10:37:37] frigate.app                    INFO    : Output process started: 216

[2022-10-02 10:37:37] detector.coral                 INFO    : Starting detection process: 215

[2022-10-02 10:37:37] frigate.edgetpu                INFO    : Attempting to load TPU as usb

[2022-10-02 10:37:37] frigate.mqtt                   INFO    : Turning off detection for frontdoor via mqtt

[2022-10-02 10:37:37] frigate.app                    INFO    : Camera processor started for frontdoor: 220

[2022-10-02 10:37:37] ws4py                          INFO    : Using epoll

[2022-10-02 10:37:37] frigate.app                    INFO    : Camera processor started for patiodoor: 223

[2022-10-02 10:37:37] frigate.app                    INFO    : Camera processor started for side: 225

[2022-10-02 10:37:37] frigate.app                    INFO    : Camera processor started for backstreet: 228

[2022-10-02 10:37:37] frigate.app                    INFO    : Capture process started for frontdoor: 229

[2022-10-02 10:37:37] frigate.app                    INFO    : Capture process started for patiodoor: 230

[2022-10-02 10:37:37] frigate.app                    INFO    : Capture process started for side: 235

[2022-10-02 10:37:37] frigate.app                    INFO    : Capture process started for backstreet: 238

[2022-10-02 10:37:38] ws4py                          INFO    : Using epoll

[2022-10-02 10:37:40] frigate.edgetpu                INFO    : TPU found

[2022-10-02 10:37:42] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:46726]

[2022-10-02 10:37:56] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:46726]

[2022-10-02 10:37:57] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:40976]

[2022-10-02 10:37:58] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:40976]

[2022-10-02 10:37:58] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:40980]

[2022-10-02 10:38:03] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:40980]

[2022-10-02 10:38:03] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:36434]

[2022-10-02 10:38:07] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:36434]

[2022-10-02 10:38:12] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:36444]

[2022-10-02 10:38:17] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:36444]

[2022-10-02 10:38:26] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:42596]

[2022-10-02 10:38:33] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:42596]

[2022-10-02 10:38:34] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:57504]

[2022-10-02 10:38:41] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:57504]

[2022-10-02 10:38:43] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:59862]

[2022-10-02 10:40:00] ws4py                          ERROR   : Failed to receive data

Traceback (most recent call last):

  File "/usr/local/lib/python3.9/dist-packages/ws4py/websocket.py", line 394, in once

    b = self.sock.recv(self.reading_buffer_size)

ConnectionResetError: [Errno 104] Connection reset by peer

[2022-10-02 10:40:00] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:59862]

[2022-10-02 10:40:03] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:5002 | Remote => 127.0.0.1:56086]

[2022-10-02 10:40:03] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:49126]

[2022-10-02 10:40:36] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:5002 | Remote => 127.0.0.1:56086]

[2022-10-02 10:40:36] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:8082 | Remote => 127.0.0.1:49126]

[cont-finish.d] executing container finish scripts...

[cont-finish.d] done.

[s6-finish] waiting for services.

[s6-finish] sending all processes the TERM signal.

[s6-finish] sending all processes the KILL signal and exiting.

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.

[s6-init] ensuring user provided files have correct perms...exited 0.

[fix-attrs.d] applying ownership & permissions fixes...

[fix-attrs.d] done.

[cont-init.d] executing container initialization scripts...

[cont-init.d] done.

[services.d] starting services

[services.d] done.

[2022-10-02 10:42:07] frigate.app                    INFO    : Starting Frigate (0.11.0-3846a13)

Starting migrations

[2022-10-02 10:42:08] peewee_migrate                 INFO    : Starting migrations

There is nothing to migrate

[2022-10-02 10:42:08] peewee_migrate                 INFO    : There is nothing to migrate

[2022-10-02 10:42:08] frigate.app                    INFO    : Output process started: 218

[2022-10-02 10:42:08] frigate.mqtt                   INFO    : Turning off detection for frontdoor via mqtt

[2022-10-02 10:42:08] ws4py                          INFO    : Using epoll

[2022-10-02 10:42:08] frigate.app                    INFO    : Camera processor started for frontdoor: 223

[2022-10-02 10:42:08] frigate.app                    INFO    : Camera processor started for patiodoor: 224

[2022-10-02 10:42:08] frigate.app                    INFO    : Camera processor started for side: 225

[2022-10-02 10:42:09] frigate.app                    INFO    : Camera processor started for backstreet: 230

[2022-10-02 10:42:09] frigate.app                    INFO    : Capture process started for frontdoor: 232

[2022-10-02 10:42:09] frigate.app                    INFO    : Capture process started for patiodoor: 233

[2022-10-02 10:42:09] frigate.app                    INFO    : Capture process started for side: 236

[2022-10-02 10:42:09] frigate.app                    INFO    : Capture process started for backstreet: 243

[2022-10-02 10:42:09] ws4py                          INFO    : Using epoll

[2022-10-02 10:42:08] detector.coral                 INFO    : Starting detection process: 216

[2022-10-02 10:42:08] frigate.edgetpu                INFO    : Attempting to load TPU as usb

[2022-10-02 10:42:12] frigate.edgetpu                INFO    : TPU found

[2022-10-02 10:42:13] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:5002 | Remote => 127.0.0.1:36674]

[2022-10-02 10:42:15] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:15] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:15] ws4py                          INFO    : Terminating websocket [Local => 127.0.0.1:5002 | Remote => 127.0.0.1:36674]

[2022-10-02 10:42:15] ws4py                          INFO    : Managing websocket [Local => 127.0.0.1:5002 | Remote => 127.0.0.1:36686]

[2022-10-02 10:42:19] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:19] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:24] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:24] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:29] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:29] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:34] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:34] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:39] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:39] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:44] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:44] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:49] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:49] frigate.record                 ERROR   : could not convert string to float: ''

[2022-10-02 10:42:54] frigate.record                 ERROR   : Error occurred when attempting to maintain recording cache

[2022-10-02 10:42:54] frigate.record                 ERROR   : could not convert string to float: ''

FFprobe output from your camera

root@ca6a8e8250d5:/opt/frigate# ffprobe rtsp://192.168.1.15:554/user=admin_password=XXXXXX_channel=2_stream=1.sdp?real_stream
ffprobe version n5.1-2-g915ef932a3-20220731 Copyright (c) 2007-2022 the FFmpeg developers
  built with gcc 12.1.0 (crosstool-NG 1.25.0.55_3defb7b)
  configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=aarch64-ffbuild-linux-gnu- --arch=aarch64 --target-os=linux --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libpulse --enable-libvmaf --enable-libxcb --enable-xlib --enable-amf --enable-libaom --enable-libaribb24 --enable-avisynth --enable-libdav1d --disable-libdavs2 --disable-libfdk-aac --enable-ffnvcodec --enable-cuda-llvm --enable-frei0r --enable-libgme --enable-libass --enable-libbluray --enable-libjxl --enable-libmp3lame --enable-libopus --enable-mbedtls --enable-librist --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --disable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-librav1e --enable-librubberband --disable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libdrm --disable-vaapi --enable-libvidstab --enable-vulkan --enable-libshaderc --enable-libplacebo --enable-libx264 --enable-libx265 --disable-libxavs2 --enable-libxvid --enable-libzimg --enable-libzvbi --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags=-pie --extra-libs='-ldl -lgomp' --extra-version=20220731
  libavutil      57. 28.100 / 57. 28.100
  libavcodec     59. 37.100 / 59. 37.100
  libavformat    59. 27.100 / 59. 27.100
  libavdevice    59.  7.100 / 59.  7.100
  libavfilter     8. 44.100 /  8. 44.100
  libswscale      6.  7.100 /  6.  7.100
  libswresample   4.  7.100 /  4.  7.100
  libpostproc    56.  6.100 / 56.  6.100
Input #0, rtsp, from 'rtsp://192.168.1.15:554/user=admin_password=XXXXXX_channel=2_stream=1.sdp?real_stream':
  Metadata:
    title           : RTSP Session
  Duration: N/A, start: 0.000000, bitrate: N/A
  Stream #0:0: Video: h264 (High), yuv420p(progressive), 352x288, 25 tbr, 90k tbn
root@ca6a8e8250d5:/opt/frigate#

Frigate stats

backstreet	
camera_fps	5.1
capture_pid	241
detection_fps	0
pid	229
process_fps	5.1
skipped_fps	0
detection_fps	0.7
detectors	
coral	
detection_start	0
inference_speed	48.01
pid	215
frontdoor	
camera_fps	5
capture_pid	231
detection_fps	0
pid	219
process_fps	5
skipped_fps	0
patiodoor	
camera_fps	5
capture_pid	232
detection_fps	0.7
pid	222
process_fps	4.9
skipped_fps	0
service	
latest_version	"0.11.0"
storage	
/dev/shm	
free	63.3
mount_type	"tmpfs"
total	67.1
used	3.8
/media/frigate/clips	
free	1573519.6
mount_type	"ext4"
total	2594641.8
used	889245.8
/media/frigate/recordings	
free	1573519.6
mount_type	"ext4"
total	2594641.8
used	889245.8
/tmp/cache	
free	100988.8
mount_type	"overlay"
total	120248.5
used	13104.2
temperatures	{}
uptime	2809
version	"0.11.0-3846a13"
side	
camera_fps	5
capture_pid	236
detection_fps	0
pid	224
process_fps	5
skipped_fps	0

Operating system

Debian

Install method

Docker Compose

Coral version

USB

Network connection

Wired

Camera make and model

Annke 4 camera DVR

Any other information that may be helpful

https://user-images.githubusercontent.com/57415184/193449738-5a58734a-2d12-4b88-a641-c7adb8a12352.mov

Issue Analytics

  • State:closed
  • Created a year ago
  • Comments:6 (1 by maintainers)

github_iconTop GitHub Comments

2reactions
blakeblackshearcommented, Oct 2, 2022

This has been reported a couple times before. For example, https://github.com/blakeblackshear/frigate/issues/1530.

You could try adjusting your input args, but some users decided to connect directly to each camera instead. Frigate spawns a completely separate ffmpeg process for each camera and each camera has it’s own processing pipeline. There isn’t really any way those things could be getting mixed up that wouldn’t result in this issue appearing for all users. Somehow ffmpeg is receiving frame data from another camera from your DVR over the same connection.

1reaction
NickM-27commented, Oct 2, 2022

To be honest I’m inclined to say it’s not an issue with frigate directly given all feeds come from the same device. What did you do to verify if wasn’t a dvr issue?

We have many users pulling from an NVR / DVR and never had an issue like this reported before. (see #1530)

There’s nothing abnormal about your Frigate config so I don’t see how it wouldn’t have happened to others. Perhaps it has something to do with the DVR and how ffmpeg is requesting streams but I’m just guessing.

I think the only way to nail it down would be to use random mp4s (that wouldn’t be confused with the camera feed) as cameras and see if those ever get swapped.

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to Fix a Webcam That's Not Working - Lifewire
Webcam not working right? It could be system settings, hardware problems, or driver issues. Try our solution to fix the problem and get...
Read more >
6 Quick Tips to Fix Your Laptop Camera if it's not Working
Is your laptop camera not working? Learn how to get it working in our complete guide. Keep reading fot he best solutions.
Read more >
How to fix common camera problems on Windows 10
In this guide, we'll show you the steps to successfully ... Check the camera appears in the list to confirm that Windows 10...
Read more >
Video Loss on Security Cameras – Reasons & Quick Fixes
Find out possible reasons and quick solutions to video loss on security camera and how to avoid video loss on CCTV security cameras....
Read more >
How to troubleshoot an integrated (built-in) webcam in ...
1. Check Your Webcam’s Configuration in the Settings App. 2. Disable and Re-enable the Device in Device Manager. 3. Enable the Webcam in...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found