Wowza Community

Working with LoopUntilLive module

I set up LoopUntilLive as documented, and had it working okay for a test stream I was toggling on and off. Using a more realistic target, where my source is an intermittent multicast transport stream, I’m having the player drop when the live stream goes away. I just tried putting the ModuleLoopUntilLive ahead of streamPublisher in the Modules order, to see if that makes a difference.

Besides that, is it possible to “nest” LoopUntilLive configuration, to have a hierarchy of source streams? My actual application will have either an SD transport stream, and HD transport stream, or nothing, and then there are potentially a couple of backup streams (one for each). What I’d like to have, in order of preference, is:

HD

SD

HDbackup

SDbackup

LOS.mp4

Could I set up LoopUntilLive with LOS.mp4 as the video source, use SourceStream SDbackup and OutputStream SDbackup+LOS.mp4

then use that output as the video source with SourceStream HDbackup and OutputStream HDbackup+SDbackup+LOS.mp4

and so on.

Any tricks to configuring that? Will it even work, or does the video src= content in the SMIL have to exist when the application initializes? Would I end up using a ton of computing resources just to idle? I guess I end up spewing a lot of the same bits into multiple streams.

Or what happens if I have several source streams and map each one to the same output stream?

Where it tries to “swap to playlist” would it be possible to start a server stream here ? I’d need to do this in the HLS request though and prevent it from getting an empty playlist. I cant see activity of swapping playlists for HLS requests at all.

stream = Stream.createInstance(appInstance, streamName);

Yeah normally the mp4 in the smil file in the content folder for one application, but we may be able to do it with StreamPublisher module. Not sure. Let me chat with tech support team and I’ll let you know @Bryan Walls

So the good news is we can get it to work for you with some trial and error in getting the config correct, but we’ll need a support ticket to test it accordingly. Can you please submit one here and we can get started? Thanks @Bryan Walls.

https://www.wowza.com/support/open-ticket

I’m having a similar issue. I tried to modify this module to try an add a postfixed VOD file of the stream name to add to the server side playlist to play that. But when requesting with HLS, and requesting the live stream name , it just outputs a 404 error on the playlist. There is no module method to detect HLS playback and an error of that I think ?

Am I supposed to be requesting the name of this dynamic server side playlist with HLS instead ?

Static smil is not possible or suitable let alone static names, it needs to be dynamic. Although ive built medialist modules for MBR and audio language already. Is smill neccessary or can it use amlst:livestream instead ? Is the smil for pre-setting up server streams ? It should prob be turned on when a client first requests an offline stream.

This feature is so convoluted. I just found how it works. The other module sets up the static streams on startup. I would need to bootup a stream problematically for the first client with an offline stream. And when its publishing stop that stream and go live. How could I do this for a HLS client so it doesnt return an error, it plays the offline stream instead of the livestream ? I presume the only way this works is the HLS client requests the name of the server stream, which the live stream is then switched to.

Hi Bryan,

if you are looking for the method to achieve stream failover like: primary stream -> backup stream 1 -> backup stream 2 -> LOS file

you may also post a message in “Hire A Consultant” to get offers of alternate solutions from 3rd party consultants.