- fc_writer.h/fc_writer.c: new framecache slot writer module - Registers slot via POST /slots to framecache HTTP API on signal lock - Opens shm file returned by API (O_RDWR + mmap MAP_SHARED) - fc_writer_write(): atomic write_cursor advance + sem_post per frame - fc_writer_close(): DELETE /slots/:id + munmap + sem_close - HTTP calls via raw POSIX sockets (no libcurl dependency) - Parses host:port from FC_URL env var or --fc-url arg - main.c changes: - PortState gains slot_id, fc_url, fc_writer fields - --fc-url CLI arg + FC_URL env var (default http://localhost:7435) - On signal lock: fc_writer_open() before thread launch; falls back to FIFO if framecache unreachable (fc_writer == NULL) - video_thread: shm path primary (fc_writer != NULL), FIFO path fallback (fc_writer == NULL or LEGACY_FIFO=1) - Format JSON now includes slot_id field for node-agent consumption - Cleanup: fc_writer_close() before VHD_CloseBoardHandle - CMakeLists.txt: - Add fc_writer.c to build - Link rt (shm_open, sem_open) - LEGACY_FIFO option (OFF by default) for nodes without framecache Audio thread unchanged — audio stays in FIFO (shm audio is roadmap). |
||
|---|---|---|
| .. | ||
| deltacast-bridge | ||
| sdk | ||
| src | ||
| .dockerignore | ||
| build-with-decklink.sh | ||
| decklink-sdk16.patch | ||
| Dockerfile | ||
| package.json | ||
| patch_decklink.py | ||