How To Set Up Song and Media Requests

Media Requests lets viewers request songs with !sr <link or search> while you control approval, playback, and queue limits.

Choose a Playback Mode

  1. Open Media Requests.
  2. Choose Spotify Only or YouTube Only from the playback mode menu.

For Spotify, connect Spotify under Settings → Connect and reconnect if SheevChat requests updated permissions. Spotify playback remains in the Spotify desktop app and uses Spotify's active device.

In Spotify Only mode, Media Requests shows Spotify's current item and the available Up next snapshot. Pause, resume, skip, and volume controls act directly on the active Spotify session even when the current track is not part of a SheevChat-managed request queue.

For YouTube, keep the Media Requests page open in a browser. YouTube links, video IDs, searches, and playlists resolve and play through this browser player. Normal YouTube music playback does not require yt-dlp, FFmpeg, or MPV.

Choose and Open the Browser Player

You can configure the player from Settings → General → Media Request Playback or from the Settings tab inside Media Requests:

  1. Choose System default, Chrome, Edge, Firefox, Brave, or Manual path as the Preferred Browser.
  2. If using Manual path, enter the full path to the browser application.
  3. Save the browser preference.
  4. Click Open Media Requests.

Keep the browser page open while streaming. The SheevChat and Browser Player indicators should both show connected. If the player closes or disconnects, open it again; the queue and playback state synchronize when it reconnects.

Configure Viewer Requests

On the Settings tab, choose whether Spotify or YouTube requests require approval. Set sensible limits for:

  • Playlists and maximum playlist items
  • Maximum song duration
  • Per-user cooldown
  • Total queue size
  • Track re-request cooldown
  • Explicit Spotify tracks and blocked keywords
  • Default volume and whether the queue survives a restart

Playlist imports and the total queue can each be configured up to 5,000 items. YouTube playlist loading continues beyond the first 100 entries when more are publicly available, honors the configured limit, preserves playlist order, and avoids duplicate additions.

Enable Shuffle Playlists when each loaded playlist should receive one randomized order. That order persists with the remaining queue across restarts instead of reshuffling again.

Use Mods Bypass Cooldowns if moderators should be able to manage requests without waiting.

Run the Queue

Viewers request a track with !sr <song, artist, link, or YouTube video ID>. Review requests under Pending Approval, then approve or reject them.

Queue and playback controls include:

  • Play, pause, skip, seek, and volume
  • Play First when nothing is currently playing
  • Play Next while a track is playing
  • Move an individual queued item into the next position
  • Clear the queue

Spotify queue polling continues while playback is paused. Temporary Spotify errors or rate limits keep the last good queue visible rather than clearing it. Spotify supplies a current non-paginated queue snapshot, so Radio or provider-managed playback may expose fewer upcoming items than expected.

Tracks include buttons for their YouTube or Spotify website when a direct provider URL is available. When it is not, SheevChat offers a helpful provider search using the track information instead.

You can paste a YouTube playlist into the Queue tab and choose Append to Queue or Replace Queue. Saved playlist presets make recurring background playlists faster to load.

Music controls and permissions are available under Bot Commands → Commands → Music Controls. Moderator commands include queue and playback management, plus !togglesr to open or close requests.

Add Now Playing to Your Stream

Open Settings → Overlays, configure the standalone YouTube Media or Spotify source, copy its URL, and add it to OBS or Streamlabs Desktop as a Browser Source.

Alternatively, add YouTube Media Queue or Spotify widgets to an Overlay Builder layout so they can share one source with other widgets.

Song requests can also be added as actions in Commands, Timers, Automations, or SheevPad.

See How To Pause Music During Stream Events when raids, alerts, or spoken segments should temporarily interrupt playback.

Common Problems

  • Browser player is not connected: Open Media Requests in the preferred browser and leave the page running.
  • Preferred browser does not open: Confirm the browser is installed or correct the Manual Browser Path. SheevChat may fall back to a normal browser tab.
  • Nothing plays after approval: Confirm the request is in Queue, both connection indicators are healthy, then click Play First.
  • Search or playlist fails: Try a direct YouTube URL or video ID and verify the browser can reach YouTube.
  • Playlist stops at the configured amount: Increase Max Playlist Items and Queue Size Limit, up to 5,000.
  • Installing yt-dlp or MPV did not help music playback: Normal YouTube requests use the browser player, not those optional tools.
  • Spotify does not play: Confirm Spotify is connected and has an available active playback device.
  • Spotify queue appears short: SheevChat can display only the current queue snapshot returned by Spotify.
  • Spotify controls fail without a SheevChat request: Confirm the Spotify account has playback-control access and an active device.
  • OBS source shows nothing: Confirm the overlay URL and its Browser Source dimensions; the Media Requests browser player itself is for playback control, not capture.