blakeblackshear / frigate

NVR with realtime local object detection for IP cameras
https://frigate.video
MIT License
18.72k stars 1.7k forks source link

[Support]: New birdseye view cannot find suitable layout (dev branch) #7024

Closed YBonline closed 1 year ago

YBonline commented 1 year ago

Describe the problem you are having

I'm on the latest dev branch, with the new "dynamic" birdseye layout, which looks like a great feature, except I keep getting this error in my logs. The layout updates once a in a while successfully, then stays on that layout and keeps producing the error again. I have lots of panoramic cameras, so I'm guessing it has to do with that? Is there any debug mode for the new birdseye layout? 2023-07-03 19:39:02.696843621 [2023-07-03 19:39:02] frigate.output ERROR : Error finding appropriate birdseye layout Nothing else in the log seems to be relevant

Version

0.13.0-12D4A47

Frigate config file

ui:
  use_experimental: true

database:
  path: /db/frigate.db

birdseye:
  enabled: True
  restream: True
  mode: objects

mqtt:
  host: 10.10.22.11
  user: frigate
  password: frigatePASS1

detectors:
  coral:
    type: edgetpu

record:
  enabled: True
  retain:
    days: 14
    mode: motion
  events:
    pre_capture: 15
    post_capture: 15
    retain:
      default: 45
      mode: active_objects

objects:
  track:
    - person
    - bicycle
    - car
    - cat
    - dog
  filters:
    person:
      # Optional: minimum width*height of the bounding box for the detected object (default: 0)
      min_area: 500
      # Optional: maximum width*height of the bounding box for the detected object (default: 24000000)
      max_area: 100000
      # Optional: minimum width/height of the bounding box for the detected object (default: 0)
      min_ratio: 0.5
      # Optional: maximum width/height of the bounding box for the detected object (default: 24000000)
      max_ratio: 2.0
      # Optional: minimum score for the object to initiate tracking (default: shown below)
      min_score: 0.60
      # Optional: minimum decimal percentage for tracked object's computed score to be considered a true positive (default: shown below)
      threshold: 0.75

audio:
  enabled: true
  listen:
    - bark
    - scream
    - speech
    - yell
    - goat
    - chicken
    - skidding
    - tire_squeal
    - emergency_vehicle
    - smoke_detector
    - gunshot
    - glass
    - crack
    - shatter
    - smash
    - breaking

#ffmpeg:
#  input_args: -user_agent FFmpeg Frigate/0.12.0-e8d8cc4 -rtsp_transport tcp -timeout 5000000
#  global_args: -hide_banner -loglevel warning
#  output_args:
#    detect: -f rawvideo -pix_fmt yuv420p

snapshots:
  # Optional: Enable writing jpg snapshot to /media/frigate/clips (default: shown below)
  enabled: true
  # Optional: save a clean PNG copy of the snapshot image (default: shown below)
  clean_copy: 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: True
  # Optional: crop the snapshot (default: shown below)
  crop: True
  # Optional: height to resize the snapshot to (default: original size)
  #height: 175
  # 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: 180
    # Optional: Per object retention days

go2rtc:
  streams:
[...]

  webrtc:
    candidates:
      - 10.10.22.11:8555
      - stun:8555

cameras:
  warehouse_exterior_doorbell:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_doorbell
          roles:
            - record
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 2560
      height: 1920

  warehouse_exterior_nw:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_nw
          roles:
            - record
        #- path: rtsp://127.0.0.1:8554/warehouse_exterior_nw_sub
        #  roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    audio:
      enabled: False
    detect:
      width: 1920
      height: 1080

  warehouse_exterior_sw:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_sw
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_sw_sub
          roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    audio:
      enabled: False
    detect:
      width: 1920
      height: 1080

  warehouse_exterior_se:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_se
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_se_sub
          roles:
            - detect
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    audio:
      enabled: False
    detect:
      width: 480
      height: 360
#    detect:
#      width: 2592
#      height: 1944

  warehouse_exterior_front:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_exterior_front_sub
          roles:
            - record
        #- path: rtsp://127.0.0.1:8554/warehouse_exterior_front_sub
        #  roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 1536
      height: 576
    #detect:
    #  width: 4608
    #  height: 1728

  warehouse_workbench:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_workbench
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/warehouse_workbench_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    #detect:
    #  width: 2560
    #  height: 1920
    detect:
      width: 640
      height: 480

  warehouse_interior_front:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_interior_front
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/warehouse_interior_front_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    #detect:
    #  width: 2560
    #  height: 1920
    detect:
      width: 640
      height: 480

  warehouse_interior_office:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_interior_office
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/warehouse_interior_office_sub
          roles:
            - detect
            - audio
#          input_args: -ss 00:01
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 704
      height: 480
#    detect:
#      width: 3840
#      height: 2160

  warehouse_interior_overview:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/warehouse_interior_overview
          roles:
            - record
#        - path: rtsp://127.0.0.1:8554/warehouse_interior_overview_sub
#          roles:
#            - detect
      hwaccel_args: preset-nvidia-h264
    audio:
      enabled: False
    detect:
      width: 1920
      height: 1080
#    detect:
#      width: 704
#      height: 480

  gp_clubhouse_gym_1:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_gym_1
          roles:
            - record
#        - path: rtsp://127.0.0.1:8554/gp_clubhouse_gym_1_sub
#          roles:
            - detect
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 2592
      height: 1944
#    detect:
#      width: 480
#      height: 360
    audio:
      enabled: False
    motion:
      mask:
        - 2592,173,2592,0,0,0,0,337
    objects:
      filters:
        bicycle:
          mask:
            - 1635,80,1886,1019,408,1059,350,177
        motorcycle:
          mask:
            - 1635,80,1886,1019,408,1059,350,177

  gp_clubhouse_gym_2:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_gym_2
          roles:
            - record
#        - path: rtsp://127.0.0.1:8554/gp_clubhouse_gym_2_sub
#          roles:
            - detect
      hwaccel_args: preset-nvidia-h265
#    detect:
#      width: 480
#      height: 360
    detect:
      width: 2592
      height: 1944
    audio:
      enabled: False
    motion:
      mask:
        - 2592,0,0,0,0,385
    objects:
      filters:
        bicycle:
          mask:
            - 2391,1369,1261,677,1331,135,2542,274
        motorcycle:
          mask:
            - 2391,1369,1261,677,1331,135,2542,274

  gp_clubhouse_front_door:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_front_door
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_front_door_sub
          roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 480
      height: 360
#    detect:
#      width: 2592
#      height: 1944
    audio:
      enabled: False

  gp_clubhouse_back_door:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_back_door
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_back_door_sub
          roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 480
      height: 360
    audio:
      enabled: False
