From b5235e0a2c4318f550d71b4fd4269668b3c703ff Mon Sep 17 00:00:00 2001 From: Wild Dragon Dev Date: Wed, 3 Jun 2026 19:02:04 +0000 Subject: [PATCH] fix(node-agent): always mount /dev/shm into sidecars for framecache access --- services/node-agent/index.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/services/node-agent/index.js b/services/node-agent/index.js index 67dc78a..e080827 100644 --- a/services/node-agent/index.js +++ b/services/node-agent/index.js @@ -410,6 +410,9 @@ async function handleSidecarStart(body, res) { } = body; const binds = [`${LIVE_DIR}:/live`]; + // Always mount /dev/shm so the sidecar can access framecache slots. + if (fs.existsSync('/dev/shm')) binds.push('/dev/shm:/dev/shm'); + if (sourceType === 'sdi') binds.unshift('/dev/blackmagic:/dev/blackmagic'); if (sourceType === 'deltacast') { // Bind each /dev/deltacast* node that exists on the host into the container. @@ -417,8 +420,6 @@ async function handleSidecarStart(body, res) { try { const dcEntries = fs.readdirSync('/dev').filter(n => /^deltacast\d+$/.test(n)); for (const d of dcEntries) binds.push(`/dev/${d}:/dev/${d}`); - // VideoMaster SDK needs the board IPC shared-memory segment mounted too. - if (fs.existsSync('/dev/shm/deltacast')) binds.push('/dev/shm/deltacast:/dev/shm/deltacast'); } catch (_) { /* /dev always exists */ } }