[Unit]
Description=camera-streamer web camera for ArduCAM 16MP on Raspberry PI
After=network.target
ConditionPathExists=/sys/bus/i2c/drivers/imx519/10-001a/video4linux

[Service]
ExecStart=/usr/local/bin/camera-streamer \
  -camera-path=/base/soc/i2c0mux/i2c@1/imx519@1a \
  -camera-type=libcamera \
  -camera-format=YUYV \
  -camera-width=2328 -camera-height=1748 \
  -camera-options=rotation=90 \
  -camera-fps=15 \
  ; use two memory buffers to optimise usage
  -camera-nbufs=2 \
  ; the snapshot is 1438x1080
  -camera-snapshot.height=1080 \
  ; the video/webrtc is 958x720
  -camera-video.height=720 \
  ; the stream is 639x480
  -camera-stream.height=480 \
  ; bump brightness slightly
  -camera-options=brightness=0.1 \
  ; disable auto-focus
  -camera-auto_focus=1 \
  --http-listen=0.0.0.0 \
  --http-port=8080 \
  -rtsp-port

DynamicUser=yes
SupplementaryGroups=video i2c
Restart=always
RestartSec=10
Nice=10
IOSchedulingClass=idle
IOSchedulingPriority=7
CPUWeight=20
AllowedCPUs=1-2
MemoryMax=250M

[Install]
WantedBy=multi-user.target