#    detect:
#      width: 2592
#      height: 1944

  gp_clubhouse_banquet:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_banquet
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_banquet_sub
          roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 480
      height: 360
    audio:
      enabled: False
#    detect:
#      width: 2592
#      height: 1944

  gp_clubhouse_pool_porch:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_pool_porch
          roles:
            - record
#        - path: rtsp://127.0.0.1:8554/gp_clubhouse_pool_porch_sub
#          roles:
            - detect
      hwaccel_args: preset-nvidia-h264
    zones:
      gp_clubhouse_pool_deck:
        coordinates: 1920,0,1920,1080,0,1080,0,0
    detect:
      width: 1920
      height: 1080
    audio:
      enabled: False
#    detect:
#      width: 704
#      height: 480

  gp_clubhouse_pool:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_pool
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_pool_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
#    zones:
#      gp_clubhouse_pool_deck:
#        coordinates: 5120,1440,5120,0,2701,0,2004,1440
    detect:
#      width: 5120
#      height: 1440
      width: 1920
      height: 536

  gp_clubhouse_firepit:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_firepit
          roles:
            - record
#        - path: rtsp://127.0.0.1:8554/gp_clubhouse_firepit_sub
#          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    motion:
      mask:
        - 2211,0,0,0,0,495,1795,224,1795,67,2202,62
        - 2061,1203,1952,361,1771,361,1702,1182
    objects:
      filters:
        person:
          mask:
            - 2114,1213,1610,1210,1612,366,2080,361
    zones:
      gp_clubhouse_pool_deck:
        coordinates: 3840,2160,3657,599,1531,331,0,725,0,2160
    detect:
      width: 3840
      height: 2160

  gp_clubhouse_parking:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_parking
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_clubhouse_parking_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 536
#      width: 5120
#      height: 1440

  gp636_doorbell:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp636_doorbell
          roles:
            - record
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 1920
      height: 1080
    motion:
      mask:
        - 0,0,958,0,926,599,0,499

  gp525_doorbell:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp525_doorbell
          roles:
            - record
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h264
    detect:
      width: 2560
      height: 1920
#    record:
#      retain:
#        days: 5
#        mode: all
#      events:
#        retain:
#          default: 45

  gp_entrance_75:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_entrance_75
          roles:
            - record
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 1080
#    record:
#      retain:
#        days: 5
#        mode: all
#      events:
#        retain:
#          default: 45

  gp_entrance_archer:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_entrance_archer
          roles:
            - record
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 1080
    record:
      retain:
        days: 5
        mode: all
      events:
        retain:
          default: 45

  gp_bldg_08_front:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_bldg_08_front
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_bldg_08_front_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 536
#      width: 5120
#      height: 1440
#    zones:
#      gp_bldg_alert:
#        coordinates: 0,961,0,1440,5120,1440,5120,1030,4090,139,1293,0

  gp_bldg_08_rear:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_bldg_08_rear
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_bldg_08_rear_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 536
#      width: 5120
#      height: 1440
#    zones:
#      gp_bldg_alert:
#        coordinates: 5120,1440,0,1440,0,767,1113,393,2685,308,4223,514,5120,976

  gp_bldg_03_side:
    ffmpeg:
      inputs:
        - path: rtsp://127.0.0.1:8554/gp_bldg_03_side
          roles:
            - record
        - path: rtsp://127.0.0.1:8554/gp_bldg_03_side_sub
          roles:
            - detect
            - audio
      output_args:
        record: preset-record-generic-audio-aac
      hwaccel_args: preset-nvidia-h265
    detect:
      width: 1920
      height: 536

Relevant log output

2023-07-03 19:39:02.696843621  [2023-07-03 19:39:02] frigate.output                 ERROR   : Error finding appropriate birdseye layout
2023-07-03 19:39:09.305740242  [2023-07-03 19:39:09] frigate.output                 ERROR   : Error finding appropriate birdseye layout
2023-07-03 19:39:10.896462967  [2023-07-03 19:39:10] frigate.output                 ERROR   : Error finding appropriate birdseye layout
2023-07-03 19:39:11.645122598  [2023-07-03 19:39:11] frigate.output                 ERROR   : Error finding appropriate birdseye layout

FFprobe output from your camera

N/A

Frigate stats

