Delay of 30+ secs in basic setup

We just started to use WSC. It seems the right solutions for our needs. We found it simple to configure to get the first streams going.

What remains is to solve the 30-40 sec delay we exepriencing.

What we need is a lowres (320x240) low latency(+/- 1 sec) livestream to about 100 viewers.

Our current test setup is: Gocoder --> WSC passtrough --> Hosted page. We tried a configuration of WSC with and without the Lowlatency option and expirimented with the buffer size. On the Gocoder we tried the differend bitrates, fps and keyframe intervals of 1-2 secs. We don’t see any difference

When we start the stream the playback page shows the stream within 2 seconds. The player on the hosted page detects the stream only after 30-40 seconds.

What can we do to reduce the delay? We started with the free trial but to rule out trial restrictions we subscribed to a monthly “Pay-as-you-Go”.

After reading posts about the subject I understand that is difficult to get low latency with HTTP streaming. My other question is: does the player on the hosted page use HTTP or RTPM ?

Regards,

Jan van der Goes

Hello there and welcome to the Wowza support forum.

HTTP streaming sends chunks to the client. The client needs 3 chunks cached before it starts playing.

By default Wowza is set to send 3, 10 second chunks in each packet sent to the client. You can modify this behavior by editing the Application.xml file.

This guide explains how to control how the Cupertino (HLS) segmenter segments an incoming live stream:

How to configure Apple HTTP Live Streaming packetization (cupertinostreaming)

How to configure Adobe HDS packetization (sanjosestreaming)

Chunks must start on a key frame. So it is best to use a key frame interval that is factor of the cupertinoChunkDurationTarget setting.

Try 2 second key frame frequency and cupertinoChunkDurationTarget “2000” (2 seconds)

cupertinoMaxChunkCount is the total number of chunks that are maintained. So as the stream moves a bit further off of live, the player will start to request segments from further in the past. Having a larger list of chunks in reserve will insure this does not lead to a missing chunk error.

I hope this answers your question.

Salvadore

Hello,

We apologize for the confusion regarding the Wowza Streaming Cloud product, a 30 second latency is to be expected. We do not currently provide the ability to adjust the HLS packetizing in the user interface. This is the lowest you can achieve unless you choose to setup a local Wowza Streaming Engine to transrate your stream and pass through the Wowza Streaming Cloud and only utilize the CDN portion of the solution. You could then utilize the suggestions Sal mentioned above to reduce your latency.

I hope this helps.

Regards,

Mac

Jan,

Honestly, with our current Wowza Cloud configuration, other than creating a stream target to ensure you have the closest entry point to your encoders location, and choosing low-latency in the advanced transcoder setting, there is no other way to reduce latency at this time. Wowza Streaming Cloud does not yet provide an RTMP playback source. I do not know of a way currently in Wowza Streaming Cloud to configure a 5 second latency. You should experience a 30-40 second latency as it is configured today.

Regarding the hosted page, we are using the HLS protocol for delivery.

If you find that you need lower latency for your streaming workflow, I would suggest using our flagship product, Wowza Streaming Engine. This would give you the ability to customize the HLS packetization and achieve lower latency.

I hope this helps.

Regards,

Mac

Dear Salvadore,

Thanks for the response. I think I came across simmilar sugestions in the forum. I didn’t realise it was applicable to Streaming Cloud. Can you explain how I edit the Application.xml file in the portal ?

I am curious about the stream type the player in the hosted page uses.

Regards,

Jan van der Goes

Mac,

Thanks for the response.

Allow me to summarise to see if I understand the concepts.

  • The hosted page uses HLS (or other HTTP protocol)

  • To get low latency from the Wowza streamingcloud I have to use a player with RTMP (Flash), which excludes Apple clients.

  • To use only the CDN portion of the solution with HLS I have to create a “custom streaming target” of type “Akamai HLS Push” pointing to a published HLS stream.

  • With HLS the lowest possible latency is around 5 secs.

Regards,

Jan van der Goes