I am trying out the “ABR” for “Live Streaming” via “Origin/Edge” Setup, in Wowza v4.2.
Actually everything is working, except the ABR Portion. Meaning, i managed to setup Origin/Edge Setup, do the Live Streaming, broadcast from WireCast and test it from the Edge Server (Test Player there). Everything is working as expected.
So here is what i got so far (working components):
Origin/Edge Setup (1x Origin, 1x Edge … so far)
Live Streaming (via WireCast)
Able to watch the Live Stream playback via Edge Server (Test Player)
But then when i try the ABR part, i keep seeing the blank page in the “Edge’s Test Player”.
Also, 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.
On your Edge server, in the .stream files you are using the incorrect playback URL form the origin server.
For example, in the myStream_160p.stream file, you are using the following playback URL: rtmp://:1935/liveorigin/mp4:myStream_160p
This is not correct, because on your Origin server the published stream is called myStream_160p.stream and not myStream_160p
Having this in mind, the myStream_160p.stream file from your edge server, needs to contain the following playback URL: rtmp://:1935/liveorigin/mp4:myStream_160p.stream
The same is valid for all the other renditions you are using.
The “renditions” are the different bit rate streams for example myStream_720p and myStream_360p. These renditions make up an ABR(Adaptive bit rate) set
These renditions have to be key-frame aligned. How are you creating these renditions? With the Wowza Transcoder, or through Wirecast?
The Wowza Transcoder guarantees key frame alignment and you can use the “ngrp”(Stream name group) feature for playing back the ABR stream. With other methods you will need to use a .smile file.
This guide shows how to set up the Wowza Transcoder for live streams (includes steps for ABR):
I think you need to remove the .stream step from your work flow, and just add the raw Transcoded renditions to the .smil file. an example .smil would be:
But the examples (or solutions) you shared seems to be not for Wowza v4? Because i use the Web Interface so i’m not sure (haven’t tried) whether this kinda editing from backend might “still work” in Wowza 4 or it will break.
Other than that, well @salvadore, i honestly do not know what is “ABR renditions”, because i just followed the Article (i mentioned in my question) and that’s one and only thing i did. They didn’t mention about that in the ABR article. So please, what is “ABR rendition” and how, please.
Hi @Zoran, thanks much, i’m trying with the article you shared. But again, yet, i’m not sure how to do that in Wowza v4 Web Panel.
Now i know how to setup “Stream Files” (via Transcoder) in the Origin. And then create the matching “Stream Files” inside the Edge. Then these are related each other (Origin Stream Files => Edge Stream Files) and i can play the Stream Files from Edge Now.
Meaning that, from the Edge, when i (for example) play the “myStream_720p.stream” (in the “TEST PLAYER” by keying in the “myStream_720p.stream”), it plays the Live Video with 720p. Then again when i key in “myStream_360p.stream”, and press the Play button again, it plays in 360p. So that, i can manually connect to the different bit-rate streams now.
So next step, what should i do next please?
Because until now is playing the single files, selectively. Of course the goal is to have a player which contain all this ABR streams. So how do i relate ALL these “Stream Files” to the Single Player. Or, until now i don’t have an idea what is “SMIL Files” for.
Now is the time to talk about SMIL Files please? Then how do i RELATE these “Stream Files” with the “SMIL Files” ?
I actually not sure what are ‘renditions’ in Wowza (and where to set to). But i’m sure i used Wowza Transcoder.
But as i mentioned, i have reached to the state that i now have the “STREAM” files equally on both Origin and Edge server. So that allows me to play the desired Bit-rate from Edge’s Test Player, already, by manually keying in the desired Bit-rate STREAM name. For example:
On Edge (Test Player):
When i want to watch (160p), then i key in like: “myStream_160p.stream”. Then 160p is played.
When i want to watch (720p), then i key in like: “myStream_720p.stream”. Then 720p is played.
That means, i broadcast (via WireCast) ===> it reached to Origin Server ===> then it reached to Edge Server (And here, i can play the desired Bit-rate via Stream Files).
So now (as in layman term), how do i make my Player play all these different Bit-rate Streams altogether? So here comes the “SMIL” file’s role? (Cos i don’t know).
I mean what simply is the next step to do (click where, click what) like that? (Because i really appreciate your kind helps but it is far high for me to understand. I really prefer the direct what-to-do-next kinda steps)
Now I think i came to know how STREAM Files and SMIL Files are related. But by some reasons, i still can not play via the SMIL file. (See Status Error below)
I don’t know how to explain what i have, so i now DRAW A DIAGRAM so please kindly help to check what is wrong. (Especially the file “Namings”. I think the naming are important becos they are related to each other based on the names)
That ones inside are ALL I HAVE in my setup. Please help.