{"cpu_usages":{"1":{"cmdline":"/package/admin/s6/command/s6-svscan -d4 -- /run/service","cpu":"0.0","cpu_average":"0","mem":"0.0"},"15":{"cmdline":"s6-supervise s6-linux-init-shutdownd","cpu":"0.0","cpu_average":"0","mem":"0.0"},"17":{"cmdline":"/package/admin/s6-linux-init/command/s6-linux-init-shutdownd -c /run/s6/basedir -g 3000 -C -B","cpu":"0.0","cpu_average":"0","mem":"0.0"},"24":{"cmdline":"s6-supervise frigate","cpu":"0.0","cpu_average":"0","mem":"0.0"},"25":{"cmdline":"s6-supervise go2rtc-healthcheck","cpu":"0.0","cpu_average":"0","mem":"0.0"},"26":{"cmdline":"s6-supervise go2rtc-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"27":{"cmdline":"s6-supervise nginx-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"28":{"cmdline":"s6-supervise nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"29":{"cmdline":"s6-supervise go2rtc","cpu":"0.0","cpu_average":"0","mem":"0.0"},"30":{"cmdline":"s6-supervise frigate-log","cpu":"0.0","cpu_average":"0","mem":"0.0"},"31":{"cmdline":"s6-supervise s6rc-oneshot-runner","cpu":"0.0","cpu_average":"0","mem":"0.0"},"32":{"cmdline":"s6-supervise s6rc-fdholder","cpu":"0.0","cpu_average":"0","mem":"0.0"},"40":{"cmdline":"/package/admin/s6-2.11.3.0/command/s6-fdholderd -1 -i data/rules","cpu":"0.0","cpu_average":"0","mem":"0.0"},"42":{"cmdline":"/package/admin/s6/command/s6-ipcserverd -1 -- /package/admin/s6/command/s6-ipcserver-access -v0 -E -l0 -i data/rules -- /package/admin/s6/command/s6-sudod -t 30000 -- /package/admin/s6-rc/command/s6-rc-oneshot-run -l ../.. --","cpu":"0.0","cpu_average":"0","mem":"0.0"},"80":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"81":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/go2rtc","cpu":"0.0","cpu_average":"0","mem":"0.0"},"82":{"cmdline":"s6-log -b -- T 1 n0 s10000000 T /dev/shm/logs/frigate","cpu":"0.5","cpu_average":"0","mem":"0.0"},"89":{"cmdline":"/usr/local/go2rtc/bin/go2rtc -config=/dev/shm/go2rtc.yaml","cpu":"97.2","cpu_average":"87","mem":"0.0"},"97":{"cmdline":"bash ./run.user go2rtc-healthcheck","cpu":"0.0","cpu_average":"0","mem":"0.0"},"98":{"cmdline":"python3 -u -m frigate","cpu":"15.8","cpu_average":"25","mem":"1.9"},"117":{"cmdline":"nginx: master process nginx","cpu":"0.0","cpu_average":"0","mem":"0.0"},"139":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"140":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"141":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"142":{"cmdline":"nginx: worker process","cpu":"0.5","cpu_average":"0","mem":"0.0"},"143":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"144":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"146":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"153":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"163":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"174":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"189":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"207":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"229":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"259":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"286":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"328":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"390":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"444":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"499":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"549":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"598":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"638":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"671":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"703":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"737":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"772":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"806":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"833":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"872":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"927":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1005":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1066":{"cmdline":"nginx: worker process","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1297":{"cmdline":"frigate.logger       ","cpu":"0.0","cpu_average":"0","mem":"0.2"},"1314":{"cmdline":"frigate.recording_manager","cpu":"51.6","cpu_average":"20","mem":"0.5"},"1322":{"cmdline":"/usr/bin/python3 -c from multiprocessing.resource_tracker import main;main(85)","cpu":"1.9","cpu_average":"1","mem":"0.0"},"1323":{"cmdline":"frigate.detector.coral","cpu":"70.2","cpu_average":"66","mem":"0.3"},"1324":{"cmdline":"frigate.output       ","cpu":"79.3","cpu_average":"111","mem":"0.3"},"1331":{"cmdline":"frigate.process:warehouse_exterior_doorbell","cpu":"1.9","cpu_average":"4","mem":"0.4"},"1332":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2560x1920 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1333":{"cmdline":"frigate.process:warehouse_exterior_nw","cpu":"6.7","cpu_average":"10","mem":"0.3"},"1334":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1335":{"cmdline":"frigate.process:warehouse_exterior_sw","cpu":"14.3","cpu_average":"32","mem":"0.3"},"1336":{"cmdline":"frigate.process:warehouse_exterior_se","cpu":"16.7","cpu_average":"17","mem":"0.3"},"1339":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1340":{"cmdline":"frigate.process:warehouse_exterior_front","cpu":"18.6","cpu_average":"16","mem":"0.3"},"1344":{"cmdline":"frigate.process:warehouse_workbench","cpu":"16.7","cpu_average":"9","mem":"0.3"},"1346":{"cmdline":"frigate.process:warehouse_interior_front","cpu":"9.5","cpu_average":"8","mem":"0.3"},"1347":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 480x360 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1349":{"cmdline":"frigate.process:warehouse_interior_office","cpu":"15.7","cpu_average":"14","mem":"0.3"},"1351":{"cmdline":"frigate.process:warehouse_interior_overview","cpu":"16.7","cpu_average":"10","mem":"0.3"},"1352":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1536x576 -i pipe: -f mpegts -s 1920x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1353":{"cmdline":"frigate.process:gp_clubhouse_gym_1","cpu":"4.3","cpu_average":"17","mem":"0.4"},"1355":{"cmdline":"frigate.process:gp_clubhouse_gym_2","cpu":"36.7","cpu_average":"14","mem":"0.4"},"1356":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 640x480 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1357":{"cmdline":"frigate.process:gp_clubhouse_front_door","cpu":"22.4","cpu_average":"19","mem":"0.3"},"1359":{"cmdline":"frigate.process:gp_clubhouse_back_door","cpu":"23.3","cpu_average":"16","mem":"0.3"},"1362":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 640x480 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1363":{"cmdline":"frigate.process:gp_clubhouse_banquet","cpu":"14.7","cpu_average":"15","mem":"0.3"},"1366":{"cmdline":"frigate.process:gp_clubhouse_pool_porch","cpu":"2.4","cpu_average":"4","mem":"0.3"},"1367":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 704x480 -i pipe: -f mpegts -s 1056x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1368":{"cmdline":"frigate.process:gp_clubhouse_pool","cpu":"13.8","cpu_average":"14","mem":"0.3"},"1369":{"cmdline":"frigate.process:gp_clubhouse_firepit","cpu":"4.8","cpu_average":"11","mem":"0.3"},"1372":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1373":{"cmdline":"frigate.process:gp_clubhouse_parking","cpu":"20.0","cpu_average":"16","mem":"0.3"},"1374":{"cmdline":"frigate.process:gp636_doorbell","cpu":"5.2","cpu_average":"13","mem":"0.3"},"1376":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2592x1944 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1377":{"cmdline":"frigate.process:gp525_doorbell","cpu":"13.8","cpu_average":"16","mem":"0.4"},"1379":{"cmdline":"frigate.process:gp_entrance_75","cpu":"15.7","cpu_average":"14","mem":"0.3"},"1381":{"cmdline":"frigate.process:gp_entrance_archer","cpu":"6.2","cpu_average":"18","mem":"0.3"},"1382":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2592x1944 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1383":{"cmdline":"frigate.process:gp_bldg_08_front","cpu":"19.5","cpu_average":"13","mem":"0.3"},"1386":{"cmdline":"frigate.process:gp_bldg_08_rear","cpu":"18.1","cpu_average":"14","mem":"0.3"},"1388":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 480x360 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1390":{"cmdline":"frigate.process:gp_bldg_03_side","cpu":"24.2","cpu_average":"18","mem":"0.3"},"1392":{"cmdline":"frigate.capture:warehouse_exterior_doorbell","cpu":"11.9","cpu_average":"9","mem":"0.3"},"1396":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 480x360 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1397":{"cmdline":"frigate.capture:warehouse_exterior_nw","cpu":"4.8","cpu_average":"4","mem":"0.3"},"1400":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_doorbell -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_exterior_doorbell-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=2560:h=1920:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"21.9","cpu_average":"19","mem":"0.6"},"1401":{"cmdline":"frigate.capture:warehouse_exterior_sw","cpu":"4.8","cpu_average":"4","mem":"0.3"},"1402":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 480x360 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1403":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_nw -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/warehouse_exterior_nw-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"10.0","cpu_average":"8","mem":"0.4"},"1407":{"cmdline":"frigate.capture:warehouse_exterior_se","cpu":"1.0","cpu_average":"0","mem":"0.3"},"1410":{"cmdline":"frigate.capture:warehouse_exterior_front","cpu":"2.4","cpu_average":"2","mem":"0.3"},"1411":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_sw_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"8.6","cpu_average":"8","mem":"0.4"},"1415":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1416":{"cmdline":"frigate.capture:warehouse_workbench","cpu":"1.0","cpu_average":"0","mem":"0.3"},"1417":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_se_sub -r 5 -vf fps=5,scale_cuda=w=480:h=360:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"3.3","cpu_average":"3","mem":"0.4"},"1419":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_front_sub -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_exterior_front-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1536:h=576:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"6.7","cpu_average":"7","mem":"0.4"},"1423":{"cmdline":"frigate.capture:warehouse_interior_front","cpu":"0.5","cpu_average":"0","mem":"0.3"},"1427":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x536 -i pipe: -f mpegts -s 2579x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.1"},"1430":{"cmdline":"frigate.capture:warehouse_interior_office","cpu":"1.9","cpu_average":"1","mem":"0.3"},"1433":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 3840x2160 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1434":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_interior_office_sub -r 5 -vf fps=5,scale_cuda=w=704:h=480:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"4.3","cpu_average":"3","mem":"0.4"},"1435":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_workbench_sub -r 5 -vf fps=5,scale_cuda=w=640:h=480:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"3.3","cpu_average":"3","mem":"0.4"},"1436":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_sw -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/warehouse_exterior_sw-%Y%m%d%H%M%S.mp4","cpu":"1.4","cpu_average":"0","mem":"0.0"},"1441":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_exterior_se -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_exterior_se-%Y%m%d%H%M%S.mp4","cpu":"0.5","cpu_average":"1","mem":"0.0"},"1442":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x536 -i pipe: -f mpegts -s 2579x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1443":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_workbench -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_workbench-%Y%m%d%H%M%S.mp4","cpu":"7.6","cpu_average":"7","mem":"0.0"},"1444":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_interior_front_sub -r 5 -vf fps=5,scale_cuda=w=640:h=480:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"3.8","cpu_average":"3","mem":"0.4"},"1445":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_interior_office -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_interior_office-%Y%m%d%H%M%S.mp4","cpu":"0.5","cpu_average":"0","mem":"0.0"},"1446":{"cmdline":"frigate.capture:warehouse_interior_overview","cpu":"5.7","cpu_average":"4","mem":"0.3"},"1451":{"cmdline":"frigate.capture:gp_clubhouse_gym_1","cpu":"21.4","cpu_average":"10","mem":"0.3"},"1452":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1453":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_interior_overview -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/warehouse_interior_overview-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"8.5","cpu_average":"8","mem":"0.4"},"1456":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/warehouse_interior_front -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/warehouse_interior_front-%Y%m%d%H%M%S.mp4","cpu":"7.6","cpu_average":"7","mem":"0.0"},"1457":{"cmdline":"frigate.capture:gp_clubhouse_gym_2","cpu":"10.9","cpu_average":"10","mem":"0.3"},"1461":{"cmdline":"frigate.capture:gp_clubhouse_front_door","cpu":"0.9","cpu_average":"0","mem":"0.3"},"1462":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_gym_1 -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_gym_1-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=2592:h=1944:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"21.4","cpu_average":"15","mem":"0.5"},"1463":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 2560x1920 -i pipe: -f mpegts -s 960x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1466":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_gym_2 -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_gym_2-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=2592:h=1944:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"16.1","cpu_average":"15","mem":"0.5"},"1467":{"cmdline":"frigate.capture:gp_clubhouse_back_door","cpu":"0.9","cpu_average":"0","mem":"0.3"},"1468":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_front_door_sub -r 5 -vf fps=5,scale_cuda=w=480:h=360:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"2.8","cpu_average":"3","mem":"0.4"},"1472":{"cmdline":"frigate.capture:gp_clubhouse_banquet","cpu":"0.9","cpu_average":"0","mem":"0.3"},"1478":{"cmdline":"frigate.capture:gp_clubhouse_pool_porch","cpu":"5.2","cpu_average":"4","mem":"0.3"},"1479":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1480":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_back_door_sub -r 5 -vf fps=5,scale_cuda=w=480:h=360:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"3.3","cpu_average":"3","mem":"0.4"},"1483":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_front_door -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_front_door-%Y%m%d%H%M%S.mp4","cpu":"1.9","cpu_average":"0","mem":"0.0"},"1484":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_banquet_sub -r 5 -vf fps=5,scale_cuda=w=480:h=360:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"3.3","cpu_average":"3","mem":"0.4"},"1485":{"cmdline":"frigate.capture:gp_clubhouse_pool","cpu":"2.8","cpu_average":"2","mem":"0.3"},"1489":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_pool_porch -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_pool_porch-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"9.5","cpu_average":"8","mem":"0.4"},"1491":{"cmdline":"frigate.capture:gp_clubhouse_firepit","cpu":"26.1","cpu_average":"14","mem":"0.3"},"1496":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_pool_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=536:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"8.5","cpu_average":"7","mem":"0.4"},"1497":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x1080 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1498":{"cmdline":"frigate.capture:gp_clubhouse_parking","cpu":"4.7","cpu_average":"2","mem":"0.3"},"1499":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_back_door -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_back_door-%Y%m%d%H%M%S.mp4","cpu":"0.9","cpu_average":"0","mem":"0.0"},"1500":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_banquet -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c copy -an /tmp/cache/gp_clubhouse_banquet-%Y%m%d%H%M%S.mp4","cpu":"0.9","cpu_average":"0","mem":"0.0"},"1506":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_firepit -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_clubhouse_firepit-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=3840:h=2160:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"55.0","cpu_average":"31","mem":"0.6"},"1507":{"cmdline":"frigate.capture:gp636_doorbell","cpu":"4.3","cpu_average":"4","mem":"0.3"},"1510":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_parking_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=536:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"8.5","cpu_average":"7","mem":"0.4"},"1511":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_pool -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_clubhouse_pool-%Y%m%d%H%M%S.mp4","cpu":"6.6","cpu_average":"3","mem":"0.0"},"1513":{"cmdline":"frigate.capture:gp525_doorbell","cpu":"14.2","cpu_average":"9","mem":"0.3"},"1514":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x536 -i pipe: -f mpegts -s 2579x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1515":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp636_doorbell -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp636_doorbell-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"11.8","cpu_average":"14","mem":"0.4"},"1520":{"cmdline":"frigate.capture:gp_entrance_75","cpu":"6.2","cpu_average":"4","mem":"0.3"},"1522":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp525_doorbell -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp525_doorbell-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=2560:h=1920:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"24.6","cpu_average":"18","mem":"0.9"},"1526":{"cmdline":"frigate.capture:gp_entrance_archer","cpu":"6.2","cpu_average":"4","mem":"0.3"},"1527":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x536 -i pipe: -f mpegts -s 2579x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1530":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_entrance_75 -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_entrance_75-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"19.9","cpu_average":"16","mem":"0.5"},"1532":{"cmdline":"frigate.capture:gp_bldg_08_front","cpu":"1.4","cpu_average":"2","mem":"0.3"},"1538":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_entrance_archer -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_entrance_archer-%Y%m%d%H%M%S.mp4 -r 5 -vf fps=5,scale_cuda=w=1920:h=1080:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"19.9","cpu_average":"16","mem":"0.4"},"1540":{"cmdline":"frigate.capture:gp_bldg_08_rear","cpu":"4.3","cpu_average":"2","mem":"0.3"},"1541":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1920x536 -i pipe: -f mpegts -s 2579x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1542":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_08_front_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=536:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"4.7","cpu_average":"7","mem":"0.4"},"1546":{"cmdline":"frigate.capture:gp_bldg_03_side","cpu":"2.4","cpu_average":"2","mem":"0.3"},"1551":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_08_rear_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=536:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"9.0","cpu_average":"7","mem":"0.4"},"1553":{"cmdline":"ffmpeg -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -i pipe: -f mpegts -s 1280x720 -codec:v mpeg1video -q 8 -bf 0 pipe:","cpu":"12.3","cpu_average":"10","mem":"0.1"},"1554":{"cmdline":"frigate.audio_manager","cpu":"43.6","cpu_average":"45","mem":"0.4"},"1556":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_03_side_sub -r 5 -vf fps=5,scale_cuda=w=1920:h=536:format=nv12,hwdownload,format=nv12,format=yuv420p -threads 2 -f rawvideo -pix_fmt yuv420p pipe:","cpu":"6.6","cpu_average":"7","mem":"0.4"},"1591":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/warehouse_exterior_doorbell -f s16le -ar 16000 -ac 1 -y /tmp/cache/warehouse_exterior_doorbell-audio","cpu":"1.4","cpu_average":"1","mem":"0.0"},"1592":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_03_side -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_bldg_03_side-%Y%m%d%H%M%S.mp4","cpu":"7.6","cpu_average":"3","mem":"0.0"},"1597":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/warehouse_exterior_front_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/warehouse_exterior_front-audio","cpu":"0.9","cpu_average":"0","mem":"0.0"},"1600":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/warehouse_workbench_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/warehouse_workbench-audio","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1608":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/warehouse_interior_front_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/warehouse_interior_front-audio","cpu":"0.5","cpu_average":"0","mem":"0.0"},"1611":{"cmdline":"","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1615":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_clubhouse_pool_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_clubhouse_pool-audio","cpu":"1.4","cpu_average":"0","mem":"0.0"},"1618":{"cmdline":"","cpu":"0.0","cpu_average":"0","mem":"0.0"},"1621":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_clubhouse_parking_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_clubhouse_parking-audio","cpu":"1.4","cpu_average":"0","mem":"0.0"},"1624":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp636_doorbell -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp636_doorbell-audio","cpu":"0.5","cpu_average":"0","mem":"0.0"},"1627":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp525_doorbell -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp525_doorbell-audio","cpu":"2.4","cpu_average":"1","mem":"0.0"},"1635":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_entrance_75 -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_entrance_75-audio","cpu":"1.4","cpu_average":"1","mem":"0.0"},"1639":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_entrance_archer -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_entrance_archer-audio","cpu":"2.4","cpu_average":"1","mem":"0.0"},"1642":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_bldg_08_front_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_bldg_08_front-audio","cpu":"1.4","cpu_average":"0","mem":"0.0"},"1645":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_bldg_08_rear_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_bldg_08_rear-audio","cpu":"0.9","cpu_average":"0","mem":"0.0"},"1648":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -rtsp_transport tcp -timeout 5000000 -vn -i rtsp://127.0.0.1:8554/gp_bldg_03_side_sub -f s16le -ar 16000 -ac 1 -y /tmp/cache/gp_bldg_03_side-audio","cpu":"0.9","cpu_average":"0","mem":"0.0"},"4109":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_08_rear -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_bldg_08_rear-%Y%m%d%H%M%S.mp4","cpu":"6.6","cpu_average":"3","mem":"0.0"},"4553":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_bldg_08_front -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_bldg_08_front-%Y%m%d%H%M%S.mp4","cpu":"3.3","cpu_average":"3","mem":"0.0"},"4557":{"cmdline":"ffmpeg -hide_banner -f rawvideo -pix_fmt yuv420p -video_size 1280x720 -r 10 -i /tmp/cache/birdseye -c:v libx264 -g 50 -profile:v high -level:v 4.1 -preset:v superfast -tune:v zerolatency -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/9df16074a160b6458a3ade3d834288af","cpu":"21.4","cpu_average":"24","mem":"0.1"},"76045":{"cmdline":"sleep 30s","cpu":"0.0","cpu_average":"0","mem":"0.0"},"76734":{"cmdline":"ffmpeg -hide_banner -loglevel warning -threads 2 -hwaccel cuda -hwaccel_output_format cuda -user_agent FFmpeg Frigate/0.13.0-12d4a47 -avoid_negative_ts make_zero -fflags +genpts+discardcorrupt -rtsp_transport tcp -timeout 5000000 -use_wallclock_as_timestamps 1 -i rtsp://127.0.0.1:8554/gp_clubhouse_parking -f segment -segment_time 10 -segment_format mp4 -reset_timestamps 1 -strftime 1 -c:v copy -c:a aac /tmp/cache/gp_clubhouse_parking-%Y%m%d%H%M%S.mp4","cpu":"0.0","cpu_average":"0","mem":"0.0"}},"detection_fps":98.5,"detectors":{"coral":{"detection_start":1688427623.311403,"inference_speed":9.84,"pid":1323}},"gp525_doorbell":{"camera_fps":5.1,"capture_pid":1513,"detection_enabled":1,"detection_fps":4.2,"ffmpeg_pid":1522,"pid":1377,"process_fps":4.3,"skipped_fps":0.8},"gp636_doorbell":{"camera_fps":5.0,"capture_pid":1507,"detection_enabled":1,"detection_fps":3.3,"ffmpeg_pid":1515,"pid":1374,"process_fps":5.1,"skipped_fps":0.0},"gp_bldg_03_side":{"camera_fps":5.1,"capture_pid":1546,"detection_enabled":1,"detection_fps":5.4,"ffmpeg_pid":1556,"pid":1390,"process_fps":4.7,"skipped_fps":0.2},"gp_bldg_08_front":{"camera_fps":5.0,"capture_pid":1532,"detection_enabled":1,"detection_fps":5.3,"ffmpeg_pid":1542,"pid":1383,"process_fps":4.8,"skipped_fps":0.2},"gp_bldg_08_rear":{"camera_fps":5.1,"capture_pid":1540,"detection_enabled":1,"detection_fps":4.8,"ffmpeg_pid":1551,"pid":1386,"process_fps":4.8,"skipped_fps":0.3},"gp_clubhouse_back_door":{"camera_fps":5.0,"capture_pid":1467,"detection_enabled":1,"detection_fps":6.7,"ffmpeg_pid":1480,"pid":1359,"process_fps":4.9,"skipped_fps":0.2},"gp_clubhouse_banquet":{"camera_fps":5.0,"capture_pid":1472,"detection_enabled":1,"detection_fps":4.7,"ffmpeg_pid":1484,"pid":1363,"process_fps":5.0,"skipped_fps":0.1},"gp_clubhouse_firepit":{"camera_fps":5.0,"capture_pid":1491,"detection_enabled":1,"detection_fps":0.2,"ffmpeg_pid":1506,"pid":1369,"process_fps":5.0,"skipped_fps":0.0},"gp_clubhouse_front_door":{"camera_fps":5.0,"capture_pid":1461,"detection_enabled":1,"detection_fps":8.6,"ffmpeg_pid":1468,"pid":1357,"process_fps":4.8,"skipped_fps":0.3},"gp_clubhouse_gym_1":{"camera_fps":5.1,"capture_pid":1451,"detection_enabled":1,"detection_fps":1.2,"ffmpeg_pid":1462,"pid":1353,"process_fps":5.1,"skipped_fps":0.0},"gp_clubhouse_gym_2":{"camera_fps":5.1,"capture_pid":1457,"detection_enabled":1,"detection_fps":5.5,"ffmpeg_pid":1466,"pid":1355,"process_fps":4.2,"skipped_fps":1.0},"gp_clubhouse_parking":{"camera_fps":5.0,"capture_pid":1498,"detection_enabled":1,"detection_fps":5.0,"ffmpeg_pid":1510,"pid":1373,"process_fps":5.0,"skipped_fps":0.1},"gp_clubhouse_pool":{"camera_fps":5.0,"capture_pid":1485,"detection_enabled":1,"detection_fps":5.6,"ffmpeg_pid":1496,"pid":1368,"process_fps":4.7,"skipped_fps":0.5},"gp_clubhouse_pool_porch":{"camera_fps":5.0,"capture_pid":1478,"detection_enabled":1,"detection_fps":0.0,"ffmpeg_pid":1489,"pid":1366,"process_fps":5.0,"skipped_fps":0.0},"gp_entrance_75":{"camera_fps":5.0,"capture_pid":1520,"detection_enabled":1,"detection_fps":4.9,"ffmpeg_pid":1530,"pid":1379,"process_fps":4.9,"skipped_fps":0.2},"gp_entrance_archer":{"camera_fps":5.7,"capture_pid":1526,"detection_enabled":1,"detection_fps":3.6,"ffmpeg_pid":1538,"pid":1381,"process_fps":3.1,"skipped_fps":2.3},"gpu_usages":{"NVIDIA T1000 8GB":{"gpu":"14.0%","mem":"48.66%"}},"processes":{"audioDetector":{"pid":1554},"go2rtc":{"pid":89},"logger":{"pid":1297},"recording":{"pid":1314}},"service":{"last_updated":1688427623,"latest_version":"0.12.1","storage":{"/dev/shm":{"free":1386.4,"mount_type":"tmpfs","total":1521.0,"used":134.6},"/media/frigate/clips":{"free":38004.5,"mount_type":"zfs","total":3683184.8,"used":3645180.2},"/media/frigate/recordings":{"free":38004.5,"mount_type":"zfs","total":3683184.8,"used":3645180.2},"/tmp/cache":{"free":2304.4,"mount_type":"tmpfs","total":2384.2,"used":79.8}},"temperatures":{},"uptime":1757,"version":"0.13.0-12d4a47"},"warehouse_exterior_doorbell":{"camera_fps":5.1,"capture_pid":1392,"detection_enabled":1,"detection_fps":1.0,"ffmpeg_pid":1400,"pid":1331,"process_fps":5.2,"skipped_fps":0.0},"warehouse_exterior_front":{"camera_fps":5.1,"capture_pid":1410,"detection_enabled":1,"detection_fps":5.3,"ffmpeg_pid":1419,"pid":1340,"process_fps":5.1,"skipped_fps":0.0},"warehouse_exterior_nw":{"camera_fps":5.1,"capture_pid":1397,"detection_enabled":1,"detection_fps":0.7,"ffmpeg_pid":1403,"pid":1333,"process_fps":5.1,"skipped_fps":0.0},"warehouse_exterior_se":{"camera_fps":5.1,"capture_pid":1407,"detection_enabled":1,"detection_fps":5.1,"ffmpeg_pid":1417,"pid":1336,"process_fps":5.1,"skipped_fps":0.0},"warehouse_exterior_sw":{"camera_fps":5.0,"capture_pid":1401,"detection_enabled":1,"detection_fps":5.1,"ffmpeg_pid":1411,"pid":1335,"process_fps":4.7,"skipped_fps":0.4},"warehouse_interior_front":{"camera_fps":5.1,"capture_pid":1423,"detection_enabled":1,"detection_fps":2.7,"ffmpeg_pid":1444,"pid":1346,"process_fps":5.1,"skipped_fps":0.0},"warehouse_interior_office":{"camera_fps":5.1,"capture_pid":1430,"detection_enabled":1,"detection_fps":5.1,"ffmpeg_pid":1434,"pid":1349,"process_fps":5.1,"skipped_fps":0.0},"warehouse_interior_overview":{"camera_fps":5.0,"capture_pid":1446,"detection_enabled":1,"detection_fps":1.1,"ffmpeg_pid":1453,"pid":1351,"process_fps":4.9,"skipped_fps":0.0},"warehouse_workbench":{"camera_fps":5.1,"capture_pid":1416,"detection_enabled":1,"detection_fps":3.4,"ffmpeg_pid":1435,"pid":1344,"process_fps":5.1,"skipped_fps":0.0}}

