Open
Description
I have been trying to setup a simple recording server I managed to get LiveView to work but I can't get recording to work at all there is no segments gets created I am not sure what am I missing
Container Logs:
viseron | Starting PostgreSQL Server...
> viseron | /var/run/postgresql:5432 - no response
> viseron | Waiting for PostgreSQL Server to start...
> viseron | 2025-03-09 11:24:31.310 EET [437] LOG: starting PostgreSQL 14.15 (Ubuntu 14.15-0ubuntu0.22.04.1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, 64-bit
> viseron | 2025-03-09 11:24:31.310 EET [437] LOG: listening on IPv6 address "::1", port 5432
> viseron | 2025-03-09 11:24:31.311 EET [437] LOG: listening on IPv4 address "127.0.0.1", port 5432
> viseron | 2025-03-09 11:24:31.391 EET [437] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
> viseron | 2025-03-09 11:24:31.466 EET [439] LOG: database system was shut down at 2025-03-09 11:24:20 EET
> viseron | 2025-03-09 11:24:31.525 EET [437] LOG: database system is ready to accept connections
> viseron | /var/run/postgresql:5432 - accepting connections
> viseron | PostgreSQL Server has started!
> viseron | 2025-03-09 11:24:35.953 [INFO ] [viseron.core] - -------------------------------------------
> viseron | 2025-03-09 11:24:35.957 [INFO ] [viseron.core] - Initializing Viseron dev
> viseron | 2025-03-09 11:24:35.978 [INFO ] [viseron.components] - Setting up component logger
> viseron | 2025-03-09 11:24:35.987 [INFO ] [viseron.components] - Setup of component logger took 0.0 seconds
> viseron | 2025-03-09 11:24:35.989 [INFO ] [viseron.components] - Setting up component data_stream
> viseron | 2025-03-09 11:24:35.993 [DEBUG ] [viseron.components.data_stream] - ulimit -u output: unlimited
> viseron | 2025-03-09 11:24:35.995 [DEBUG ] [viseron.components.data_stream] - Max threads: 999999
> viseron | 2025-03-09 11:24:35.996 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(data_stream, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:35.998 [INFO ] [viseron.components] - Setup of component data_stream took 0.0 seconds
> viseron | 2025-03-09 11:24:35.999 [INFO ] [viseron.components] - Setting up component storage
> viseron | 2025-03-09 11:24:36.003 [DEBUG ] [tzlocal] - /etc/timezone found, contents:
> viseron | Etc/UTC
> viseron |
> viseron | 2025-03-09 11:24:36.006 [DEBUG ] [tzlocal] - /etc/localtime found
> viseron | 2025-03-09 11:24:36.010 [DEBUG ] [tzlocal] - 2 found:
> viseron | {'/etc/timezone': 'Etc/UTC', '/etc/localtime is a symlink to': 'Etc/UTC'}
> viseron | 2025-03-09 11:24:36.030 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/shutdown, <bound method CleanupManager.stop of <viseron.components.storage.jobs.CleanupManager object at 0x7f040f4e8a60>>
> viseron | 2025-03-09 11:24:36.207 [INFO ] [alembic.runtime.migration] - Context impl PostgresqlImpl.
> viseron | 2025-03-09 11:24:36.208 [INFO ] [alembic.runtime.migration] - Will assume transactional DDL.
> viseron | 2025-03-09 11:24:36.225 [DEBUG ] [viseron.components.storage] - Current database revision: 7b1f82f2ec39
> viseron | 2025-03-09 11:24:36.303 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/domain/registered/camera, <bound method Storage._camera_registered of <viseron.components.storage.Storage object at 0x7f040f4e8b80>>
> viseron | 2025-03-09 11:24:36.304 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method Storage._shutdown of <viseron.components.storage.Storage object at 0x7f040f4e8b80>>
> viseron | 2025-03-09 11:24:36.305 [INFO ] [viseron.components] - Setup of component storage took 0.3 seconds
> viseron | 2025-03-09 11:24:36.306 [INFO ] [viseron.components] - Setting up component webserver
> viseron | 2025-03-09 11:24:36.308 [DEBUG ] [asyncio] - Using selector: EpollSelector
> viseron | 2025-03-09 11:24:36.316 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/shutdown, <bound method Webserver.stop of <Webserver(Tornado Webserver, initial daemon)>>
> viseron | 2025-03-09 11:24:36.317 [INFO ] [viseron.components] - Setup of component webserver took 0.0 seconds
> viseron | 2025-03-09 11:24:36.319 [INFO ] [viseron.components] - Setting up component nvr
> viseron | 2025-03-09 11:24:36.319 [INFO ] [viseron.components] - Setting up component ffmpeg
> viseron | 2025-03-09 11:24:36.323 [INFO ] [viseron.components] - Setup of component nvr took 0.0 seconds
> viseron | 2025-03-09 11:24:36.331 [INFO ] [viseron.components] - Setup of component ffmpeg took 0.0 seconds
> viseron | 2025-03-09 11:24:36.836 [INFO ] [viseron.components] - Setting up domain camera for component ffmpeg with identifier mobile_test
> viseron | 2025-03-09 11:24:36.837 [INFO ] [viseron.components] - Setting up domain nvr for component nvr with identifier mobile_test
> viseron | 2025-03-09 11:24:36.839 [DEBUG ] [viseron.components] - Domain nvr for component nvr with identifier mobile_test will wait for dependencies ['domain: camera, identifier: mobile_test']
> viseron | 2025-03-09 11:24:36.884 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - Getting stream information for rtsp://*****:*****@192.168.1.6:1935/h264_ulaw.sdp
> viseron | 2025-03-09 11:24:36.885 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - FFprobe command: ffprobe -hide_banner -loglevel error -print_format json -show_error -show_entries stream=codec_type,codec_name,width,height,avg_frame_rate -rtsp_transport tcp rtsp://*****:*****@192.168.1.6:1935/h264_ulaw.sdp
> viseron | 2025-03-09 11:24:38.803 [DEBUG ] [viseron.components.webserver.websocket_api] - WebSocket opened
> viseron | 2025-03-09 11:24:38.829 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_timespans","camera_identifiers":["mobile_test"],"date":"2025-03-09","debounce":5,"command_id":1}
> viseron | 2025-03-09 11:24:38.853 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CamerasAPIHandler.get_cameras(*args=[], **kwargs={}, request_arguments={})
> viseron | 2025-03-09 11:24:39.137 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_states","entity_id":"binary_sensor.mobile_test_connected","command_id":2}
> viseron | 2025-03-09 11:24:39.139 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CamerasAPIHandler.get_failed_cameras(*args=[], **kwargs={}, request_arguments={})
> viseron | 2025-03-09 11:24:39.144 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/state_changed, <function subscribe_states.<locals>.forward_state_change at 0x7f040d335d80>
> viseron | 2025-03-09 11:24:39.146 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to EventsAPIHandler.get_events(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'date': '2025-03-09'})
> viseron | 2025-03-09 11:24:39.148 [WARNING ] [tornado.access] - 404 GET /api/v1/events/mobile_test?date=2025-03-09 (172.19.0.1) 60.46ms
> viseron | 2025-03-09 11:24:39.149 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CameraAPIHandler.get_camera_endpoint(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'failed': False})
> viseron | 2025-03-09 11:24:39.150 [WARNING ] [tornado.access] - 404 GET /api/v1/camera/mobile_test (172.19.0.1) 295.54ms
> viseron | 2025-03-09 11:24:39.152 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_states","entity_id":"binary_sensor.mobile_test_still_image_available","command_id":3}
> viseron | 2025-03-09 11:24:39.155 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to EventsAPIHandler.post_events_amount_multiple(*args=[], **kwargs={}, request_arguments={})
> viseron | 2025-03-09 11:24:39.156 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/state_changed, <function subscribe_states.<locals>.forward_state_change at 0x7f040d3367a0>
> viseron | 2025-03-09 11:24:39.161 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_states","entity_id":"toggle.mobile_test_connection","command_id":4}
> viseron | 2025-03-09 11:24:39.172 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/state_changed, <function subscribe_states.<locals>.forward_state_change at 0x7f040c79d6c0>
> viseron | 2025-03-09 11:24:39.178 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_states","entity_id":"sensor.mobile_test_access_token","command_id":5}
> viseron | 2025-03-09 11:24:39.183 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/state_changed, <function subscribe_states.<locals>.forward_state_change at 0x7f040d335510>
> viseron | 2025-03-09 11:24:39.186 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"domain/registered/camera","command_id":6}
> viseron | 2025-03-09 11:24:39.190 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/domain/registered/camera, <function subscribe_event.<locals>.forward_event at 0x7f040d336290>
> viseron | 2025-03-09 11:24:39.192 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"domain/setup/domain_failed/camera/*","command_id":7}
> viseron | 2025-03-09 11:24:39.194 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/domain/setup/domain_failed/camera/*, <function subscribe_event.<locals>.forward_event at 0x7f040d3360e0>
> viseron | 2025-03-09 11:24:39.196 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"domain/setup/domain_loaded/camera/*","command_id":8}
> viseron | 2025-03-09 11:24:39.199 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/domain/setup/domain_loaded/camera/*, <function subscribe_event.<locals>.forward_event at 0x7f040c79d870>
> viseron | 2025-03-09 11:24:39.200 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"mobile_test/camera_event/*/*","debounce":5,"command_id":9}
> viseron | 2025-03-09 11:24:39.203 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera_event/*/*, <function subscribe_event.<locals>.debounced_forward_event at 0x7f040c79cc10>
> viseron | 2025-03-09 11:24:39.204 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"mobile_test/recorder/start","debounce":5,"command_id":10}
> viseron | 2025-03-09 11:24:39.207 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/recorder/start, <function subscribe_event.<locals>.debounced_forward_event at 0x7f040c79dea0>
> viseron | 2025-03-09 11:24:39.209 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_event","event":"mobile_test/recorder/stop","debounce":5,"command_id":11}
> viseron | 2025-03-09 11:24:39.213 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/recorder/stop, <function subscribe_event.<locals>.debounced_forward_event at 0x7f040c79e0e0>
> viseron | 2025-03-09 11:24:39.214 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_timespans","camera_identifiers":["mobile_test"],"date":"2025-03-09","debounce":5,"command_id":12}
> viseron | 2025-03-09 11:24:43.788 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - Closing LogPipe
> viseron | 2025-03-09 11:24:43.790 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - Stream information from FFprobe: Width: 1920 Height: 1080 FPS: 30 Video Codec: h264 Audio Codec: pcm_mulaw
> viseron | 2025-03-09 11:24:43.791 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - LogPipe thread ended
> viseron | 2025-03-09 11:24:43.794 [DEBUG ] [viseron.states] - Adding entity MobileTest Connected from component ffmpeg
> viseron | 2025-03-09 11:24:43.796 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera/status, <bound method ConnectionStatusBinarySensor.handle_event of <viseron.domains.camera.entity.binary_sensor.ConnectionStatusBinarySensor object at 0x7f040d331ea0>>
> viseron | 2025-03-09 11:24:43.796 [DEBUG ] [viseron.states] - Setting state of binary_sensor.mobile_test_connected to state: off, attributes {'name': 'MobileTest Connected', 'domain': 'binary_sensor'}
> viseron | 2025-03-09 11:24:44.245 [DEBUG ] [viseron.states] - Adding entity MobileTest Still Image Available from component ffmpeg
> viseron | 2025-03-09 11:24:44.249 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/still_image/available, <bound method StillImageAvailableBinarySensor.handle_event of <viseron.domains.camera.entity.binary_sensor.StillImageAvailableBinarySensor object at 0x7f040d332c20>>
> viseron | 2025-03-09 11:24:44.252 [DEBUG ] [viseron.states] - Setting state of binary_sensor.mobile_test_still_image_available to state: off, attributes {'name': 'MobileTest Still Image Available', 'domain': 'binary_sensor'}
> viseron | 2025-03-09 11:24:44.532 [DEBUG ] [viseron.states] - Adding entity MobileTest Connection from component ffmpeg
> viseron | 2025-03-09 11:24:44.536 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera/start, <bound method CameraConnectionToggle.handle_start_event of <viseron.domains.camera.entity.toggle.CameraConnectionToggle object at 0x7f040d332ce0>>
> viseron | 2025-03-09 11:24:44.538 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera/stop, <bound method CameraConnectionToggle.handle_stop_event of <viseron.domains.camera.entity.toggle.CameraConnectionToggle object at 0x7f040d332ce0>>
> viseron | 2025-03-09 11:24:44.539 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera/started, <bound method CameraConnectionToggle.handle_started_stopped_event of <viseron.domains.camera.entity.toggle.CameraConnectionToggle object at 0x7f040d332ce0>>
> viseron | 2025-03-09 11:24:44.540 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/camera/stopped, <bound method CameraConnectionToggle.handle_started_stopped_event of <viseron.domains.camera.entity.toggle.CameraConnectionToggle object at 0x7f040d332ce0>>
> viseron | 2025-03-09 11:24:44.542 [DEBUG ] [viseron.states] - Setting state of toggle.mobile_test_connection to state: off, attributes {'name': 'MobileTest Connection', 'domain': 'toggle'}
> viseron | 2025-03-09 11:24:44.855 [DEBUG ] [viseron.states] - Adding entity MobileTest Access Token from component ffmpeg
> viseron | 2025-03-09 11:24:44.859 [DEBUG ] [viseron.states] - Setting state of sensor.mobile_test_access_token to state: adc6f46ccccdd80e8fd8e0e9cd95bc16e8f9b48a6f8afd5303be111ff2844d1656f198c51535fcc14e6370e7bf99e1438163e7b620001db93e891f6861022b2d, attributes {'name': 'MobileTest Access Token', 'domain': 'sensor'}
> viseron | 2025-03-09 11:24:45.169 [DEBUG ] [viseron.states] - Setting state of sensor.mobile_test_access_token to state: 4b48accab5dd6105d7b7dd7ce773f3eb422c6fe349a1f098bfbebdb9550dadb2a755b880c99e61f135abf762980e367d6d015d019d0f33ca82d46708cae9ef4f, attributes {'name': 'MobileTest Access Token', 'domain': 'sensor'}
> viseron | 2025-03-09 11:24:45.267 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.segments] - Adding handler for /files/segments/mobile_test/(.*.m4s$)
> viseron | 2025-03-09 11:24:45.278 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.segments] - Adding handler for /files/segments/mobile_test/(.*.mp4$)
> viseron | 2025-03-09 11:24:45.280 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.SegmentsTierHandler object at 0x7f040c777640>>
> viseron | 2025-03-09 11:24:45.281 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.SegmentsTierHandler object at 0x7f040c777640>>
> viseron | 2025-03-09 11:24:45.282 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.284 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.segments] - Tier 0 monitoring path: /segments/mobile_test
> viseron | 2025-03-09 11:24:45.289 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.event_clips] - Adding handler for /files/event_clips/mobile_test/(.*.mobile_test$)
> viseron | 2025-03-09 11:24:45.290 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.EventClipTierHandler object at 0x7f040c7c8a90>>
> viseron | 2025-03-09 11:24:45.291 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.EventClipTierHandler object at 0x7f040c7c8a90>>
> viseron | 2025-03-09 11:24:45.292 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.294 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.event_clips] - Tier 0 monitoring path: /event_clips/mobile_test
> viseron | 2025-03-09 11:24:45.296 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.thumbnails] - Adding handler for /files/thumbnails/mobile_test/(.*.jpg$)
> viseron | 2025-03-09 11:24:45.297 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.ThumbnailTierHandler object at 0x7f040c7c9870>>
> viseron | 2025-03-09 11:24:45.298 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.ThumbnailTierHandler object at 0x7f040c7c9870>>
> viseron | 2025-03-09 11:24:45.299 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.300 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.recorder.thumbnails] - Tier 0 monitoring path: /thumbnails/mobile_test
> viseron | 2025-03-09 11:24:45.304 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.face_recognition] - Adding handler for /files/snapshots/face_recognition/mobile_test/(.*.jpg$)
> viseron | 2025-03-09 11:24:45.305 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7cbc40>>
> viseron | 2025-03-09 11:24:45.306 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7cbc40>>
> viseron | 2025-03-09 11:24:45.307 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.309 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.face_recognition] - Tier 0 monitoring path: /snapshots/face_recognition/mobile_test
> viseron | 2025-03-09 11:24:45.311 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.object_detector] - Adding handler for /files/snapshots/object_detector/mobile_test/(.*.jpg$)
> viseron | 2025-03-09 11:24:45.313 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7fb340>>
> viseron | 2025-03-09 11:24:45.313 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7fb340>>
> viseron | 2025-03-09 11:24:45.314 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.315 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.object_detector] - Tier 0 monitoring path: /snapshots/object_detector/mobile_test
> viseron | 2025-03-09 11:24:45.318 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.license_plate_recognition] - Adding handler for /files/snapshots/license_plate_recognition/mobile_test/(.*.jpg$)
> viseron | 2025-03-09 11:24:45.319 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7f94e0>>
> viseron | 2025-03-09 11:24:45.320 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7f94e0>>
> viseron | 2025-03-09 11:24:45.321 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.322 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.license_plate_recognition] - Tier 0 monitoring path: /snapshots/license_plate_recognition/mobile_test
> viseron | 2025-03-09 11:24:45.325 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.motion_detector] - Adding handler for /files/snapshots/motion_detector/mobile_test/(.*.jpg$)
> viseron | 2025-03-09 11:24:45.327 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/last_write, <bound method TierHandler._shutdown of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7fa890>>
> viseron | 2025-03-09 11:24:45.327 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/stopping, <bound method TierHandler._stop_observer of <viseron.components.storage.tier_handler.SnapshotTierHandler object at 0x7f040c7fa890>>
> viseron | 2025-03-09 11:24:45.329 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(tier_handler_mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.330 [DEBUG ] [viseron.components.storage.tier_handler.mobile_test.tier_0.snapshots.motion_detector] - Tier 0 monitoring path: /snapshots/motion_detector/mobile_test
> viseron | 2025-03-09 11:24:45.333 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/shutdown, <bound method Fragmenter._shutdown of <viseron.domains.camera.fragmenter.Fragmenter object at 0x7f040c777520>>
> viseron | 2025-03-09 11:24:45.362 [DEBUG ] [viseron.states] - Adding entity MobileTest Recorder from component ffmpeg
> viseron | 2025-03-09 11:24:45.363 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/recorder/start, <bound method RecorderBinarySensor.handle_start_event of <viseron.domains.camera.entity.binary_sensor.RecorderBinarySensor object at 0x7f040c328070>>
> viseron | 2025-03-09 11:24:45.364 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/recorder/stop, <bound method RecorderBinarySensor.handle_stop_event of <viseron.domains.camera.entity.binary_sensor.RecorderBinarySensor object at 0x7f040c328070>>
> viseron | 2025-03-09 11:24:45.364 [DEBUG ] [viseron.states] - Setting state of binary_sensor.mobile_test_recorder to state: off, attributes {'name': 'MobileTest Recorder', 'domain': 'binary_sensor'}
> viseron | 2025-03-09 11:24:45.529 [DEBUG ] [viseron.states] - Adding entity MobileTest Latest Thumbnail from component ffmpeg
> viseron | 2025-03-09 11:24:45.532 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/recorder/start, <bound method ThumbnailImage.handle_event of <viseron.domains.camera.entity.image.ThumbnailImage object at 0x7f040c328310>>
> viseron | 2025-03-09 11:24:45.533 [DEBUG ] [viseron.states] - Setting state of image.mobile_test_latest_thumbnail to state: unknown, attributes {'name': 'MobileTest Latest Thumbnail', 'domain': 'image', 'start_time': None, 'thumbnail_path': None}
> viseron | 2025-03-09 11:24:45.650 [DEBUG ] [viseron.components.ffmpeg.recorder.mobile_test] - Initializing recorder
> viseron | 2025-03-09 11:24:45.652 [DEBUG ] [viseron.components.ffmpeg.camera.mobile_test] - Initializing camera MobileTest
> viseron | 2025-03-09 11:24:45.652 [DEBUG ] [viseron.components.ffmpeg.camera.mobile_test] - Resolution: 1920x1080 @ 30 FPS
> viseron | 2025-03-09 11:24:45.653 [DEBUG ] [viseron.components.ffmpeg.camera.mobile_test] - Camera MobileTest initialized
> viseron | 2025-03-09 11:24:45.654 [DEBUG ] [viseron.core] - Registering domain camera with identifier mobile_test
> viseron | 2025-03-09 11:24:45.654 [INFO ] [viseron.components] - Setup of domain camera for component ffmpeg with identifier mobile_test took 8.8 seconds
> viseron | 2025-03-09 11:24:45.657 [DEBUG ] [viseron.components.nvr.nvr.mobile_test] - Initializing NVR for camera MobileTest
> viseron | 2025-03-09 11:24:45.659 [INFO ] [viseron.components.nvr.nvr.mobile_test] - Motion detector is disabled
> viseron | 2025-03-09 11:24:45.661 [INFO ] [viseron.components.nvr.nvr.mobile_test] - Object detector is disabled
> viseron | 2025-03-09 11:24:45.662 [DEBUG ] [viseron.components.nvr.nvr.mobile_test] - Running without any detectors
> viseron | 2025-03-09 11:24:45.664 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic no_detector/mobile_test/result, <queue.Queue object at 0x7f040c776800>
> viseron | 2025-03-09 11:24:45.665 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic mobile_test/camera/frame_bytes, <queue.Queue object at 0x7f040c7ba4d0>
> viseron | 2025-03-09 11:24:45.666 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(NVR_mobile_test, initial)> in the watchdog
> viseron | 2025-03-09 11:24:45.667 [DEBUG ] [viseron.components.nvr.nvr.mobile_test] - Waiting for first frame
> viseron | 2025-03-09 11:24:45.667 [DEBUG ] [viseron.states] - Adding entity MobileTest Operation State from component nvr
> viseron | 2025-03-09 11:24:45.670 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/mobile_test/nvr/operation_state, <bound method OperationStateSensor.handle_event of <viseron.components.nvr.sensor.OperationStateSensor object at 0x7f040c3282b0>>
> viseron | 2025-03-09 11:24:45.672 [DEBUG ] [viseron.states] - Setting state of sensor.mobile_test_operation_state to state: unknown, attributes {'name': 'MobileTest Operation State', 'domain': 'sensor'}
> viseron | 2025-03-09 11:24:45.686 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CamerasAPIHandler.get_cameras(*args=[], **kwargs={}, request_arguments={})
> viseron | 2025-03-09 11:24:45.691 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CamerasAPIHandler.get_failed_cameras(*args=[], **kwargs={}, request_arguments={})
> viseron | 2025-03-09 11:24:45.704 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CamerasAPIHandler.get_failed_cameras(*args=[], **kwargs={}, request_arguments={}), message repeated 2 times
> viseron | 2025-03-09 11:24:45.738 [DEBUG ] [viseron.states] - Setting state of sensor.mobile_test_operation_state to state: idle, attributes {'name': 'MobileTest Operation State', 'domain': 'sensor'}
> viseron | 2025-03-09 11:24:45.827 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic viseron/signal/shutdown, <bound method NVR.stop of NVR_mobile_test>
> viseron | 2025-03-09 11:24:45.829 [DEBUG ] [viseron.components.ffmpeg.camera.mobile_test] - Starting capture thread
> viseron | 2025-03-09 11:24:45.830 [DEBUG ] [viseron.watchdog] - Registering <RestartableThread(viseron.camera.mobile_test, initial daemon)> in the watchdog
> viseron | 2025-03-09 11:24:45.831 [WARNING ] [viseron.components.ffmpeg.stream.mobile_test] - Container mp4 does not support pcm_mulaw audio codec. Audio will be transcoded as aac.
> viseron | 2025-03-09 11:24:45.834 [DEBUG ] [viseron.components.ffmpeg.stream.mobile_test] - FFmpeg decoder command: ffmpeg_mobile_test -hide_banner -loglevel error -avoid_negative_ts make_zero -fflags nobuffer -flags low_delay -strict experimental -fflags +genpts -use_wallclock_as_timestamps 1 -vsync 0 -timeout 5000000 -rtsp_transport tcp -i rtsp://*****:*****@192.168.1.6:1935/h264_ulaw.sdp -f hls -hls_time 5 -hls_segment_type fmp4 -hls_list_size 10 -hls_flags program_date_time+delete_segments -strftime 1 -hls_segment_filename /tmp/viseron/segments/mobile_test/%s.m4s -c:v copy -c:a aac /tmp/viseron/segments/mobile_test/index.m3u8 -vf transpose=2,transpose=2,drawtext=text='%{localtime}':x=(w-tw):y=h-(2*lh):fontcolor=white:box=1:boxcolor=0x00000000@1:fontsize=26,fps=1 -f rawvideo -pix_fmt nv12 pipe:1
> viseron | 2025-03-09 11:24:45.836 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"subscribe_timespans","camera_identifiers":["mobile_test"],"date":"2025-03-09","debounce":5,"command_id":13}
> viseron | 2025-03-09 11:24:45.837 [WARNING ] [viseron.components.ffmpeg.stream.mobile_test] - Container mp4 does not support pcm_mulaw audio codec. Audio will be transcoded as aac.
> viseron | 2025-03-09 11:24:45.847 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/file_created/mobile_test/recorder/segments/*, <function subscribe_timespans.<locals>.forward_timespans at 0x7f040c321900>
> viseron | 2025-03-09 11:24:45.848 [DEBUG ] [viseron.components.data_stream] - Subscribing to data topic event/file_deleted/mobile_test/recorder/segments/*, <function subscribe_timespans.<locals>.forward_timespans at 0x7f040c321900>
> viseron | 2025-03-09 11:24:45.860 [INFO ] [viseron.components.nvr.nvr.mobile_test] - NVR for camera MobileTest initialized
> viseron | 2025-03-09 11:24:45.875 [DEBUG ] [viseron.states] - Setting state of toggle.mobile_test_connection to state: on, attributes {'name': 'MobileTest Connection', 'domain': 'toggle'}
> viseron | 2025-03-09 11:24:45.887 [INFO ] [viseron.components] - Setup of domain nvr for component nvr with identifier mobile_test took 0.2 seconds
> viseron | 2025-03-09 11:24:45.902 [DEBUG ] [viseron.helpers.storage] - Writing data to /config/.viseron/critical_components_config
> viseron | 2025-03-09 11:24:45.909 [INFO ] [viseron.core] - Viseron initialized in 10.0 seconds
> viseron | 2025-03-09 11:24:45.921 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to EventsAPIHandler.get_events(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'date': '2025-03-09'})
> viseron | 2025-03-09 11:24:45.929 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CameraAPIHandler.get_camera_endpoint(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'failed': False})
> viseron | 2025-03-09 11:24:45.933 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:24:45.965 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:24:45.972 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 70.18ms
> viseron | 2025-03-09 11:24:46.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:24:47.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:24:48.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:24:49.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 4 times
> viseron | 2025-03-09 11:24:50.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 5 times
> viseron | 2025-03-09 11:24:51.094 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:24:51.114 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:24:51.117 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 26.29ms
> viseron | 2025-03-09 11:24:51.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:24:52.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:24:53.120 [ERROR ] [viseron.components.ffmpeg.stream.mobile_test] - Fontconfig error: Cannot load default config file
> viseron | 2025-03-09 11:24:53.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:24:54.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:24:55.093 [DEBUG ] [viseron.states] - Setting state of binary_sensor.mobile_test_connected to state: on, attributes {'name': 'MobileTest Connected', 'domain': 'binary_sensor'}
> viseron | 2025-03-09 11:24:55.152 [DEBUG ] [viseron.states] - Setting state of binary_sensor.mobile_test_still_image_available to state: on, attributes {'name': 'MobileTest Still Image Available', 'domain': 'binary_sensor'}
> viseron | 2025-03-09 11:24:55.155 [DEBUG ] [viseron.components.nvr.nvr.mobile_test] - First frame received
> viseron | 2025-03-09 11:24:55.244 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CameraAPIHandler.get_camera_endpoint(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'failed': False})
> viseron | 2025-03-09 11:24:55.248 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to CameraAPIHandler.get_camera_endpoint(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'failed': False}), message repeated 2 times
> viseron | 2025-03-09 11:24:55.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:24:56.197 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:24:56.211 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:24:56.213 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 20.13ms
> viseron | 2025-03-09 11:24:56.336 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:24:57.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:24:58.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:24:59.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 4 times
> viseron | 2025-03-09 11:25:00.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 5 times
> viseron | 2025-03-09 11:25:01.340 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 6 times
> viseron | 2025-03-09 11:25:01.348 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:25:01.361 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:25:01.363 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 29.52ms
> viseron | 2025-03-09 11:25:02.337 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:25:03.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:25:04.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:25:05.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 4 times
> viseron | 2025-03-09 11:25:06.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 5 times
> viseron | 2025-03-09 11:25:06.486 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:25:06.503 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:25:06.506 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 23.63ms
> viseron | 2025-03-09 11:25:07.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:25:08.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:25:08.897 [DEBUG ] [viseron.components.webserver.websocket_api] - Received {"type":"ping","command_id":14}
> viseron | 2025-03-09 11:25:09.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:25:10.336 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:25:11.337 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:25:11.630 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:25:11.642 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:25:11.644 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 17.21ms
> viseron | 2025-03-09 11:25:12.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:25:13.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:25:14.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:25:15.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 4 times
> viseron | 2025-03-09 11:25:16.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 5 times
> viseron | 2025-03-09 11:25:16.780 [DEBUG ] [viseron.components.webserver.api.handlers] - Routing to HlsAPIHandler.get_hls_playlist_time_period(*args=[], **kwargs={'camera_identifier': 'mobile_test'}, request_arguments={'start_timestamp': 1741512227, 'daily': True, 'end_timestamp': None})
> viseron | 2025-03-09 11:25:16.797 [ERROR ] [viseron.components.webserver.api.v1.hls] - Could not find init.mp4 file for camera mobile_test
> viseron | 2025-03-09 11:25:16.799 [WARNING ] [tornado.access] - 404 GET /api/v1/hls/mobile_test/index.m3u8?start_timestamp=1741512227&daily=true (172.19.0.1) 23.56ms
> viseron | 2025-03-09 11:25:17.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test
> viseron | 2025-03-09 11:25:18.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 2 times
> viseron | 2025-03-09 11:25:19.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 3 times
> viseron | 2025-03-09 11:25:20.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 4 times
> viseron | 2025-03-09 11:25:21.335 [DEBUG ] [viseron.domains.camera.fragmenter.mobile_test] - Checking for new segments to fragment in /tmp/viseron/segments/mobile_test, message repeated 5 times
SETUP:
- Compose File:
name: Viseron
services:
viseron:
image: roflcoopter/viseron:dev
container_name: viseron
restart: always
shm_size: "1024mb"
volumes:
- ${SEGMENTS_LOCATION}:/segments
- ${SNAPSHOTS_LOCATION}:/snapshots
- ${THUMBNAILS_LOCATION}:/thumbnails
- ${EVENTCLIPS_LOCATION}:/event_clips
- ${RECORDINGS_LOCATION}:/recordings
- ${CONFIG_LOCATION}:/config
- /etc/localtime:/etc/localtime:ro
ports:
- 8888:8888
environment:
- PUID=1000
- PGID=1000
- Configs:
logger:
default_level: debug
storage:
recorder:
tiers:
- path: / # Will store segments in /segments folder inside the container
continuous:
max_age:
days: 14
max_size:
gb: 50
snapshots:
tiers:
- path: /
move_on_shutdown: true
max_age:
days: 1
max_size:
gb: 0.5
## Start by adding some cameras
ffmpeg:
camera:
mobile_test: # This value has to be unique across all cameras
name: MobileTest
host: !secret mobile_cam_ip
port: !secret mobile_cam_port
path: /h264_ulaw.sdp
username: !secret username
password: !secret password
stream_format: rtsp
fps: 30
width: 1920
height: 1080
video_filters:
- transpose=2
- transpose=2
- drawtext=text='%{localtime}':x=(w-tw):y=h-(2*lh):fontcolor=white:box=1:boxcolor=0x00000000@1:fontsize=26
## To tie everything together we need to configure one more component.
nvr:
mobile_test: # Run NVR for camera_1
Thank you so much for this amazing project ^_^
Metadata
Metadata
Assignees
Labels
No labels