You can now signal to Gvid if your cast should be a looped cast via the RTMP url.
A typical URL looks like
Now to make it loop you use
You can use that to send a short video to act as a waiting room.
At the end of each loop it will detect if you've replaced the stream and reload the replacement.
So an example with ffmpeg
ffmpeg -i intro.mp4 -c copy -f flv rtmp://r1.gvid.tv/SOMELONGTAG/loop
#Wait till you are ready to stream
ffmpeg -video_size 1920x1080 -framerate 15 -f x11grab 0.0+0,0 -f pulse -ac 2 -i
default -c:v libx264 -c:a aac -pix_fmt yuv420p -f flv rtmp://r1.gvid.tv/SOMELONGTAG
With OBS it's obviously easier.
A suggestion is to keep your loop video short because you will want to put an equal amount of empty banter at the front of the real stream for people to drop out of the loop video and into the real stream.
This also saves you from having the front of your recorded live stream be 30 minutes of dead space.