Operating system

Other Linux

Install method

Docker CLI

Coral version

USB

Network connection

Wired

Camera make and model

many

Any other information that may be helpful

No response

NickM-27 commented 1 year ago

How many cameras are seeing objects / active at one time? This is a lot to fit in such a small space. It's possible there needs to be more attempts to find an appropriate layout based on the number of cameras that a user has.

YBonline commented 1 year ago

Is there a way to tell that directly? Based off my historical memory, I feel like there was usually about 10 cameras on average showing motion. On rare occasions, it would occasionally get up to about 18 cameras at a time. Frequently 5 of them were panoramic as I tend to have those outside where wind blowing tree branches and such activated the motion detection.

My current last birdseye update did successfully lay out 6 cameras on the screen, but none of them were panoramic. I don't think since the update I've had more then 3 of the panoramic cameras appear at once, and I'm fairly certain there is more then that active whenever the updates aren't happening.

YBonline commented 1 year ago

I'll also update tonight, usually at night I only have 2-4 with motion at a time (and almost always those are all panoramic)

NickM-27 commented 1 year ago

To be clear motion doesn't matter since you have the objects mode defined for birdseye (unless they are seeing false positives, which is possible)

If you have that many panoramic cameras it may be worth changing the birdseye resolution / aspect ratio to be 32:9 instead of 16:9

