Advanced Features

Whitelists, themes, caching, and config backups.

Whitelist System

LYTE has separate whitelists for users and videos. Enable enforcement in config when you only want approved requests.

User Whitelist

The user whitelist (whitelisted_users.json) lists who can request songs. With ENFORCE_USER_WHITELIST on, only listed users can queue tracks.

Use cases:

  • Exclusive member-only song requests
  • VIP user access
  • Testing with a small group before going public
  • Moderator-only requests

Video Whitelist

The video whitelist (whitelisted_IDs.json) lists approved song IDs. With ENFORCE_ID_WHITELIST on, only those videos can be requested.

Use cases:

  • Curated playlist of approved songs
  • Family-friendly content filtering
  • Genre-specific streams (e.g., only rock music)
  • Copyright-safe content

Auto-Moderation Features

Auto-Ban Users

When AUTOBAN_USERS is enabled, users who attempt to request banned videos are automatically added to the banned users list.

Benefits:

  • Reduces manual moderation workload
  • Prevents repeat offenders
  • Maintains stream quality automatically

Auto-Remove Songs

When AUTOREMOVE_SONGS is enabled (default), songs are automatically removed from the queue after they finish playing.

Benefits:

  • Keeps queue clean and readable
  • Shows only upcoming songs
  • Reduces UI clutter

Theme System

LYTE ships with dark and light themes. You can add custom JSON or QSS themes in the themes folder.

Built-in Themes

  • Dark Theme: Default dark theme with green accents
  • Light Theme: Light theme with cyan accents

Custom Themes

You can create custom themes by creating JSON files in the themes folder. See the Theme Documentation for complete details.

Performance Features

Caching

LYTE caches some lookups for an hour:

  • Video Titles: Cached for 1 hour
  • Channel Names: Cached for 1 hour
  • Reduces API calls: Faster response times
  • Automatic: No configuration needed

Fast Title Fetching

Video info is fetched like this:

  • oEmbed API: Fast method for video titles
  • Web Scraping: Efficient channel name fetching
  • Fallback: Falls back to yt-dlp if needed
  • Performance: Much faster than traditional methods

Configuration Backup

LYTE automatically creates backup files:

  • Format: config.json.backup_YYYYMMDD_HHMMSS.json
  • Automatic: Created when configuration changes
  • Recovery: Can restore from backup if needed
  • Location: Same folder as config.json:
    • Exe installation: %LOCALAPPDATA%\LYTE\
    • Portable installation: Src\

Advanced Configuration Examples

Exclusive Member Stream

{
    "REQUIRE_MEMBERSHIP": "True",
    "ENFORCE_USER_WHITELIST": "False",
    "RATE_LIMIT_SECONDS": 60,
    "AUTOREMOVE_SONGS": "True"
}

Curated Playlist Stream

{
    "ENFORCE_ID_WHITELIST": "True",
    "ALLOW_URLS": "False",
    "RATE_LIMIT_SECONDS": 30,
    "AUTOREMOVE_SONGS": "True"
}

Public Stream with Moderation

{
    "REQUIRE_MEMBERSHIP": "False",
    "REQUIRE_SUPERCHAT": "False",
    "RATE_LIMIT_SECONDS": 30,
    "AUTOBAN_USERS": "True",
    "AUTOREMOVE_SONGS": "True"
}