So, I have a self hosted Owncast instance. I want to run a 24/7 live stream. However, if the streaming source changes or cuts for a few seconds, Owncast immediately terminates the stream. So I'm trying to find a way to have a "fallback/offline/backup" stream running where it's just a testcard graphic and the time on it for now. And then when it detects an incoming RTMP stream, it switches to the stream. When the stream ends- back to the testcard. My aim is to make a seamless stream that is always live and doesn't cut.
So basically, just a testcard graphic (and maybe some sound) that I can easily take over/hijack
I thought such a thing would be simple - it isn't. FFMPEG needs to reconnect to switch sources. I tried using a FIFO pipe, but the thing that reads the pipe doesn't seem to like it when the RTMP stream connects, choosing to break. It works again eventually, but by then, the stream is dropped. I've tried forwarding an RTMP stream from Nginx and using the switchers, but the forwarder likes to break as well (it seems to dislike mismatched timestamps or something)
I apologise for not leaving any specific logs. I have been working on this for days and have errors galore. I am posting here to see if there's a difference/best approach. (If one of these here is a best option and I was on the right track, I can try and dig up my old code and errors).
Also, this needs to be done headless and automatically begin at startup, which might rule out OBS, but I'm not 100% certain, if it's possible for me to set up a scene on a gui computer and load that into a headless OBS, please let me know.
This only appears to be a stream forwarder- but this will come in useful! Thank you!