YBonline commented 1 year ago

I don't know if it would be considered a "false positive" or not but many of the cameras have parked cars in the view, and during motion, even if the cars don't move, they have always shown up on the birdseye view.

I believe I have 6 panoramic cameras currently, however they are all located outside and have roads in their field of view, so they are by far my most likely to have motion/objects. Many of my normal aspect ratio cameras are indoors, so they tend to never have false motion events.

The monitor I have setup to view the cameras full time is 16:9 so I would prefer to keep that aspect ratio, but I went ahead and tested with your recommended 32:9 ratio. The error rate seems to have gone way down and I'm getting frequent updates of the layout, but even at that ratio, there is still a fair number of that error occuring.

I also feel like it might be presenting the issue a bit more though. Here's a screenshot of the layout which seems less then ideal: Screenshot 2023-07-03 202221

NickM-27 commented 1 year ago

That's very odd, no idea how the layout would be like that. I'll have to see if I can recreate it which should hopefully give some insight into what's happening.

YBonline commented 1 year ago

I've been continuing to experiment and tried disabling birdseye view on all the pano cameras, and I went a full 20 minutes now without errors and very sane looking layouts. I got up to 12 cameras active during the time in which they switch to nightmode (back on 16:10 for this testing).

I enabled just one pano and sure enough, it error'd super quick.

