Wowza Community

Re-stream RPT to HTTP Live streaming

An http url ending with /playlist.m3u8 is for Cupertino (IPhone, etc) streaming. If won’t work in a browser.

Try the Wowza LiveVideoStreaming Example player:

Server: rtmp://[wowza-address]:1935/live

Stream: mpegts.stream

Richard

Try reducing the keyframe frequency, and make sure it is a multiple of chunkDurationTarget, which is 10 by default, unless you add these properties and change it:

https://www.wowza.com/docs/how-to-configure-apple-hls-packetization-cupertinostreaming)

Wowza adds this bandwidth info, and it should be very accurate if you are using 2.1.2.06. If you aren’t you can get Patch 6 here:

https://www.wowza.com/docs/wowza-streaming-engine-software-updates

This package will help to create the required 64kbs stream:

https://www.wowza.com/docs/how-to-create-apple-app-store-compliant-streams)

But note that AAC audio is required, and the audio track must be 64kbs.

You should be able to get rid of these warnings:

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

7: #EXTINF:16,

~~

But these are hard to get rid of completely, but a few should be okay:

WARNING: Media segment bitrate outside of target playlist bitrate by 46.371 % (93677 vs. 64000 bps, limit is 10 %).

10: media_1713.ts?wowzasessionid=329465679

Richard

Did you use a text editor for the smil? One possibility is that there are word processor characters in the file.

Richard

If you are doing origin-edge (?) and this is a liverepeater-edge, yes, use the appropriate LiveStreamPacketizer

With the auto-generate you don’t need a smil file if you play one video that has an 64kbs AAC audio track. Wowza auto-generates it. You can use a smil where one video has the 64kbs AAC audio track that you mark with wowza-audio-only=true, but you wouldn’t also make its system-bitrate 64000. In your example above, you might as well not use the smil.

Richard

On the edge, only use cupertinostreamingrepeater. Remove the others.

Completely take out the auto-generate configuration since you don’t need it. Use the smil item pointing to the 64kbs audio stream, as you were doing but without the wowza-audio-only=“true”

Richard

The StreamType should be “liverepeater-edge”

Richard

For Wowza’s role in your process, this is the essential guide:

https://www.wowza.com/docs/how-to-publish-and-play-a-live-stream-mpeg-ts-based-encoder)

Richard

You see “killed” in the logs, as below?

Wowza only logs the first few chunks. But chunking should continue.

Richard

Great, thanks for the update, glad it’s working.

Richard

One way to test it in a browser would be to use Safari and an HTML5

http://www.w3schools.com/html5/tag_video.asp

If you do src=“http://…m3u8”, you should be able to see the HLS video. Only works in Safari/Mac, though, and you need a pretty recent version of OSX.

Thanks for the info!

See http://discovervideo.com/transcoder

Now working with adaptive bit rate streaming (Smoothstreaming)

ping me at rmavro@discovervideo.com and I’ll send you a live link. Don’t want to post it here (it is bandwidth limited right now).

Thanks for the reply.

Original RTP stream is encoded as H.264/MP3, I’m not sure that iPhones would “understand” this, but I’m ready to try.

As I understood you the right way, you’re advicing to use this guide: http://www.wowza.com/quickstart_2_1_2.html#live-ip-camera step-by-step, but enabling cupertino and streamer, right? Is that guide is fully for me?

Could you advice, how to set Wowza for listening 8888 RTP stream on port? I should put rtp://@:8888 into [install-dir]/content/camera.stream?

Thanks again.

Ok, now that’s what I’ve done.

I’ve followed this guide: https://www.wowza.com/docs/how-to-publish-and-play-a-live-stream-mpeg-ts-based-encoder - it contains rtp stream as input and mpeg-ts stream as output, so I’ve decided to use this guide.

In step: “4. Using a text editor create the file [install-dir]/content/mpegts.stream set the contents of this file to udp://0.0.0.0:10000 (if you are receiving a multicast stream, change the 0.0.0.0 part to the multicast address of the stream)”

I’ve typed rtp://0.0.0.0:8888

I made everything the same as in that guide and when I’m trying to open http://[wowza-address]:1935/live/mpegts.stream/playlist.m3u8 in browser, it says that page not found.

Why is that? What I’ve done wrong? I’ve opened 1935 port and 8086 - is it necessary to open any other ports?

