Source inventory for integrated 24/7 operation.
Persistent GStreamer playout, three concurrent channels, query-driven auto-scheduling, the Commit-to-Air gate, and operator takeover controls.
Open-source civic meeting software - controlled beta
The bounded local workflow -- create or upload recorded media, rehearse that exact sample privately, package it privately, explicitly approve Portal publication, and confirm resident playback -- was proven end-to-end against rc17's exact bytes on 2026-07-20; rc18 carries the same code path but that full walkthrough has not yet been re-run on rc18's shipped bytes. Live ingest, 24/7 station operation, hardware/headend delivery, external providers, and app stores need separate integration and field proof.
What it solves
rc17's stock acceptance run (2026-07-20) covered exact-sample private rehearsal, private packaging, explicit Portal approval, and resident playback; that walkthrough has not yet been re-run on rc18's exact bytes. The broader source inventory below is not a stock acceptance claim.
Persistent GStreamer playout, three concurrent channels, query-driven auto-scheduling, the Commit-to-Air gate, and operator takeover controls.
Captions, sourced summaries, custom metadata, real RFC-3161 timestamped record exports, and a meeting-agenda sidebar synced to the video.
Portal playback was proven in rc17's stock acceptance run (2026-07-20) and has not yet been separately re-verified on rc18's exact bytes. Podcast, Internet Archive, YouTube, and native app distribution require separate provider/store proof.
Inside CivicCast
These modules exist in the source tree and have repo evidence, but live media, hardware, headends, providers, app stores, and unattended station operation still require separate field acceptance.
Three concurrent channels, source hot-swap without TS continuity breaks, and IP-TS / SRT / RTMP / HLS / NDI software paths. SDI/DeckLink remains config-gated and hardware proof pending through the station-supplied relay path.
Real platform-idiomatic starter source for all six targets that builds with each platform's own toolchain. Store-ready polish (artwork, store metadata, accessibility) is per-target follow-up.
Approved bulletin slides are wired for production use. Full multi-zone CG rendering for L-bar, lower-third, bug, ticker, emergency, and live-video layouts remains contract-only until runtime proof lands.
SDI / HDMI / NDI inputs or RTSP / SRT / HLS / RTMP / MPEG-TS, one-shot or weekly recurrence, arm-record-finalize state machine, an S8 (source-loss) alert on source failure.
As-run / proof-of-performance logs, XMLTV / X-List / CSV EPG export, franchise hours-by-category, per-underwriter affidavits, and a billing export.
Spot-as-asset, rotation rules, break insertion, per-underwriter affidavits via the as-run join - PEG keeps the for-profit underwriting revenue, on the rails.
Local faster-whisper captions with fail-closed decode-back status, per-sink loudness target, CAP / IPAWS / NWS / AMBER display, EAS attention-tone stripping on web/OTT egress, SAP / descriptive-audio routing. The native caption runtime is built in software. Recorded-media packaging and playback were proven against rc17's exact bytes on 2026-07-20 and carry into rc18's code path; live ingest remains blocked until a server-side media probe and station egress path are separately verified.
Chaptered navigation, public agenda sidebar with seek, plain-text import, optional agenda PDF beside the player.
Per-feature model selection across local Ollama, Ollama Cloud, and OpenRouter; defaults adapt to detected RAM. No vendor lock-in on captions, translation, or summaries.
Meeting night
The admin, operator, clerk, and technical helper get different tools because they have different jobs. CivicCast keeps those paths connected without making everyone learn the same server vocabulary.
Create the first admin, save recovery information, prepare storage, and rehearse backup.
Rehearse an exact recorded sample privately (last proven end-to-end on rc17's exact bytes, 2026-07-20; rc18's shipped build has not yet been separately re-walked). Real live use still requires a separately verified server-side media probe.
Check captions, summaries, timestamps, metadata, and signed record exports.
Send approved material to residents, archives, subscribers, and optional provider lanes.
Use feedback from real meetings to harden the next release and the next station setup.
Who it is for
Own setup, recovery, records, publishing policy, and the public-facing archive.
Admin guideFor uploaded recordings, package privately, approve publication, confirm resident playback, and hand the record to the clerk. Live operation requires separately proven ingest.
Operator guideEvaluate the broader playout, bulletin, scheduled-recording, underwriting, and reporting source inventory only with separate station-device evidence.
3.0 master specInstaller status - controlled beta
A genuine clean-Windows test exposed concurrent bootstrap, Windows-servicing, and missing-progress-feedback defects in v1.0.0-rc13. It is withdrawn from beta use.
v1.0.0-rc18 is the current release. It carries rc15's clean-Windows installer repairs (validated from a WSL-disabled baseline through cold-reboot recovery), rc16's published UI/UX repairs, rc17's beta-blocker fixes, and the sixteen stage-gate fixes. Do not install rc13 — and do not use an older prerelease, a source-code ZIP, or an untagged build.
v1.0.0-rc18 is the approved installer for the controlled beta. rc18 fixes all sixteen findings a full stage gate raised against the rc17 line, three of them Critical - including a simulated archive that produced a link looking like a genuine archive.org permalink for a meeting that was never archived. Its installer is built from the gate-cleared main branch, Authenticode-signed, and proven on a genuinely clean Windows host, and its stage-gate re-run returned no blocker or critical findings. rc17 remains downloadable from its release page as the rollback target but carries all sixteen findings. rc18's proof boundary is stated at the top of its verification record.
Verify before you run it — SHA-256
af4d2017c6287eaed8cb4b1553d539281fc14c3e3863869c0ea5b8d2e73c311b,
243,742,408 bytes, Authenticode signed
CN=Scott Converse. In PowerShell:
Get-FileHash .\civiccast-1.0.0-rc18-windows-setup.exe -Algorithm SHA256
Start here
New user, operator, records, and technical material are separated so people can find the next useful step quickly.