My other observation with my setup (unrelated to my original issue, but a result of me actually getting to use the new birdseye view) is I needless to say have a ton of cameras appearing and disappearing all the time. With this new birdseye view, the cameras all move around every single time one appears or disappears, which makes it much harder to keep track of whats going on in each camera if I'm looking at it. The old birdseye view only redid the full layout when the grid size changed. Realistically, in my use, during the day that usually meant it was I believe a 4x4 grid the entire day, and during motion events, cameras would (almost) never move on the screen during the events. Using this for just 10 minutes its much harder for me to keep track of what I'm looking at with the constant resorting/movement of cameras. Also, thinking out loud, does the order I have the cameras in my config file matter to the layout?

I know you put way more thought into this then me, but I'm curious if it might be less error prone and simpler, and easier to handle if it kept the grid layout from the previous version, but made certain cameras take up multiple spots on the grid based off their aspect ratio?

NickM-27 commented 1 year ago

I've been continuing to experiment and tried disabling birdseye view on all the pano cameras, and I went a full 20 minutes now without errors and very sane looking layouts. I got up to 12 cameras active during the time in which they switch to nightmode (back on 16:10 for this testing).

I enabled just one pano and sure enough, it error'd super quick.

To be clear I worked on this birdseye revamp specifically because I have a pano camera and wanted it to work better with the layout. Having that many cameras is just not something I had in mind while making it, and I'll have to work on it some more to account for this larger use case.