Original RTP stream is encoded with VLC and it’s H.264/AAC (RTP/MPEG Transport Team as destination).

Help me if somebody met with such case of using Wowza.

Thanks.

Thanks to everybody who helped me.

I’ve done it - with the guide I linked above, I recieve RPT/MPEG-TS packed stream with H.264/AAC and successfully re-stream it to iPhone app.

But there is one more thing - I have mistiming of sound and video. Sound has a delay in ~0.5-0.8 sec. It’s quite a big amount. Is there a way to avoid this?

Hi again. I’ve done with sound delay and now I’m going to approve my iPhone application.

I’m running media validator and it says that my playlist is wrong. Here are the warnings:

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

5: #EXTINF:17,

~~

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

7: #EXTINF:18,

~~

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

9: #EXTINF:17,

~~

WARNING: Media segment bitrate outside of target playlist bitrate by 78.100 % (113984 vs. 64000 bps, limit is 10 %).

6: media_1709.ts?wowzasessionid=329465679


WARNING: Media segment bitrate outside of target playlist bitrate by 68.377 % (107761 vs. 64000 bps, limit is 10 %).

8: media_1710.ts?wowzasessionid=329465679

WARNING: Media segment bitrate outside of target playlist bitrate by 100.224 % (128143 vs. 64000 bps, limit is 10 %).

10: media_1711.ts?wowzasessionid=329465679


WARNING: INF tag with duration 2 seconds or more above the playlist's target duration (10.000 seconds).

5: #EXTINF:18,

~~

WARNING: INF tag with duration 2 seconds or more above the playlist's target duration (10.000 seconds).

7: #EXTINF:17,

~~

WARNING: INF tag with duration 2 seconds or more above the playlist's target duration (10.000 seconds).

9: #EXTINF:16,

~~

WARNING: Media segment bitrate outside of target playlist bitrate by 49.130 % (95443 vs. 64000 bps, limit is 10 %).

10: media_1712.ts?wowzasessionid=329465679

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

5: #EXTINF:17,

~~

WARNING: INF tag with duration 2 seconds or more above the playlist’s target duration (10.000 seconds).

7: #EXTINF:16,

~~

WARNING: Media segment bitrate outside of target playlist bitrate by 46.371 % (93677 vs. 64000 bps, limit is 10 %).

10: media_1713.ts?wowzasessionid=329465679


WARNING: INF tag with duration 2 seconds or more above the playlist's target duration (10.000 seconds).

5: #EXTINF:16,

~~

WARNING: Media segment bitrate outside of target playlist bitrate by 49.681 % (95795 vs. 64000 bps, limit is 10 %).

10: media_1714.ts?wowzasessionid=329465679

WARNING: Media segment bitrate outside of target playlist bitrate by 84.836 % (118295 vs. 64000 bps, limit is 10 %).

10: media_1715.ts?wowzasessionid=329465679

The content of my playlist is (I’ve downloaded it with browser):

#EXTM3U

#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=64000

http://ip:1935/live/mpegts.stream/playlist.m3u8?wowzasessionid=1459010386

How it knows what BANDWIDTH option to use? I didn’t set it up.

Can I modify playlist settings for my stream to be correct? And if yes, then how?

Thanks for the help.

Huh. I’ve used search and had found that I’m not alone with this problem.

Here are the topics, where was discussed this theme:

https://wowza.com/forums/showthread.php?9099-m3u8-file-issue

I think, the way to solve this problem is making multiple bitrate stream. What program I can use to encode one stream to multiple? And how I should configure this program and Wowza?

Thanks.

Richard. Great thank you for help.

I’ve made changes that you adviced.

  1. I’ve reduced keyframe frequency from 25 to 15 and changed the value of chunkDurationTarget to 15000.

  2. I’ve downloaded and extracted zip with patch.

  3. I’ve created multi-bitrate using smil with one audio-only stream and audio-video.

After doing all of these operations, I’m starting three streams: audio only, audio+video, smil.

Here is smil text:

Did you use a text editor for the smil? One possibility is that there are word processor characters in the file.

Richard

Yes, I’ve used nano (linux editor). Just in case, I’ve created it again, using text editor and used option “Convert to UTF-8 without BOM”, but result is the same.

One more thing is this smil doesn’t work it iPhone - iPhone says “Can’t open file”, but I can mark that this smil works properly with application without settings for auto-64K-audio-generating settings in Application.xml.