Using Wowza4, we have dynamic publishing points for a Live stream that are available via SmoothStreaming to clients. Everything is working except the stream termination.
Once the RTSP session ends, the SmoothStreaming session is also shutdown. Unfortunately this means that the clients will be cut-off and will not view the entire stream. SmoothStreaming has a buffer (aprox. 5~8sec) that is completely discarded in this scenario.
I believe this was not the behavior on previous Wowza version.
Looking at the logs, we can see that as soon as the RTSP session ends, the SmoothStream becomes unavailable and returns 404 to the clients:
HTTPStreamerAdapterSmoothStreamer.onISMVData: LiveStreamPacketizer not found
Is there any way around this issue? Can we somehow force the SmoothStreaming to continue available until the buffer empties and bot be unavailable as soon as the RTSP session ends?
Thank you very much for any possible assistance on this.
Take a look at
ModuleLoopUntilLive which you can configure to show a loop when the live stream goes down, and show the live stream again when it is started. It is dependent on a proper IMediaStreamActionNotify.Publish() and IMediaStreamActionNotify.UnPublish() events.
Loop until llive solution will help because you are wrapping the live stream in a server-side stream which is what the clients playback. When the live stream unpublishes, the server-side stream loops a file. If you know when you want to end the stream, you might create a separate playlist in the schedule smil to start on the same stream at that time and not repeat. This playlist will take over the server-side stream as the source, then play the file (it could be for 1 second) then stop. That would end the stream.