My other observation with my setup (unrelated to my original issue, but a result of me actually getting to use the new birdseye view) is I needless to say have a ton of cameras appearing and disappearing all the time. With this new birdseye view, the cameras all move around every single time one appears or disappears, which makes it much harder to keep track of whats going on in each camera if I'm looking at it. The old birdseye view only redid the full layout when the grid size changed. Realistically, in my use, during the day that usually meant it was I believe a 4x4 grid the entire day, and during motion events, cameras would (almost) never move on the screen during the events. Using this for just 10 minutes its much harder for me to keep track of what I'm looking at with the constant resorting/movement of cameras. Also, thinking out loud, does the order I have the cameras in my config file matter to the layout?

This change for the birdseye view does not affect the changing of the cameras / that behavior in any way. The amount of time that a camera stays in the layout has not changed. The order of the cameras in the layout is alphabetical but can be configured using

birdseye:
  order: X

where lower numbers show up first in the layout.

I know you put way more thought into this then me, but I'm curious if it might be less error prone and simpler, and easier to handle if it kept the grid layout from the previous version, but made certain cameras take up multiple spots on the grid based off their aspect ratio?

That is mostly the goal of this however this revamp also supports portrait aspect cameras which makes things more complicated.

Think of the scenario where you have 6 cameras (which would result in a 3x3 grid previously). If the first two cameras are pano cameras then you can't fit them both on the first row and one of the pano cameras needs to go to the second row. But that means there is a grid spot in the top right that is now not taken up by anything. The order feature means that re-ordering the cameras is not an option so now there is wasted space.

NickM-27 commented 1 year ago

Okay I have just found the problem with your layout, 1920x536 is a non-standard aspect ratio of 240x67 which is why the layout was acting so weird. I remade the layout you showed above with standard aspect ratios and it worked just fine as expected

Screen Shot 2023-07-03 at 19 22 17 PM

NickM-27 commented 1 year ago

I just pushed up a PR to force cameras with non-standard aspect ratios into standard aspect ratios, this should fix what you are experiencing

YBonline commented 1 year ago

Thank you so much for the super quick fix on the actual issue I reported! I'll test it in a few minutes, but on my other comment (which if you want me to make a new issue to discuss it, let me know, I know I drifted to another topic)

To be clear I worked on this birdseye revamp specifically because I have a pano camera and wanted it to work better with the layout. Having that many cameras is just not something I had in mind while making it, and I'll have to work on it some more to account for this larger use case.

I understand that and believe this is still an improvement, just looking for ways it could be even better as the birdseye view, at least from using it for a short amount of time, seems to be more "annoying" to watch a camera then before, but if its a pano camera, it is a HUGE improvement.

This change for the birdseye view does not affect the changing of the cameras / that behavior in any way. The amount of time that a camera stays in the layout has not changed.

I think it does, I think I just explained myself poorly, let me try with an example: Lets say the old grid method was going to have a 2x2 grid, lets call the positions: [1] [2] [3] [4] Lets have 5 cameras, in alphabetical order, A, B, C, D, E

We're going to have 3 sequential events scenarios.... (a), (b), and (c)

(a) Cameras A, B, C, D all have motion to start, no motion on E (b) Motion ends on B and C, no motion on E (c) Motion occurs on C and E, no motion on B

Under the old layout, we would have this sequence of events (a) 1=A 2=B 3=C 4=D (b) 1=A 2=blank 3=blank 4=D (c) 1=A 2=C 3=E 4=D

