Results 1 to 7 of 7

Thread: Latency in ipad device while the wowza streaming engine in running continuously

  1. #1
    Join Date
    Aug 2014
    Posts
    27

    Default Latency in ipad device while the wowza streaming engine in running continuously

    Hi,

    As suggested , I can able to solve the latency in ipad device while playing the url obtained from wowza streaming engine by using the following updation in application.xml

    <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>
    But if Iam running the wowza streaming engine for a long time continuously, again Iam observing the latency in ipad device for more than 25 secs while playing the url obtained from wowza streaming engine.

    And I am displaying the wowza server console statements here:


    INFO server comment - LiveStreamPacketizerCupertino.init[live/_definst_/myStream]: chunkDurationTarget: 1000
    INFO server comment - LiveStreamPacketizerCupertino.init[live/_definst_/myStream]: audioGroupCount: 3
    INFO server comment - LiveStreamPacketizerCupertino.init[live/_definst_/myStream]: playlistChunkCount:3
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer[live/_definst_/myStream]: Create live stream packetizer: cupertinostreamingpacketizer:myStream
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer[live/_definst_/myStream]: Create live stream packetizer: mpegdashstreamingpacketizer:myStream
    INFO server comment - CupertinoPacketHandler.startStream[live/_definst_/myStream]
    INFO server comment - MediaStreamMap.getLiveStreamPacketizer[live/_definst_/myStream]: Create live stream packetizer: smoothstreamingpacketizer:myStream
    INFO server comment - LiveStreamPacketizerPacketHandler.startStream[live/_definst_/myStream]
    INFO server comment - SanJosePacketHandler.startStream[live/_definst_/myStream]
    INFO server comment - LiveStreamPacketizerSmoothStreaming.startStream[live/_definst_/myStream]
    INFO server comment - LiveStreamPacketizerCupertino.handlePacket[live/_definst_/myStream]: Audio codec:AAC isCompatible:true
    INFO server comment - LiveStreamPacketizerSanJose.handlePacket[live/_definst_/myStream]: Audio codec: AAC
    INFO server comment - LiveStreamPacketizerCupertino.handlePacket[live/_definst_/myStream][mp4a.40.2]: AAC Audio info: {AACFrame: codec:AAC, channels:2, frequency:44100, samplesPerFrame:1024, objectType:LC}
    INFO server comment - LiveStreamPacketizerCupertino.handlePacket[live/_definst_/myStream]: Video codec:H264 isCompatible:true
    INFO server comment - LiveStreamPacketizerSanJose.handlePacket[live/_definst_/myStream]: Video codec: H264
    INFO server comment - LiveStreamPacketizerCupertino.handlePacket[live/_definst_/myStream][avc1.66.32]: H.264 (Video may not be playable on older iPhone and iPod touch devices where Main/Level 3.1 or lower is required) Video info: {H264CodecConfigInfo: codec:H264, profile:Baseline, level:3.2, frameSize:1290x900, displaySize:1290x900, crop: l:0 r:3 t:0 b:6}
    INFO server comment - LiveStreamPacketizerPacketHandler.handlePacket[live/_definst_/myStream]: Video codec:H264 isCompatible:true
    INFO server comment - LiveStreamPacketizerPacketHandler.handlePacket[live/_definst_/myStream]: Audio codec:AAC isCompatible:true
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:1 mode:TS[H264,AAC] a/v/k:34/60/1 duration:2410
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:2 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.flushPendingAudio: Bitrate[live/_definst_/myStream]: 105168
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:0 count:86 duration:2019
    INFO server comment - LiveStreamPacketizerSmoothStreaming.handlePacket[live/_definst_/myStream]: Fragment durations: [2.0,2.0,2.0]
    INFO server comment - LiveStreamPacketizerSmoothStreaming.flushPendingVideo: Bitrate[live/_definst_/myStream]: 1030817
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:0 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:3 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2066
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:1 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:1 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:4 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:2 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:2 count:60 duration:2066
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:5 mode:TS[H264,AAC] a/v/k:31/60/1 duration:2167
    INFO server comment - LiveStreamPacketizerSanJose.endChunkTS[live/_definst_/myStream]: Add chunk: id:1 a/v/k:459/301/5 duration:10643
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:1 type:m4s_mux a/v/k:458/300/5 duration:10233
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:1 type:m4s_audio a:458 duration:10233
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:1 type:m4s_video v/k:300/5 duration:10233
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:3 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:3 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:6 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:4 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:4 count:60 duration:2167
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:7 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:5 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:5 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:8 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2033
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:6 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:6 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:9 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:7 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:7 count:60 duration:2033
    INFO server comment - LiveStreamPacketizerSanJose.endChunkTS[live/_definst_/myStream]: Add chunk: id:2 a/v/k:439/301/5 duration:10167
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:10 mode:TS[H264,AAC] a/v/k:30/60/1 duration:2134
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:2 type:m4s_mux a/v/k:438/300/5 duration:10167
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:2 type:m4s_audio a:438 duration:10167
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:2 type:m4s_video v/k:300/5 duration:10167
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:8 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:8 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerCupertino.endChunkTS[live/_definst_/myStream]: Add chunk: id:11 mode:TS[H264,AAC] a/v/k:29/60/1 duration:2000
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:9 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:9 count:60 duration:2134
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:audio id:10 count:87 duration:2020
    INFO server comment - LiveStreamPacketizerSmoothStreaming.addFragment[live/_definst_/myStream]: Add chunk: type:video id:10 count:60 duration:2000
    INFO server comment - LiveStreamPacketizerSanJose.endChunkTS[live/_definst_/myStream]: Add chunk: id:3 a/v/k:437/301/5 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:3 type:m4s_mux a/v/k:436/300/5 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:3 type:m4s_audio a:436 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:3 type:m4s_video v/k:300/5 duration:10133
    INFO server comment - LiveStreamPacketizerSanJose.endChunkTS[live/_definst_/myStream]: Add chunk: id:4 a/v/k:438/301/5 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:4 type:m4s_mux a/v/k:437/300/5 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:4 type:m4s_audio a:437 duration:10133
    INFO server comment - MPEGDashWriterHandler.createChunkM4S[live/_definst_/myStream]: Add chunk: id:4 type:m4s_video v/k:300/5 duration:10133
    INFO server comment - LiveStreamPacketizerSanJose.endChunkTS[live/_definst_/myStream]: Add chunk: id:5 a/v/k:437/301/5 duration:10133


    What my guess is cupertinoChunkDurationTarget is reverting back to 10000 again if Iam continuously running wowza server for long time. I dont know exactly.

    Please provide me the solution to fix this problem.

    Thanks in advance.

  2. #2
    Join Date
    Sep 2011
    Posts
    1,933

    Default

    Hi,
    The chunks are currently 2 seconds in duration even though you have configured a 1 second duration and this is because the chunks are created on keyframes and you only have 1 keyframe every 2 seconds.
    The duration of the chunks will not change in size unless the keyframe interval changes for some reason. You can log the chunks created by Wowza beyond the 10 chunks which are logged by default.

    To do so, add the following property to the LiveStreamPacketizer/Properties container in Application.xml. This instructs the Wowza server to log information for every HTTP chunk that's created (not just the first 10 chunks).
    <Property>
    	<Name>maxChunkLogCount</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    Regards,
    Jason

  3. #3

    Default

    You can also modify the other packetizers:
    How to configure Adobe HTTP Dynamic Streaming packetization (sanjosestreaming)
    How to configure Microsoft Smooth Streaming packetization (smoothstreaming)
    How to configure MPEG-DASH packetization (mpegdashstreaming)

    Or, if you are only doing cupertino streaming, you can disable these packetizers for this application.

    Kind regards,

    Salvadore

  4. #4
    Join Date
    Aug 2014
    Posts
    27

    Default

    Hi,

    Initially as I set cupertinoChunkDurationTarget=1000 and keyframe interval=1 , I didn't find any delay while playing the url in ipad. But if Iam running the wowza server for a long time continuously, then again I am observing the latency for more than 25 secs while playing in the ipad even though it was set correctly. Please suggest me what might be the problem for this?

    Thanks in advance.

  5. #5
    Join Date
    Sep 2011
    Posts
    1,933

    Default

    Quote Originally Posted by JasonH View Post
    Hi,
    The chunks are currently 2 seconds in duration even though you have configured a 1 second duration and this is because the chunks are created on keyframes and you only have 1 keyframe every 2 seconds.
    The duration of the chunks will not change in size unless the keyframe interval changes for some reason. You can log the chunks created by Wowza beyond the 10 chunks which are logged by default.

    To do so, add the following property to the LiveStreamPacketizer/Properties container in Application.xml. This instructs the Wowza server to log information for every HTTP chunk that's created (not just the first 10 chunks).
    <Property>
    	<Name>maxChunkLogCount</Name>
    	<Value>0</Value>
    	<Type>Integer</Type>
    </Property>
    By logging all the chunks not just the first 10 you will be able to see in the logs what the duration of the chunks are when you experience this problem.

    To help further I recommend that you open a ticket by sending an email to support@wowza.com

    When creating a ticket, please include a description of the issue, a link to this thread for reference and a ZIP file containing the following directories:
    [Wowza-Install]/conf/
    [Wowza-Install]/logs/
    [Wowza-Install]/transcoder/

    Please make sure you provide logs which show Wowza server starting.

    If you are not sure how to get this information please see the following tutorial.
    How to create a compressed zip file in Windows, OS X, and Linux

    - If you have a live stream please outline the type of encoder in use along with the encoding settings for the stream.
    - If you are using a .stream file to start re-streaming please provide this.
    - If you are using multiple bitrates (ABR) then please provide the SMIL file associated with your configuration.

    Ensure that the maxChunkLogCount Property has been added and that you can see the chunks being created beyond the first 10 chunks.
    Please also provide a time which you where experiencing the issue so we can check the chunks at this time.

    Regards,
    Jason

  6. #6
    Join Date
    Aug 2014
    Posts
    27

    Default

    Hi,

    Thanks a lot for your quick reply. I will try it out with the above modifications that you have mentioned and let you know.

    Thanks
    -bhagya

  7. #7
    Join Date
    Sep 2011
    Posts
    1,933

    Default

    Hi,
    Thanks for the update, we look forward to hearing from you.

    Regards,
    Jason

Similar Threads

  1. Replies: 4
    Last Post: 10-06-2014, 02:21 AM
  2. Replies: 2
    Last Post: 09-29-2014, 06:46 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •