Wowza Community

Individual HLS Streams from Cloud

Is it possible to get the individual HLS stream URLs from the streams transcoded in the Wowza Cloud? For example, the “master.m3u8” link below provides all the individual stream names and seems to play well in JW Player using its built-in adaptive features.

http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/master.m3u8

In that file are the individual stream URLs as shown below.

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=437000,RESOLUTION=320x180,CODECS="avc1.66.30, mp4a.40.2"
http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/index_448_av-p.m3u8?sd=10&rebase=on
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=625000,RESOLUTION=512x288,CODECS="avc1.66.30, mp4a.40.2"
http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/index_640_av-p.m3u8?sd=10&rebase=on
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=913000,RESOLUTION=640x360,CODECS="avc1.77.30, mp4a.40.2"
http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/index_1152_av-p.m3u8?sd=10&rebase=on

However, for other players that can only play individual stream URLs, do these individual HLS stream names always follow this same format as in the “master.m3u8” file (see example below)?

http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/index_[BITRATE]_av-p.m3u8

We are wondering if we can reliably “build” these individual HLS URLs based on the primary “master.m3u8” URL using some sort of format as above (i.e. replace “master.m3u8” with “index_[BITRATE]_av-p.m3u8”).

Thanks =),

Mark

http://wowzaprodhd9-lh.akamaihd.net/i/XXXXXXXX_1@XXXXX/index_[BITRATE]"

We are wondering if we can reliably “build” these individual HLS URLs based on the primary “master.m3u8” URL using some sort of format as above (i.e. replace “master.m3u8” with “index_[BITRATE]_av-p.m3u8”).

Thanks =),

Mark

Yes you can do it exactly the way you show here.

http://[HOST]-lh.akamaihd.net/i/[STREAMNAME]_[ANGLEID]@[STREAMID]/index_[BITRATE]_av-p.m3u8

3 more things you should keep in mind doing so.

The [BITRATE] info does not come from the video information that you sent but from the stream name of the stream target the transcoder is sending to

URL:

rtmp://p.ep[STREAMID].i.akamaientrypoint.net/EntryPoint

Streamname:

[STREAMNAME]_[ANGLEID]_[BITRATE]@[STREAMID]

“wowzaprodhd9” this could also change whenever you request a new stream.

“_av-p.m3u8” is only valid if your stream went to a primary entry point of a stream target. If you would have sent to a backup entry point it would be “_av-b.m3u8”

URL:

rtmp://b.ep[STREAMID].i.akamaientrypoint.net/EntryPoint

thanks Philipp