diff --git a/scripts/daemon/lesavka-core.sh b/scripts/daemon/lesavka-core.sh index febef31..21b66b7 100644 --- a/scripts/daemon/lesavka-core.sh +++ b/scripts/daemon/lesavka-core.sh @@ -114,10 +114,26 @@ echo 32 >"$U/req_number" 2>/dev/null || true # ----------------------- UVC function (usb‑video) ------------------ mkdir -p "$G/functions/uvc.usb0" -mkdir -p "$G/functions/uvc.usb0/control/header" -printf '\x50\x00\x00\x00' > "$G/functions/uvc.usb0/control/header/h_video" -mkdir -p "$G/functions/uvc.usb0/control/header/strings/0x409" -echo "Lesavka UVC" > "$G/functions/uvc.usb0/control/header/strings/0x409/label" +F="$G/functions/uvc.usb0" + +# -- 1. BUILD A MINIMAL MJPEG FORMAT (1280×720 @30 fps) ------------ +mkdir -p "$F/streaming/uncompressed/u1" +echo 1280 >"$F/streaming/uncompressed/u1/wWidth" +echo 720 >"$F/streaming/uncompressed/u1/wHeight" +echo 2764800 >"$F/streaming/uncompressed/u1/dwMaxVideoFrameBufferSize" +echo 333333 >"$F/streaming/uncompressed/u1/dwFrameInterval(0)" # 30 fps +echo 1 >"$F/streaming/uncompressed/u1/bFrameIndex" +echo 1 >"$F/streaming/uncompressed/u1/bmFramingInfo" + +# -- 2. STREAMING‑HEADER and CONTROL‑HEADER LINKS (required) ------- +mkdir -p "$F/streaming/header" +ln -sf ../../uncompressed/u1 "$F/streaming/header/h" # first alt‑setting +mkdir -p "$F/control/header" +ln -sf ../../streaming/header/h "$F/control/header/h" # tie to control IF + +# -- 3. Human‑readable string for the camera ----------------------- +mkdir -p "$F/control/header/strings/0x409" +echo "Lesavka UVC" >"$F/control/header/strings/0x409/label" # ----------------------- configuration ----------------------------- mkdir -p "$G/configs/c.1/strings/0x409"