how to do adaptive bit rate live streaming with multiple SMIL files on edge servers
I want to usee Wowza origin-edge architecture to do adaptive bit rate live streaming. Currently I have one origin server, on which a Wowza transcoder is generating three streams with different bit rates. On the edge server, I created three stream files according to this article
As far as I know, in the Wowza origin-edge architecture, we can introduce primary and second origin URLS for failover. And the origin URLs can be easily added on Wowza Engine manager webpage. It looks like this
I tried creating a second SMIL file containing streams from a redundant origin server and adding this second SMIL file to the origin URL. It doesn't work. My goal is that: when the origin server dies, the edge server can automatically switch to another SMIL file.
Could anyone teach me how to introduce the second origin server into this architecture?
NGRP do not get forwarded to the edge. The idea is that with this tool you can create a SMIL from using the medialist tool on the origin and create a file that you host in the content folder on the edge.
If you're using a .stream file to get the streams from the origin to the edge server it does not use the Primary or Secondary Origin URL.
The stream will be published on the edge as it's own stream and the edge application should be "live" which means it will packetize the stream itself as the origin would do.
To achieve adaptive bitrate (ABR) streaming with these streams from the Transcoder (on the origin) you will only reference the streams using a .smil file on the edge server.
As the streams now being published on the edge will be called, for example, livestream_source.stream, livestream_360p.stream and livestream_160p.stream, the .smil file will need to use these stream names.
In this scenario you're re-streaming a live source similar to how re-streaming from an IP camera works, the only difference being the multiple streams created will be keyframe aligned so they can be used for ABR streaming.
Each edge server will need to have the same .stream files (livestream_source.stream, livestream_360p.stream and livestream_160p.stream) and .smil file in it's content directory.
live stream repeater Origin/Edge setup the edge will use the Primary Origin URL and if it doesn't receive a response, it will switch to the Secondary Origin URL. This does not mean that the clients connected at that time will automatically receive the new stream, they will have to connect to the edge server again as the stream will have stopped when the Primary Origin stopped responding in this scenario which will cause the client to disconnect.