Under the new layout, lets assuming they're all square for simplicity so we still have the 2x2, we'd have: (a) 1=A 2=B 3=C 4=D (b) 1=A 2=D 3=blank 4=blank (c) 1=A 2=C 3=D 4=E

Now, lets imagine I'm sitting and watching the birdseye view. The events on A, B, C, and E all seem uninteresting to me, but D contains a suspicious event, so thats the only one I'm really tracking. Under the old layout, I keep my eyes camera D, which stays in position 4 the entire time, without touching anything Under the new layout, for me to track camera D, I start in position 4, then it moves to position 2, then it moves to position 3.

If you can imagine this with 28 cameras, cameras late on the list are going to be moving constantly during their motion event, which didn't happen under the old system. I'm not sure what the best answer is, but I hope this use case gets some though.

NickM-27 commented 1 year ago

So I think two things got conflated. There has not been any change in the amount of time that a camera is shown based on activity (as it is configured, motion or object). Before and now a camera will be shown for 30 after the last activity.

However, in the previous implementation where the grid meant that birdseye did not need to care about camera resolutions; it would just replace or remove a camera based on when it expired without shuffling other cameras around (as you said above).

This is very complicated with the new layout because a newly added camera may not fit where the old camera was.

I have a few thoughts:

  1. In general I think the biggest problem is the ordering feature. This complicates things because a new camera can't just replace the camera that was removed. It needs to be fit into the order that is defined. Perhaps if all of the order are the same then the list can not be sorted and that will result in layouts that are more stable.
  2. I think it would be relatively easy to keep the same layout in the case that a camera is removed from the layout and no cameras are added. But in the case that a new camera is added it can totally change things given that the cameras need to be re-order most likely.
YBonline commented 1 year ago

So I applied your fix and after 15 minutes, I have not had the originally reported bug (yay!), but I did want to share a screenshot since I think its still struggling with the layout with a large number of pano cameras: Screenshot 2023-07-03 232021

Movement issues aside, about half the screen is blank, and it seems fairly obvious that better ordering could result in the videos being probably at least 30% bigger, I imagine I could easily get this layout into 3 full width rows that would probably consume 90% of my screen instead of less than 50% of it

No doubt, if you're following the ordering feature, its going to be really, really hard, but realistically, the old birdseye view didn't really honor the order if you weren't in continuous mode, and I personally find it hard to think of a good reason that order feature is at all useful when you're on a dynamic birdseye layout. The ordering feature seems to only make sense in the event that you are running birdseye in continuous mode. And if you really are running in continuous mode and care about the layout, the more "normal" configurable layout that is seen in most other NVR software probably makes more sense anyways (and is presumably easier to implement for those that want that instead of trying to make the Birdseye feature an all in one item)

NickM-27 commented 1 year ago

No doubt, if you're following the ordering feature, its going to be really, really hard, but realistically, the old birdseye view didn't really honor the order if you weren't in continuous mode

The previous birdseye did not have an ordering feature. The ability to order cameras is new for 0.13 as well.

The ordering feature seems to only make sense in the event that you are running birdseye in continuous mode.

Have to say I disagree, I certainly want my main front camera shown first in the layout because that is the camera I care about most. Ordering it first makes it always show first so the layout is much more predictable.

The ordering feature was also added and implemented by another user due to requests from other users with a similar perspective.

NickM-27 commented 1 year ago

Okay, I discovered a bug that was still causing issues, try the latest commit

YBonline commented 1 year ago

Yup, I just went ahead and tried that and didn't seem to help too much Screenshot 2023-07-03 233933

NickM-27 commented 1 year ago

Tried putting together a similar setup to yours on the latest commit and this is what I see

Screen Shot 2023-07-03 at 21 47 57 PM

YBonline commented 1 year ago

The last screenshot was without the latest commit and with your suggestion of changing the height to 540, but this one is with that latest commit (and height still set to 540): Screenshot 2023-07-03 235308

I am picking purposely when its doing especially bad layouts. When it first starts up and most cameras show, it looks more similar to yours: Screenshot 2023-07-03 235832

NickM-27 commented 1 year ago

That's where I get very confused, because using the same resolutions / ordering (for the first handful) I see this

Screenshot 2023-07-03 at 10 05 09 PM

what is your birdseye resolution and what are the resolutions of the different cameras in that first layout?

YBonline commented 1 year ago

Aha! So when you had me change my birdseye layout to 32:9, when I switched it back, I decided to go to 16:10 (1920x1200) since thats what my monitor actually was, instead of the original 16:9 which was default. When I went back to 16:9 (1920x1080) it started doing a LOT better job. This was the worst I got over 3 minutes (instead of the prior examples):

Screenshot 2023-07-04 001503

Do you still want the individual camera resolutions or does that give you what you need?

NickM-27 commented 1 year ago

Okay that makes sense, I'll look tomorrow to see if there's some issue with that

NickM-27 commented 1 year ago

@YBonline Okay, latest commit should handle that as well

YBonline commented 1 year ago

Alright, seems to work at the 16:10 aspect ratio with no noticeable bugs, however I just looked at CPU usage and noticed it was way up, and is on the frigate.output process. When I first upgraded to this dev branch my load average seemed to stay around 20... I'm now going about 35. I can try to step through the patches and see which one seems to cause if if you want me to (or its possible its unrelated, but I have 300% CPU from frigate.output.

YBonline commented 1 year ago

Here's screenshots of htop before and after this patch, I guess I don't necessarily know what "normal" is since birdseye is broken in the before: Screenshot 2023-07-04 112257 Screenshot 2023-07-04 113519

NickM-27 commented 1 year ago

@YBonline Try my latest commits, in my testing it dramatically reduces the CPU usage after an initial caching period

YBonline commented 1 year ago

Seems to be between the before and after in my previous ones:

Screenshot 2023-07-04 115304

NickM-27 commented 1 year ago

I just pushed another commit which should help a bit more. But at a certain point you are going to have a lot of birdseye CPU usage with that many cameras, and the improvements that have been made in this issue means that more cameras can fit / take up more area which of course uses more CPU to create the image for birdseye.

NickM-27 commented 1 year ago

There is a separate PR which reduces the CPU usage by changing the method that is used for resizing the camera frames

YBonline commented 1 year ago

That last commit seems to have made it a bit worse again after running for 10 min: Screenshot 2023-07-04 122036

NickM-27 commented 1 year ago

The commit couldn't have really made it worse, it simply reduced the calculations for each cameras aspect ratio because they are saved.

You can try running pyspy in the container to see what is using the CPU for the frigate.output process, but at this point I think your CPU usage is just increased due to the increased cameras and resolution that is being used to show the cameras and not in the layout calculation itself.