[Tutorial] How to play Instant Replay and Highlight Scenes, Live Streaming with OBS
Repository
https://github.com/spreadfire/InstantReplayXT
Direct link to the tutorial: https://github.com/spreadfire/InstantReplayXT/blob/master/Tutorial/Tutorial.md
What Will I Learn?
This tutorial is for live streamers looking to enhance their stream and viewer experience. By adding these little-known features, you can make your content stand out from the mass of streams.
- You will learn how to play an Instant Replay of a cool scene that happened during your live stream
- You will learn how to show the stream's Highlights (a compilation of all previously saved replays)
Requirements
- Open Broadcaster Software (OBS Studio).
- Instant Replay XT - I created an Extended, easier to set up and use, version of the original Instant Replay plugin by William Pearson (https://github.com/adocilesloth).
- VLC Player - for using a VLC Video Source in OBS to play all video files a specific folder contains.
Difficulty
- Intermediate
I'm assuming you already know how to install OBS and VLC or have them installed.
The tutorial won't cover basics like how to use Windows applications or settings dialogs/controls.
Tutorial Contents
Instant Replay
Does the following situation sound familiar and appealing to you?
- Insane monster pentakill action team fight, sick 360 noscope headshot or something like that happens in your game.
- After it happened you wish you could, at the press of a button, instantly save and show the replay of it.
- You wish you could watch a replay of the event together with your stream viewers while commenting or doing whatever crazy stuff you feel like.
There's a lot of room for creativity with the feature.
Now here's how you set it up:
- Download
After downloading the zip file, extract it to your OBS install path (e.g.C:\Program Files (x86)\obs-studio
). Keep the folder structure, as all files need to be extracted to their respective subdirectories. - Setup
(I reuse parts of the original Instant Replay plugin documentation here)
1. Start OBS
2. Go to File -> Settings -> Output
In Output Mode
"Simple", check Enable Replay Buffer
and set the Replay Buffer
Maximum Replay Time (Seconds)
Examples of Replay Buffer Length
This depends on your personal preference and what you want to do. Try different settings, tweak around and see what fits your game, play style and stream best.
To have some reference points, these are my personal suggestions:
a. Fast paced first-person-shooter (FPS) 10 seconds,
b. MOBA like Heroes of the Storm or DotA 30 seconds,
c. Slow paced card games with long turns like Hearthstone or Gwent maybe even 60 seconds.
3. Open the Hotkeys under:
Settings -> Hotkeys
Find the Instant Replay
hotkey
Set it TO THE SAME KEY as you have Save Replay
under Replay Buffer
set to.
It should be a key you can easily reach while streaming a game. So you can press it fast after a replay-worthy scene happens.
I use F9
for example.
4. Go to Settings -> Advanced
Deprecated:
Setting up the replay source:
Set your Recording to a constant name (so remove all the % stuff). Makes it
easy to point your replay source to a file that will exist.
Point your Media Source to what your replay will be saved as.
This is no longer necessary in Instant Replay XT. The plugin automatically sets the Instant Replay Media Source to the currently active replay file before switching to the replay scene.
You can set any Recording
filename you like. To have a unique filename, you can use date and time wildcards for example:
Filename Formatting
- OBS %CCYY-%MM-%DD %hh-%mm-%ss
Replay Buffer Filename Prefix
- Replay
The resulting file name in this example would be something like this: "C:\Users\Jeremias\Videos\Replay OBS 2018-09-14 18-42-57.flv"
Close the Settings
dialog with Ok
.
5. Go to Tools -> Instant Replay XT Settings
Mandatory settings for this tutorial:
Enable
- Enables/disables the plugin
Write Pause (s)
- Pause to allow OBS to write the replay file.
OBS can't instantly write a file. ~10 seconds should be okay.
Find something that works for you.
(Functionality change in Instant Replay XT: Write Pause is the maximum amount of seconds you want to wait. If the replay file buffer was written before that, it switches to the Instant Replay scene immediately.)
Transition Pause (ms)
- Length of the transition in milliseconds.
If the stinger is at 30fps, multiply the number of frames by 33.
If the stinger is at 60fps, multiply the number of frames by 16.
Replay Length (s)
- Length of the replay in seconds.
OBS does not always write as much replay as you tell it to so this may need to be a second or two shorter than the buffer length (see Replay Buffer Length section in step 2 above for more details)
Replay Scene
- Scene to switch to that has the replay source.
Replay Source Name
- Name of the OBS Media Source you use to play the Instant Replay file. e.g. "Instant Replay Media Source".
Optional settings:
Mute Desktop Audio
- Mute the Desktop Audio channels when replay is playing.
Mute Mic/AUX
- Mute the Mic/Aux channels when replay is playing.
Backup Replay File
- Enables/disables the backup feature.
Backup File Path
- After the replay file buffer was written, copy it to this path.
Close
the plugin settings dialog.
6. Add
a Scene
to your scene collection
The Instant Replay XT plugin will switch to this scene after you press the hotkey.
IMPORTANT: The scene name has to match the exact name you set in Tools -> Instant Replay XT Settings
, Replay Scene
. In the sample screenshot, I use "Instant Replay Scene" for example.
7. Add
a Media source
to the scene
It will be used to play your Instant Replay file.
IMPORTANT: Make sure to use the same name for the Media Source
as you set in Tools -> Instant Replay XT Settings
, Replay Source Name
. In the sample screenshot, I use "Instant Replay Media Source" for example.
You can leave all Properties
of the newly created Media Source
at their default values. You don't have to set a file, you can leave it empty. Instant Replay XT will automatically set the Media Source File Name
to the currently active replay file before switching to the replay scene.
Optionally, you can customize the rest of the media source's properties. I enable Close file when inactive
for example.
Another interesting setting is the Speed (percent)
. This allows you to play your Instant Replays in slow motion.
8. Ready to go
Now that you have everything set up, give it a try.
When you Start Streaming
(a), the replay buffer is automatically started as well. If you don't want to go live and rather try it in an offline test environment, you can Start Replay Buffer
(b) manually without having to Start Streaming
.
Here is what should happen:
- Switch to your default game scene
- Press the hotkey button
- Instant Replay XT switches to your Instant Replay Scene as soon as the replay buffer was written to the replay file
- After the instant replay video finished playing, Instant Replay XT switches back to your default scene.
Here is an example of me using the feature to give you an idea of what it can look like when it's used in a productive environment:
Stream Highlights
Based on the Replay Buffer
OBS feature, you can use your previously saved replay files to show the stream's highlights.
This also works without having Instant Replay XT enabled. There are two ways to do that: Simply don't set a hotkey for Instant Replay playback (see step 3 of the previous section for details) or uncheck Enable
in the plugin's settings (Tools -> Instant Replay XT Settings
).
Set the
Recording Path
OBSSettings -> Output -> Recording Path
Set up an OBS scene
This can be a new, dedicated scene or you can use an existing one. Whichever way you prefer to show your stream's highlights.Add
aVLC Video Source
InVLC Video Source -> Properties
,Add directory
. This should be the path to the folder where your recordings/instant replays are saved (see step 1,Recording Path
).
Whenever you want to play the replay video files in that folder, switch to this scene (e.g. at the end of your stream).
If the playback doesn't start automatically, you might have to openVLC Video Source -> Properties
and close the dialog again withOk
, to refresh.
Let me show you an example of how I use it / how it could look like:
Do you find this article helpful?
What would you use the Instant Replay feature for / are you already using it?
If you have ideas, feature requests, or you want to contribute yourself, let me know in the comments below or message me on https://twitter.com/spreadfire1.
Also be sure to check out my stream on DLive.io/@spreadfire1.
Curriculum
Proof of Work Done
https://github.com/spreadfire/InstantReplayXT/tree/master/Tutorial
Thank you for your contribution @spreadfire1.
We've been reviewing your tutorial and recommend the following:
There are several tutorials on the internet explaining the OBS studio program, like this one link.
The utopian tutorials are specifically to be used in a technical way to help the open source community learn new content.
Please see this tutorial link which is a good example of a well-developed tutorial.
Your tutorial is well explained, however we suggest that the next tutorial be more technical instead of putting in the tutorial only the definitions of a program.
We are waiting for your new updated tutorial.
Please read the guidelines here.
Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]
Hi @portugalcoin, thanks for your feedback.
I disagree with your statement:
Maybe I didn't make this clear enough.
My tutorial is aimed at a specific audience for a very specific use case. I never try to nor claim to be explaining the OBS studio program itself, but rather how to set up the Instant Replay feature using my own plugin Instant Replay XT. I won't make it any more technical just to be applicable for the utopian-io upvote. This would miss the point of being an easy-to-follow, how-to, step-by-step guide and just bloat it up, feeding the user unnecessary information, making it less clear and harder to read.
It's fine if my contribution doesn't qualify. I just thought I'd give it a try since I missed the opportunity on my last two tutorials. After that, someone suggested me to also use the utopian-io tag, saying it would fit there. I still like my post being in standardized categories using the utopian-io tag as well as the subcategory tag, so that alone is already worth something.
Regards.
Hi spreadfire1,
Thank you very much for leaving your opinion and for understanding the revision made to your tutorial.
I hope you understand our review and do more tutorials.
Thank you for your understanding.
Need help? Write a ticket on https://support.utopian.io/.
Chat with us on Discord.
[utopian-moderator]
Thank you for your review, @portugalcoin!
So far this week you've reviewed 6 contributions. Keep up the good work!