InfilTruth InfilTruth YouTube Video Sources

YouTube (Primary)

The current core platform for persistent live video, chat, and automated transcription in the InfilTruth Monitor.

Current Integration

YouTube is the best-supported video source due to mature IFrame Player API, reliable yt-dlp HLS extraction, and strong adoption by independent protest documenters.

How It Works in the Hub
  • Player: Persistent YouTube IFrame (createYouTubePlayer) that survives 18s data polls without reset. Lives in a stable container below the stream header.
  • Ingestion: live_stream_listener.py (yt-dlp for audio → Whisper for STT → local Grok for analysis). Outputs to research/live_transcripts.md and protest_alerts.log.
  • Chat: live_yt_chat_monitor.py for real-time comments.
  • Data: generate-data.py parses active_protest_streams.json (with video_id and YT URLs) into data/streams.json. Thumbnails via i.ytimg.com.
  • UI: Monitor sidebar lists active streams with YT thumbnails. Click to load persistent player + transcript feed + intel cards + APPROACH/MONITOR/RETREAT flagging.
  • Polling: JS startPolling(18000) refetches JSONs and merges updates (metadata-only for player).
Discovery & Configuration

Driven by research/sources.json (discovery_keywords turned into ytsearchN: + live_status filter) + live_stream_orchestrator.py. High-priority sources get direct /live URLs.

Why YouTube First

Advantages
  • Reliable long-form lives from independents (Unicorn Riot, Andrew Mercado, etc.).
  • Excellent yt-dlp + Whisper pipeline for transcripts.
  • Stable embed + public-ish chat.
  • Thumbnails and metadata are predictable.
Limitations (even here)

Still depends on external listener processes running. No native multi-platform player yet. Some streamers prefer other platforms for specific actions.

Extending Beyond YouTube

Other platforms (Twitch, Facebook, Instagram, TikTok) are supported for discovery via sources.json + agent tools (Firecrawl, X search). Video import is manual or link-out today. See the dedicated platform pages for instructions on adapting the pipeline (yt-dlp where possible, manual entries to research/, generate-data.py).

Back to InfilTruth Tools HubAll Sources