Wowza Community

IOS Delay with streaming

Hello,

I know this subject was mentioned before but none information found on forum did help me to achieve at least 3 - 5 sec stream delay onto IOS streaming.

I have created app in Wowza called test and edited Application.xml:

                <HTTPStreamer>
                        <!-- Properties defined here will override any properties defined in conf/HTTPStreamers.xml for any HTTPStreamer loaded by this applications -->
                        <Properties>
                                <Property>
                                        <Name>cupertinoChunkDurationTarget</Name>
                                        <Value>1000</Value>
                                        <Type>Integer</Type>
                                </Property>
                                <Property>
                                        <Name>cupertinoMaxChunkCount</Name>
                                        <Value>4</Value>
                                        <Type>Integer</Type>
                                </Property>
                                <Property>
                                        <Name>cupertinoPlaylistChunkCount</Name>
                                        <Value>3</Value>
                                        <Type>Integer</Type>
                                </Property>
                                <Property>
                                        <Name>cupertinoRepeaterChunkCount</Name>
                                        <Value>3</Value>
                                        <Type>Integer</Type>
                                </Property>
                                <Property>
                                        <Name>flushInterval</Name>
                                        <Value>2</Value>
                                        <Type>Integer</Type>
                                </Property>
                                <Property>
                                        <Name>onFlushNotifyClients</Name>
                                        <Value>true</Value>
                                        <Type>Boolean</Type>
                                </Property>
                                <Property>
                                        <Name>cupertinoEnableDataEvents</Name>
                                                <Value>true</Value>
                                        <Type>Boolean</Type>
                                </Property>
                        </Properties>
                </HTTPStreamer>

With broadcasting from FMLE with 500kb/s bit rate and baseline 2.0 with 1 sec key frame I get delay about 22 seconds.

This actually vary cause sometimes after reboot or application or whole wowza and fmle I get about 10 seconds which then grow over time to even about 40 seconds

I’m not sure if I do miss configure something or putting those settings into wrong part of configuration but one thing i know is that I cannot get even close to 5 seconds delay on video.

Any ideas how you can achieve lowest possible time delay while using coupertino streaming?

Hello there.

It looks like you have set these properties in the wrong location of the Application.xml file. They should be added to the LiveStreamPacketizer/Properties

I hope this helps.

Salvadore

Are you referring to start time or latency, or both? Start time is how long it takes for a user to start seeing video after starting playback. Latency is how far behind the stream is compared to the encoder.

If you start Wowza in stand-alone mode [install-dir]/bin/startup.bat|.sh, you should see lines in the console like this. Please post what you see for these lines:

LiveStreamPacketizerCupertino.endChunkTS[..................]: Add chunk: id:1 mode:TS[H264,MP3] a/v/k:102/24/1 duration:1000

How are you testing? Is it local or remote, is it iOS device or HLS desktop playback with JW Player or VLC?

You can reduce the bitrate of the stream. You can remove network factors if you are testing remote to see what the delay is without that. Understand that iOS devices need 3 chunks before playback, so if the bitrate is very high and the device is remote and a slower connection, it still has to download 3 large chunks.

Thank you.

Salvadore

Hello Salcadore,

thanks for reply, yes this seems to have effect of 7 seconds delay which is much better than it was.

Any idea if this can be reduced even further?

Wojtek