dragonflight/services/capture
ZGaetano a00a280689 fix(growing): ffmpeg reads video from saved FD 9 — fixes empty-output growing
ROOT CAUSE FOUND + verified. When growing video comes from fc_pipe, node pipes it to the bash orchestrator's stdin. ffmpeg ran as a backgrounded subshell merely inheriting fd 0 (0<&0). With a PIPE source (not the working file/FIFO case), that subshell was starved of the raw video -> filtergraph 'No filtered frames' -> empty mpeg2video -> raw2bmx broken pipe -> sidecar crash (write EPIPE). Reproduced exactly with 'fc_pipe | bash -c orchestrator'. Fix: save original stdin to FD 9 BEFORE the FIFO-priming fd games (exec 9<&0), point ffmpeg's fd0 at fd9 (0<&9), close 9 in raw2bmx + parent. Verified the live-equivalent path now produces a valid mpeg2video 4:2:2 yuv422p progressive 30000/1001 MXF matching the working Delta7 file. Also added EPIPE handlers so a broken pipe never crashes the sidecar.
2026-06-04 18:59:53 +00:00
..
decklink-bridge fix(decklink-bridge): prevent redundant fc_writer_open loops via last_format tracking 2026-06-04 01:10:47 +00:00
deltacast-bridge fix(deltacast-bridge): flush queued audio backlog to live edge on reader attach 2026-06-04 04:54:32 +00:00
sdk chore(capture): commit Blackmagic DeckLink SDK 16.0 Linux headers 2026-05-31 18:07:12 -04:00
src fix(growing): ffmpeg reads video from saved FD 9 — fixes empty-output growing 2026-06-04 18:59:53 +00:00
.dockerignore build(capture): add .dockerignore to keep stale bridge build/ out of image context 2026-06-02 15:23:03 +00:00
decklink-sdk16.patch fix(capture): proper SDK 16 patch via upstream FFmpeg master diff 2026-05-22 00:53:03 +00:00
Dockerfile revert(capture): Dockerfile copy paths to root-relative for compose build 2026-06-04 00:39:24 +00:00
package.json add services/capture/package.json 2026-04-07 21:58:29 -04:00
patch_decklink.py fix(capture): proper SDK 16 patch via upstream FFmpeg master diff 2026-05-22 00:53:03 +00:00