{"id":"pg_01M362MX76EYSYJY7C3Y3P8RHA","space":"openvibe","slug":"openvibe-live","url":"https://openvibe.wiki/w/openvibe/openvibe-live","state":"published","visibility":"public","revision":1,"title":"OpenVibe.Live","summary":"The streaming service of the OpenVibe network: ingest, playback, chat, channels, monetization, moderation and restreaming.","body_markdown":"**OpenVibe.Live** is described in its README as \"the streaming front of the OpenVibe network\". The repository contains the Live server, browser assets and runtime configuration.\n\n## What it owns\n\nAccording to the README, Live owns:\n\n- streaming ingest (RTMP, WHIP, WebRTC and JSMPEG) and viewer playback;\n- chat, moderation and anonymous chat support;\n- channels, streamer controls, admin endpoints and restream management;\n- Vibes (PayPal tipping and cashout), channel points and comments;\n- the song-request/watch-party queue;\n- live-stream thumbnails and AI stream memories.\n\n## Dependencies\n\nLive depends on two sibling services. [[OpenVibe.Network]] provides the SSO/OAuth2 provider and JWT public-key verification, the OpenCoins wallet, URL registry overrides, notifications and shared browser assets. [[OpenVibe.Media]] provides VOD recording, storage, playback and health, asynchronous clip cutting, pastes, VOD and clip thumbnails, and B2/R2 storage tiering.\n\nLive keeps its existing `/api/vods`, `/api/clips`, `/api/pastes` and `/api/thumbnails` paths through thin proxies that forward to Media, and Media calls back at `POST /internal/media-webhook` when a VOD or clip is ready. OpenCoins earn and spend operations go through the Network wallet API, while Vibes and per-streamer channel points stay local to Live.\n\n## Runtime\n\nThe entry point is `server/index.js` on port 3000, a Node/Express backend whose primary database is SQLite (`data/live.db`). RTMP ingest uses `node-media-server`, and an optional WebRTC SFU uses `mediasoup`. The README lists Node.js 18+, npm, FFmpeg, a running OpenVibe.Network and, for media features, a running OpenVibe.Media as requirements. Its nginx reference configuration covers `openvibe.live`, `www.openvibe.live` and `ingest.openvibe.live`.\n\n## Status\n\nThe README does not state a release stage. It documents a production path (`/opt/openvibe.live`) and a deploy script under which static-only changes never restart the server.\n","published_at":"2026-09-23T02:48:49.639Z","revision_published_at":"2026-09-23T02:48:49.639Z","revision_created_at":"2026-09-23T02:48:49.638Z","authorship":{"mode":"imported","workflow":null,"reviewed":false},"infobox":[{"key":"repository","label":"Repository","type":"url","value":"https://github.com/OpenVibers/OpenVibe.Live"},{"key":"domain","label":"Domain","type":"text","value":"openvibe.live"},{"key":"port","label":"Port","type":"number","value":3000},{"key":"runtime","label":"Runtime","type":"text","value":"Node.js 18+, Express, SQLite"}],"citations":[{"url":"https://github.com/OpenVibers/OpenVibe.Live/blob/c3847871148541a1eba7ee966809853d49f3b5b2/README.md","title":"OpenVibe.Live README (commit c384787)","source_item_id":null,"retrieved_at":"2026-09-22T12:00:00.000Z","quote":"the streaming front of the OpenVibe network","license_note":null}],"attachments":[],"links":[{"space":"openvibe","slug":"openvibe-media"},{"space":"openvibe","slug":"openvibe-network"}],"indexability":{"indexable":false,"reasons":["ai_generated_unreviewed"]}}