Skip to content

Releases: JustinWoodring/slatron

v1.3.0 - The "Reel Deal" Update

Choose a tag to compare

@JustinWoodring JustinWoodring released this 07 Feb 17:31

What's Changed

🚀 Release Notes: Slatron v1.3.0 - The "Reel Deal" Update

This release introduces Spot Reels — looping content carousels for ad breaks, rotating promotions, and digital signage playlists — along with improved schedule grid visuals and expanded bumper/branding documentation.

📺 Spot Reels

A brand-new content type that bundles small items into a continuously looping carousel, perfect for commercial breaks, rotating promos, or informational displays.

  • Three Item Types: Images (static display), videos (short clips with duration cap), and web pages (live page capture to video)
  • Full CRUD API: Create, update, delete reels and manage individual items with ordering support
  • Drag-to-Reorder Editor: Dedicated editor page at /spot-reels/:id with inline editing, drag-to-reorder items, and live stats
  • Scheduled Like Any Content: Creating a spot reel auto-generates a companion content item — it shows up in the content picker with a purple badge and can be assigned to any schedule block
  • Looping Playback: The node fetches the reel from the server API and cycles through items indefinitely until the schedule block ends, with cancellation token support for clean transitions

🌐 Web Page Capture (Linux Only)

Spot reels support a web item type that captures live web pages as video using a pipeline of Xvfb + Chromium + FFmpeg x11grab.

  • Renders any URL to video at 1920x1080
  • 5-minute capture cache to avoid re-rendering on every loop cycle
  • Auto-detects Chrome/Chromium binary (chromium, chromium-browser, google-chrome, google-chrome-stable)
  • Requires Linux with xvfb, chromium, and ffmpeg installed — image and video items work on all platforms

🎨 Schedule Grid Enhancements

  • Spot Reel Blocks: Distinct purple/violet styling on the schedule grid, differentiating them from regular video blocks (cyan), DJ blocks (orange), and other content types
  • Type-Aware Rendering: The grid now properly reads content type from the content store instead of defaulting everything to "video" — this also fixes the DragOverlay showing incorrect colors while dragging blocks

📄 Documentation

  • README.md: Added Spot Reels section with usage guide, item type reference table, web capture requirements, and full API endpoint listing. Updated prerequisites with web capture dependencies and platform notes.

v1.1.0

Choose a tag to compare

@JustinWoodring JustinWoodring released this 11 Jan 17:50
a15b316

What's Changed

🚀 Release Notes: Slatron v1.1.0 - The "Ghost in the Machine" Update

This release brings Slatron to life with autonomous AI hosts, real-time visual monitoring, and a significantly matured scripting engine for advanced automation.

📜 Scripting Engine 2.0

The Rhai scripting engine has received major upgrades, making Slatron more programmable than ever.

  • Script Tester: The in-browser script editor now includes a fully functional Test Runner. You can execute scripts with mock arguments and see the output immediately without saving or affecting live playback.
  • Content Loader Scripts: You can now write scripts to programmatically find and import content.
    Usecase: Write a script to fetch the latest videos from a YouTube channel or RSS feed.
    Bulk Import: Return a JSON list of items to import them all at once into the Content Library.
  • Enhanced API: Improved stability and available functions for transform (metadata modification) and on_load (playback hooks) scripts.

🎙️ AI DJs & Orpheus

We've introduced a first-class AI DJ system capable of hosting your station.

  • Orpheus (Local TTS): Support for running fully offline, zero-cost AI DJs using local LLMs (via LM Studio) and the orpheus-3b-0.1-ft model.
  • Gemini TTS: Integrated Google's Gemini TTS for high-quality cloud-based voice synthesis.
  • Context Injector Scripts: Use Rhai scripts to dynamically inject real-time data (weather, news, server stats) into the DJ's system prompt before they speak.

🎧 Audio & Playback Enhancements

  • Audio Ducking: The node now automatically "ducks" (lowers) the volume of music/background content when the DJ starts speaking and restores it smoothly afterwards.
  • Reliability Fixes: Resolved a race condition ensuring continuous playback during DJ generation.

📺 Live Monitoring

  • Real-time Screenshots: Nodes capture and transmit a screenshot of their playback window every 60 seconds.
  • Live Dashboard: The "TVs" grid now displays these live screenshots for at-a-glance monitoring.

🛠️ CI/CD & Platform Support

  • Native ML Support: Builds now include the ml-support feature flag by default.
  • Cross-Platform Fixes: Resolved cross-compilation issues for Linux ARM64 (Raspberry Pi) and ensured support for macOS Apple Silicon (aarch64-apple-darwin).

Full Changelog: v1.0.0-rc-beta...v1.1.0

v1.0.0-rc-beta

Choose a tag to compare

@JustinWoodring JustinWoodring released this 15 Dec 21:38

V1.0.0 RC Alpha

V1.0.0 RC Alpha Pre-release
Pre-release

Choose a tag to compare

@JustinWoodring JustinWoodring released this 12 Dec 23:00