========================================================================
  Duck Preview 0.1.0
  Session: 2026-05-14_09-36-27
========================================================================
  Platform : macOS-13.7.8-x86_64-i386-64bit
  Python   : 3.12.9
  PySide6  : 6.11.1
  Hardware : 4 logical CPUs, 16.0 GB RAM
  Log file : /Users/rafalkaczka/Repos/duck-preview/logs/duck-preview_2026-05-14_09-36-27.log
========================================================================

2026-05-14 09:36:27.061 [DEBUG  ] app.logging_setup: Pruned old log: duck-preview_2026-05-14_07-49-49.log
2026-05-14 09:36:27.127 [INFO   ] __main__: Application starting (session: 2026-05-14_09-36-27)
2026-05-14 09:36:27.279 [INFO   ] app.ui.main_window: Telemetry CSV: /Users/rafalkaczka/Repos/duck-preview/logs/duck-preview_2026-05-14_09-36-27.csv
2026-05-14 09:36:27.280 [DEBUG  ] app.ui.camera_view: Overlay layer added: TelemetryOverlay
2026-05-14 09:36:27.280 [DEBUG  ] app.ui.camera_view: Overlay layer added: BboxOverlay
2026-05-14 09:36:27.456 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber added: <bound method CameraView.on_frame of <app.ui.camera_view.CameraView(0x7f7a748690e0) at 0x2092e8c00>> (drop_if_busy=True)
2026-05-14 09:36:27.456 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber added: <bound method TelemetryCollector.on_frame of <app.telemetry.telemetry_collector.TelemetryCollector(0x7f7a74866290) at 0x2092e8080>> (drop_if_busy=False)
2026-05-14 09:36:27.461 [INFO   ] __main__: Application shutting down
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator: Cameras found: 1
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:   [0] HD USB CAMERA (id: 0x1420000032e40317)
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   3840x2160 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   2592x1944 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   2048x1536 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   1920x1080 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   1600x1200 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   1280x960 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   1280x720 @ 30.0 fps
2026-05-14 09:36:27.696 [INFO   ] app.camera.camera_enumerator:         NV12   1024x768 @ 30.0 fps
2026-05-14 09:36:27.697 [INFO   ] app.camera.camera_enumerator:         NV12   800x600 @ 30.0 fps
2026-05-14 09:36:27.697 [INFO   ] app.camera.camera_enumerator:         NV12   640x480 @ 30.0 fps
2026-05-14 09:36:27.697 [INFO   ] app.camera.camera_enumerator:         NV12   320x240 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator: Cameras found: 1
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:   [0] HD USB CAMERA (id: 0x1420000032e40317)
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   3840x2160 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   2592x1944 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   2048x1536 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   1920x1080 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   1600x1200 @ 30.0 fps
2026-05-14 09:36:27.698 [INFO   ] app.camera.camera_enumerator:         NV12   1280x960 @ 30.0 fps
2026-05-14 09:36:27.699 [INFO   ] app.camera.camera_enumerator:         NV12   1280x720 @ 30.0 fps
2026-05-14 09:36:27.699 [INFO   ] app.camera.camera_enumerator:         NV12   1024x768 @ 30.0 fps
2026-05-14 09:36:27.699 [INFO   ] app.camera.camera_enumerator:         NV12   800x600 @ 30.0 fps
2026-05-14 09:36:27.699 [INFO   ] app.camera.camera_enumerator:         NV12   640x480 @ 30.0 fps
2026-05-14 09:36:27.699 [INFO   ] app.camera.camera_enumerator:         NV12   320x240 @ 30.0 fps
2026-05-14 09:36:27.735 [INFO   ] app.camera.camera_service: Camera format requested: NV12 1280x720 @ 30 fps
2026-05-14 09:36:27.908 [INFO   ] app.camera.camera_service: Qt multimedia backend: AVFoundation
2026-05-14 09:36:27.908 [INFO   ] app.camera.camera_service: Camera active: HD USB CAMERA
2026-05-14 09:36:27.908 [INFO   ] app.camera.camera_service: Camera format ACTUAL: NV12 1280x720 @ 30 fps
2026-05-14 09:36:27.909 [INFO   ] app.ui.main_window: Camera streaming: HD USB CAMERA
2026-05-14 09:36:27.909 [INFO   ] app.camera.camera_service: Camera start requested: HD USB CAMERA
2026-05-14 09:36:27.909 [DEBUG  ] app.camera.uvc.macos: pyuvc not available — macOS UVC controls disabled
2026-05-14 09:36:27.910 [WARNING] app.camera.uvc: UVC: pyuvc not installed — UVC controls unavailable on macOS
2026-05-14 09:36:43.640 [DEBUG  ] app.ui.menu_bar: Model file selected: /Users/rafalkaczka/Repos/duck-preview/models/best_v1.pt
2026-05-14 09:36:43.641 [INFO   ] app.ui.main_window: Loading model: /Users/rafalkaczka/Repos/duck-preview/models/best_v1.pt
2026-05-14 09:36:43.641 [INFO   ] app.inference.worker_manager: Inference worker stopped
2026-05-14 09:36:43.708 [INFO   ] app.inference.worker_manager: Inference worker started (pid=3571, model=/Users/rafalkaczka/Repos/duck-preview/models/best_v1.pt)
2026-05-14 09:36:43.709 [DEBUG  ] app.inference.worker_manager: InferenceManager: resumed
2026-05-14 09:36:43.710 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber added: <bound method InferenceManager.submit_frame of <app.inference.worker_manager.InferenceManager(0x7f7a74867720) at 0x2092e8440>> (drop_if_busy=True)
2026-05-14 09:36:43.713 [INFO   ] app.ui.main_window: Inference enabled
2026-05-14 09:36:43.714 [DEBUG  ] app.inference.worker_manager: InferenceManager: paused
2026-05-14 09:36:43.714 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber not found for removal: <bound method InferenceManager.submit_frame of <app.inference.worker_manager.InferenceManager(0x7f7a74867720) at 0x2092e8440>>
2026-05-14 09:36:43.715 [INFO   ] app.ui.main_window: Inference disabled
2026-05-14 09:36:49.389 [INFO   ] app.inference.worker_manager: Inference device: cpu
2026-05-14 09:36:58.844 [DEBUG  ] app.inference.worker_manager: InferenceManager: resumed
2026-05-14 09:36:58.844 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber added: <bound method InferenceManager.submit_frame of <app.inference.worker_manager.InferenceManager(0x7f7a74867720) at 0x2092e8440>> (drop_if_busy=True)
2026-05-14 09:36:58.845 [INFO   ] app.ui.main_window: Inference enabled
2026-05-14 09:37:03.253 [DEBUG  ] app.inference.worker_manager: InferenceManager: paused
2026-05-14 09:37:03.254 [DEBUG  ] app.pipeline.frame_dispatcher: Subscriber not found for removal: <bound method InferenceManager.submit_frame of <app.inference.worker_manager.InferenceManager(0x7f7a74867720) at 0x2092e8440>>
2026-05-14 09:37:03.254 [INFO   ] app.ui.main_window: Inference disabled
2026-05-14 09:37:05.808 [INFO   ] app.inference.worker_manager: Inference worker stopped
2026-05-14 09:37:05.867 [INFO   ] app.camera.camera_service: Camera inactive
2026-05-14 09:37:05.867 [DEBUG  ] app.camera.camera_service: Camera stopped (internal)
2026-05-14 09:37:05.867 [INFO   ] app.ui.main_window: CSV telemetry: 8 rows written
