Frigate upgrade from 0.11 to 0.12

Hello, I am trying to update from frigate 0.11 to 0.12 but having a lot of difficulty. I was using WebRTC, but deleted that integration prior to the upgrade as I read it used the same port and 0.12 uses Go2RTC.

I updated the addon and integration with reboots and when I start the addon - it stops immediately.

Log file:

s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service s6rc-fdholder successfully started
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service log-prepare: starting
s6-rc: info: service log-prepare successfully started
s6-rc: info: service nginx-log: starting
s6-rc: info: service go2rtc-log: starting
s6-rc: info: service frigate-log: starting
s6-rc: info: service nginx-log successfully started
s6-rc: info: service go2rtc-log successfully started
s6-rc: info: service go2rtc: starting
s6-rc: info: service frigate-log successfully started
s6-rc: info: service go2rtc successfully started
s6-rc: info: service go2rtc-healthcheck: starting
s6-rc: info: service frigate: starting
s6-rc: info: service go2rtc-healthcheck successfully started
s6-rc: info: service frigate successfully started
s6-rc: info: service nginx: starting
s6-rc: info: service nginx successfully started
s6-rc: info: service legacy-services: starting
2023-04-30 21:40:21.140205121  [INFO] Preparing go2rtc config...
2023-04-30 21:40:21.140868659  [INFO] Starting Frigate...
2023-04-30 21:40:21.141229488  [INFO] Starting NGINX...
s6-rc: info: service legacy-services successfully started
2023-04-30 21:40:21.161580993  [INFO] Got IP address from supervisor: 192.168.0.109
2023-04-30 21:40:21.181091309  [INFO] Got WebRTC port from supervisor: 8555
2023-04-30 21:40:21.382735821  [INFO] Starting go2rtc...
2023-04-30 21:40:21.432812072  15:40:21.432 INF go2rtc version 1.2.0 linux/amd64
2023-04-30 21:40:21.432936191  15:40:21.432 INF [api] listen addr=:1984
2023-04-30 21:40:21.433041260  15:40:21.433 INF [rtsp] listen addr=:8554
2023-04-30 21:40:21.433139021  15:40:21.433 INF [srtp] listen addr=:8443
2023-04-30 21:40:21.433218406  15:40:21.433 INF [webrtc] listen addr=:8555
2023-04-30 21:40:21.809087399  [2023-04-30 15:40:21] frigate.app                    INFO    : Starting Frigate (0.12.0-da3e197)
2023-04-30 21:40:21.836431947  *************************************************************
2023-04-30 21:40:21.836433842  *************************************************************
2023-04-30 21:40:21.836436474  ***    Your config file is not valid!                     ***
2023-04-30 21:40:21.836437851  ***    Please check the docs at                           ***
2023-04-30 21:40:21.836438748  ***    https://docs.frigate.video/configuration/index     ***
2023-04-30 21:40:21.836449108  *************************************************************
2023-04-30 21:40:21.836449984  *************************************************************
2023-04-30 21:40:21.836451066  ***    Config Validation Errors                           ***
2023-04-30 21:40:21.836451893  *************************************************************
2023-04-30 21:40:21.836452609  Config input mask is defined multiple times for the same field, this is not allowed.
2023-04-30 21:40:21.836943739  Traceback (most recent call last):
2023-04-30 21:40:21.836944903    File "/opt/frigate/frigate/app.py", line 351, in start
2023-04-30 21:40:21.836945585      self.init_config()
2023-04-30 21:40:21.836946324    File "/opt/frigate/frigate/app.py", line 80, in init_config
2023-04-30 21:40:21.836946938      user_config = FrigateConfig.parse_file(config_file)
2023-04-30 21:40:21.836947617    File "/opt/frigate/frigate/config.py", line 1068, in parse_file
2023-04-30 21:40:21.836948340      config = load_config_with_no_duplicates(raw_config)
2023-04-30 21:40:21.836949044    File "/opt/frigate/frigate/util.py", line 78, in load_config_with_no_duplicates
2023-04-30 21:40:21.836949699      return yaml.load(raw_config, PreserveDuplicatesLoader)
2023-04-30 21:40:21.836950429    File "/usr/local/lib/python3.9/dist-packages/yaml/__init__.py", line 81, in load
2023-04-30 21:40:21.836951050      return loader.get_single_data()
2023-04-30 21:40:21.836951806    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 51, in get_single_data
2023-04-30 21:40:21.836952618      return self.construct_document(node)
2023-04-30 21:40:21.836953379    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 55, in construct_document
2023-04-30 21:40:21.836966036      data = self.construct_object(node)
2023-04-30 21:40:21.836966928    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.836967678      data = constructor(self, node)
2023-04-30 21:40:21.836968406    File "/opt/frigate/frigate/util.py", line 63, in map_constructor
2023-04-30 21:40:21.836969086      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836969982    File "/opt/frigate/frigate/util.py", line 63, in <listcomp>
2023-04-30 21:40:21.836970716      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836971786    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.836980461      data = constructor(self, node)
2023-04-30 21:40:21.836981135    File "/opt/frigate/frigate/util.py", line 63, in map_constructor
2023-04-30 21:40:21.836981856      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836982833    File "/opt/frigate/frigate/util.py", line 63, in <listcomp>
2023-04-30 21:40:21.836983582      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836984304    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.836993833      data = constructor(self, node)
2023-04-30 21:40:21.836994554    File "/opt/frigate/frigate/util.py", line 63, in map_constructor
2023-04-30 21:40:21.836995288      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836995954    File "/opt/frigate/frigate/util.py", line 63, in <listcomp>
2023-04-30 21:40:21.836996715      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.836997496    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.836998047      data = constructor(self, node)
2023-04-30 21:40:21.836998746    File "/opt/frigate/frigate/util.py", line 63, in map_constructor
2023-04-30 21:40:21.836999516      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.837000212    File "/opt/frigate/frigate/util.py", line 63, in <listcomp>
2023-04-30 21:40:21.837004665      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.837005716    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.837017129      data = constructor(self, node)
2023-04-30 21:40:21.837017897    File "/opt/frigate/frigate/util.py", line 63, in map_constructor
2023-04-30 21:40:21.837018622      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.837019269    File "/opt/frigate/frigate/util.py", line 63, in <listcomp>
2023-04-30 21:40:21.837019965      vals = [loader.construct_object(node, deep=deep) for _, node in node.value]
2023-04-30 21:40:21.837020715    File "/usr/local/lib/python3.9/dist-packages/yaml/constructor.py", line 100, in construct_object
2023-04-30 21:40:21.837021474      data = constructor(self, node)
2023-04-30 21:40:21.837022163    File "/opt/frigate/frigate/util.py", line 68, in map_constructor
2023-04-30 21:40:21.837022761      raise ValueError(
2023-04-30 21:40:21.837023461  ValueError: Config input mask is defined multiple times for the same field, this is not allowed.
2023-04-30 21:40:21.837024010  
2023-04-30 21:40:21.837024684  *************************************************************
2023-04-30 21:40:21.837036952  ***    End Config Validation Errors                       ***
2023-04-30 21:40:21.837037600  *************************************************************

Here is my Frigate.yml file:

mqtt:
  host: 192.168.0.109
  user: mqtt-user
  password: xxxxxxxxxxx
  
objects:
  track:
    - person
    - car
    - cat
    - dog

detectors:
  coral:
    type: edgetpu
    device: usb

birdseye:
  enabled: True
  width: 3840
  height: 2160
  quality: 4
  mode: continuous

cameras:
 hik1:
  ffmpeg:
    inputs:
    - path: rtsp://xxxxx:[email protected]:554/Streaming/Channels/101
      roles:
       - detect
       - record
  detect:
   width: 3840
   height: 2160
   fps: 5
  record:
   enabled: True
   retain:
     days: 1
     mode: motion
   events:
     pre_capture: 15
     post_capture: 15
     retain:
       default: 5
       mode: active_objects
       objects:
        person: 5
        car: 5
        dog: 5
     objects:
      - person
      - car
      - dog
  snapshots:
   enabled: True
   timestamp: False
   bounding_box: True
   retain:
    default: 5
    objects:
     person: 5
     car: 5
     dog: 5
  rtmp:
   enabled: False
  motion:
    mask:
      - 0,689,323,541,755,415,1135,367,1872,415,2230,497,2317,598,3840,685,3840,0,0,0
  zones:
    dog_zone:
      coordinates: 0,1667,0,2160,3840,2160,3840,784,2300,576,2234,755,2060,912,1763,1060,1379,1200,999,1353,681,1444,367,1540,135,1584
    person_zone:
      coordinates: 0,1981,0,2160,3840,2160,3840,774,2313,593,2300,672,2208,799,2103,886,1942,995,1702,1130,1479,1244,1183,1344,816,1453,502,1549,227,1619
    car_zone_test:
      coordinates: 1300,349,0,672,0,2160,3840,2160,3840,327
  objects:
    filters:
      car:
        threshold: 0.8
        mask: 0,829,345,624,829,476,1222,419,1907,467,2230,497,2317,598,3840,685,3840,0,0,0
      dog:
        threshold: 0.8
        mask: 0,829,345,624,829,476,1222,419,1907,467,2230,497,2317,598,3840,685,3840,0,0,0
      person:
        threshold: 0.8
        mask: 0,829,345,624,829,476,1222,419,1907,467,2230,497,2317,598,3840,685,3840,0,0,0
        mask: 69,1908,421,1792,346,1435,71,1471
      cat:
        threshold: 0.8
        mask: 0,829,345,624,829,476,1222,419,1907,467,2230,497,2317,598,3840,685,3840,0,0,0
   
 hik1_sub:
  ffmpeg:
    inputs:
    - path: rtsp://xxxxx:[email protected]:554/Streaming/Channels/102
  record:
   enabled: False
   retain:
     days: 1
     mode: motion
   events:
     pre_capture: 15
     post_capture: 15
     retain:
       default: 5
       mode: active_objects
       objects:
        person: 5
        car: 5
        dog: 5
     objects:
      - person
      - car
      - dog
  snapshots:
   enabled: False
   timestamp: False
   bounding_box: True
   retain:
    default: 5
    objects:
     person: 5
     car: 5
     dog: 5
  rtmp:
   enabled: False

You defined mask twice, this is not allowed. If you want multiple masks you need to define them as a list

Sorry for the delayed response, but that was exactly the problem. For some reason in v0.11 it allowed it as it was with 2 masks. I commented out the second mask and no issues updating to 0.12! Thank you.