Skip to content

Commit 756c62c

Browse files
committed
v1.8.8 — Fix Bambu RTSP camera: drop -tls_verify (unsupported by bundled ffmpeg)
1 parent e3319bb commit 756c62c

4 files changed

Lines changed: 16 additions & 6 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,14 @@ Versions follow [Semantic Versioning](https://semver.org/).
55

66
---
77

8+
## v1.8.8 — 2026-05-29
9+
10+
### Fixed
11+
12+
- **Bambu RTSP cameras (X1C / X1E / P2S / H2x) now actually stream** — the camera launched ffmpeg with `-tls_verify 0`, an option the bundled ffmpeg doesn't recognise, so it errored out and showed nothing as soon as it reached a reachable printer. Removed the flag — TLS verification is off by default, so the printer's self-signed certificate is still accepted. This completes the cross-platform camera fix (Windows + macOS), verified live against a P2S.
13+
14+
---
15+
816
## v1.8.7 — 2026-05-29
917

1018
### Fixed

‎WORKLOG.md‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
1-
# Worklog — v1.8.7 (in progress)
1+
# Worklog — v1.8.8 (in progress)
22

33
## Added
44

55
## Changed
66

77
## Fixed
88

9-
- **Bundled ffmpeg not found at runtime on packaged Windows (RTSP camera dead despite v1.8.6)** — `main.js`
10-
- `_detectFfmpeg` used `require('ffmpeg-static').replace('app.asar', 'app.asar.unpacked')`, which points inside `app.asar` — a path the OS cannot spawn (and `fs.accessSync` can even false-positive on it via the asar shim, so a bogus binary path gets selected). Now keyed on `app.isPackaged`: in a packaged app the binary path is built straight from `process.resourcesPath` (`…/resources/app.asar.unpacked/node_modules/ffmpeg-static/ffmpeg.exe`, the real on-disk, spawn-safe location); in dev it uses `require('ffmpeg-static')`. Windows manual-install fallbacks kept.
11-
- Added diagnostics: `[ffmpeg] using <path>` / `[ffmpeg] NOT FOUND — checked: …` and `[bambu-rtsp:<key>] launching ffmpeg → rtsps://bblp:***@<ip>:322 (bin: …)`, landing in `electron-log` (`%APPDATA%\Tiger Studio Manager\logs\main.log`).
9+
- **Bambu RTSP camera failed with "Option tls_verify not found" (no stream on bundled ffmpeg)** — `main.js`
10+
- The RTSP launch passed `-tls_verify 0` before `-i`, applied to the rtsp demuxer. Older ffmpeg (the bundled ffmpeg-static 6.0) has no `tls_verify` on the rtsp demuxer → ffmpeg exits code 1 when it reaches the TLS stage of a reachable printer. Homebrew ffmpeg 8.x has it, which masked the bug in dev before ffmpeg-static was bundled. Removed the flag — the tls protocol defaults to `verify=0`, so the printer's self-signed cert is still accepted (works on ffmpeg 6.0 and 8.x). This was the real reason the P2S camera showed no stream on Windows (and on macOS once it switched to the bundled binary).
1211

1312
## Removed
1413

‎main.js‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1853,7 +1853,10 @@ ipcMain.handle('timelapse:download', async (_evt, videoUrl, suggestedFilename) =
18531853
const proc = spawn(_ffmpegBin, [
18541854
'-loglevel', 'error', // show errors in main-process console
18551855
'-rtsp_transport', 'tcp',
1856-
'-tls_verify', '0', // ignore self-signed printer cert
1856+
// No -tls_verify: the rtsp demuxer in older ffmpeg (e.g. the bundled
1857+
// ffmpeg-static 6.0) doesn't expose it → "Option tls_verify not found".
1858+
// The tls protocol defaults to verify=0 anyway, so the printer's
1859+
// self-signed cert is accepted without it (works on ffmpeg 6.0 and 8.x).
18571860
'-i', rtspUrl,
18581861
'-vf', 'fps=5', // ~5 fps is plenty for a status cam
18591862
'-f', 'image2pipe',

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "tigertag-inventory",
3-
"version": "1.8.7",
3+
"version": "1.8.8",
44
"description": "Tiger Studio Manager — desktop app",
55
"main": "main.js",
66
"engines": {

0 commit comments

Comments
 (0)