# Play a streamer’s clip when you shout them out

Add a Clip player to your overlay, and !so plays one of that streamer’s most-viewed clips on stream after the shoutout.

Updated 29 September 2026

## Before you start

You need an overlay in OBS. [Add an overlay to OBS](https://bloopbot.com/docs/widgets-in-obs) takes you from **New overlay** to a Browser Source; the Clip player is one more layer on it. The clip comes from Twitch and plays with its sound, so the streamer you shout out needs at least one public clip on Twitch.

## 1. Add a Clip player

1. Open **Overlays**, open the overlay you use in OBS, and choose **Add** at the top of the left panel.
2. Under **Chat & info**, open **Clip player** and choose **Add**. It lands in the middle of the canvas as a dashed card at the player’s size, so you can place and style it before any clip plays.
3. Drag it where you want it.
4. In **Content**, write the **Heading**. `$(name)` becomes the streamer’s name, so _Go check out $(name)!_ reads _Go check out PixelPal!_. Switch **Show heading** or **Show clip title** off if you want only the clip.
5. Set **Player width** anywhere from 400 to 1920 pixels. The height follows at 16:9, and never under 300.
6. Choose **Publish**.

![Studio's Add tab with the Clip player tile under Chat & info, beside the canvas showing the Clip player's placeholder card: the heading Go check out PixelPal!, a dashed box at the player's size with a clip icon, and a sample clip title.](https://bloopbot.com/docs/screenshots/shoutout-clips-add.jpg)

_The Clip player tile under Chat & info, and its placeholder card on the canvas._

![A Clip player selected in Studio, with its toolbar under it on the canvas and its settings beside: Show heading, Heading set to Go check out $(name)!, Show clip title, Player width 640 and Scale fixed at 1, with the note that the player keeps its own size.](https://bloopbot.com/docs/screenshots/shoutout-clips-panel.jpg)

_A Clip player’s Content tab: the heading, the clip title, Player width, and Scale fixed at 1._

**Scale** shows 1 and can’t be changed, and the layer has no resize or rotate handles: the player keeps its own size, because Twitch stops a clip playing by itself when its player is scaled or covered. Use **Player width** to make it bigger or smaller. The layer’s **Style** and **Parts** still dress the panel round the clip — its background, frame, heading and title — but the player itself can’t be styled.

## 2. Turn on the !so shoutout

The Starter pack’s **Shoutout** flow plays the clip. When you or a moderator type `!so pixelpal`, it shouts PixelPal out in chat, sends Twitch’s own shoutout, then plays one of PixelPal’s clips on your Clip player. Viewers can’t use it: the flow checks for moderators and you first. [Add permissions and cooldowns](https://bloopbot.com/docs/permissions-and-cooldowns) shows how to change who can.

**If you don’t have Shoutout yet:**

1. Open **Flows**, press **Add**, and add **Shoutout** on its own (it is in the **Starter** pack). It arrives paused.
2. Switch it on.

**If you added Shoutout before 29 September 2026**, the **Starter** pack shows **Update ready** under **Marketplace → Installed**:

1. Open **Marketplace**, then **Installed**, and open **Starter**.
2. If you haven’t changed your **Shoutout**, choose **Update**: it gets the clip step in place and stays on or off as it was.
3. If you have changed it, the row asks “Keep your version?”. **Use the new one** replaces it with the new Shoutout and keeps your version in the flow’s **History**. **Keep mine** leaves it exactly as it is; to add clips to it yourself, open it and put **Play a shoutout clip** after **Shout out a streamer**, with **Whose clip** set to `$(1)` ([Use the step in your own flow](https://bloopbot.com/docs/shoutout-clips#your-own-flow)).

[Update what you added](https://bloopbot.com/docs/the-marketplace#update) explains updates in full. Without a Clip player on your overlay, `!so` works as it always has: the shoutouts go out and no clip shows.

![The Starter pack’s Shoutout flow on the flow canvas: the !so command, a Who can trigger check set to moderators and up, Shout out a streamer, then Play a shoutout clip with its Played and No clip outputs.](https://bloopbot.com/docs/screenshots/shoutout-clips-flow.jpg)

_Starter’s Shoutout: the !so command, the moderator check, Shout out a streamer, then Play a shoutout clip._

## What viewers see

Nothing, until a shoutout plays a clip. Then the heading, the clip and its title appear together, the clip plays with its sound, and the layer hides again a moment after the clip ends. Now and then Twitch won’t hand over a clip’s video; that clip plays in Twitch’s own player instead, which Twitch keeps muted.

- The clip is picked at random from the streamer’s ten most-viewed clips of the past year, or of all time when they have none from the past year. When they have more than one, the next `!so` for them on your channel plays a different one.
- One clip plays at a time. A `!so` while a clip is playing waits its turn, up to three of them; a shoutout past that plays no clip, though the chat shoutout still happens.
- Every Clip player on your overlays plays the same clip at the same moment.
- An OBS source that you open or refresh while a clip is playing waits for the next one.

## Keep it playing: Twitch’s rules

When a clip plays in Twitch’s own player, Twitch only lets it start by itself when the player is plainly visible. Keep it that way:

- Leave the layer unscaled and uncovered: no other layer on top of it, and no custom CSS that moves, fades or scales it.
- In OBS, leave crop and filters off the overlay’s Browser Source.

## Hear the clip in OBS

The clip’s sound is part of the overlay’s Browser Source. For your viewers to hear it, tick **Control audio via OBS** in that Browser Source’s properties. OBS then mixes the source’s sound into your stream and recording.

With **Control audio via OBS** ticked, you won’t hear the clip yourself until OBS monitors it:

1. In OBS, open **Advanced Audio Properties** from the Audio Mixer’s gear or three-dot menu (or from **Edit → Advanced Audio Properties**).
2. Find the overlay’s Browser Source in the list and set its **Audio Monitoring** to **Monitor and Output**.

Until monitoring is on, OBS sends that sound only to your stream and recording. Your viewers hear it; this only lets you hear it too.

With **Control audio via OBS** off, which is OBS’s default, the page’s sound goes to your computer’s own audio output instead. Your viewers only hear it if OBS also captures your Desktop Audio.

## Try it without going live

1. In the overlay editor, open **Simulate** and choose **Play one of my clips**. It picks one of your own clips the same way `!so` picks one.
2. If the canvas isn’t at actual size, Studio asks: “Twitch only starts a clip in a canvas at actual size, as OBS shows it. Show the canvas at actual size while it plays? It goes back afterwards.” Choose **Show actual size and play**. While the clip plays, the canvas is drawn at one screen pixel per overlay pixel whatever your zoom, and scrolled to your Clip player. The Simulate panel closes for the run so nothing covers the player, and a line above the canvas tells you it is playing until the clip is done. Nothing is drawn over the overlay meanwhile. When the clip ends, the canvas goes back to your zoom and where you had scrolled to. Your zoom setting is never changed. Choose **Cancel** to leave the canvas as it is.
3. To play it in OBS too, tick **Also play on the live overlay in OBS** before you choose **Play one of my clips**. Viewers will see it.

The canvas is only a preview of where the clip sits; OBS shows the real thing. The canvas plays sound only while its speaker button is on.

## Use the step in your own flow

The step is **Play a shoutout clip**. Its one field, **Whose clip**, takes a name or a variable: `$(1)` is the first word after a command, and `$(raiderlogin)` the raiding channel on a **Raid** trigger. A leading `@` is ignored.

It leaves by **Played** once the clip is playing or waiting its turn, and by **No clip** when the name isn’t a Twitch account, the streamer has no public clips, Twitch doesn’t answer, or three clips are already waiting. The run log says which. When Twitch refused the clip’s file and it plays muted in Twitch’s own player, the run log says why. Connect a **Chat message** to **No clip** to say so in chat. **Test fire** plays no clip: the run log says whose clip it would have played.

## Troubleshooting

- **No clip plays, and the run log says they have no public clips.** That streamer has no clips Twitch shows publicly. The chat shoutout still went out.
- **In Studio, the clip plays with no sound.** The canvas’s sound starts off. Turn it on with the speaker button beside the zoom, then play the clip again. OBS plays it with sound.
- **A clip plays silently.** It played in Twitch’s own player, which Twitch mutes when it starts by itself, because Twitch refused to give that clip’s file or the file wouldn’t play in the browser. When Twitch refused, the run log’s **Play a shoutout clip** line says why. The next shoutout asks Twitch again.
- **You hear the clip but viewers don’t.** Your Browser Source has **Control audio via OBS** off, so its sound goes to your computer’s audio output and not into your stream. Tick **Control audio via OBS** in the Browser Source’s properties ([Hear the clip in OBS](https://bloopbot.com/docs/shoutout-clips#sound)), or have OBS capture your Desktop Audio.
- **Viewers hear the clip but you don’t.** Your Browser Source has **Control audio via OBS** ticked: set its **Audio Monitoring** to **Monitor and Output** ([Hear the clip in OBS](https://bloopbot.com/docs/shoutout-clips#sound)).
- **You added the Clip player while OBS had the overlay open, and it stays empty.** The overlay reloads itself once when it finds a Clip player it wasn’t ready for. If the player is still empty, refresh the overlay’s Browser Source.
- **It doesn’t start in OBS.** The clip is playing in Twitch’s own player, and something covers the player or it is scaled: move other layers off it, remove custom CSS that moves or scales it, and leave crop and filters off the Browser Source.
- **`!so` shouts them out, but no clip plays and the run log has no Play a shoutout clip step.** Your **Shoutout** is the older version: update **Starter**, or add the step yourself (step 2).
- **Nothing happens when a viewer types !so.** Only moderators and you can use it.
- **Simulate says your channel has no public clips yet.** Make a clip of your stream, then try again.
