Burn test: only 3 of 8 Deltacast ports reached 'receiving'; the rest stuck 'connecting' forever. Root cause was NOT the board (all 8 SDI ports lock + feed framecache at 60fps — verified 8 live shm cursors). It was orphaned standby sidecars squatting host ports 7441-7445: new sidecars hit EADDRINUSE, got zero frames, and getStatus() reported 'connecting' forever. freeCapturePort() pre-filtered the container list by .Image regex, but after a wild-dragon-capture:latest rebuild the Docker list API degrades older containers' .Image to a bare image ID — so the tag regex silently SKIPPED the exact orphans holding the ports. Now we match by PORT env (survives rebuilds) and guard with the inspected Config.Image (which keeps the tag), so a port is always reclaimed before a new sidecar binds. This makes enable/disable 'just work' across image rebuilds. |
||
|---|---|---|
| .. | ||
| Dockerfile | ||
| index.js | ||
| package.json | ||