• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
Locked
0

How to reduce the live delay time with hls-live?

New Here ,
Feb 14, 2012 Feb 14, 2012

Copy link to clipboard

Copied

I'm noticing a 13-16 second delay with live streams to iOS devices. Is there any way to improve this delay time by modifying the Event.xml parameters or the Apache hlshttp_module parameters in httpd.conf?

Thank you for any tips.

Views

9.4K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 14, 2012 Feb 14, 2012

Copy link to clipboard

Copied

Apples HLS spec for client says that client will play the 3rd last segment in the playlist. So you are bound to get the latency of 3*media-file-duration. In FMS, we set media file duration to be 8000 ms (8 sec).. You can try to reduce it to 4000 or 2000 ..in either httpd.conf, or event.xml, application.xml

However, you may read http://knowfms.wordpress.com/2011/09/22/best-practices-for-setting-ios-media-file-duration/ for knowing the implications (pros-cons) of this..

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Feb 15, 2012 Feb 15, 2012

Copy link to clipboard

Copied

Great, thanks. I saw the parameter media-file-duration in httpd.conf but I assume this is the same as FragmentDuration in Event.xml, correct?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 15, 2012 Feb 15, 2012

Copy link to clipboard

Copied

No its not same - it needs to same or multiple of FragmentDuration. I think article which Nitin has pointed out in his previous post should help you understand things better,

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Feb 16, 2012 Feb 16, 2012

Copy link to clipboard

Copied

I have the same problem,..the delay around 8~12 seconds,..

I changed the keyframe frequency to 1 second in Flash Media Live Endcoder's video setting,..

and the "httpd.conf" config file in "Flash Media Server4.5\Apache2.2\conf",..

<IfModule hlshttp_module>

<Location /hls-live>

     xxxxxxxxxxxxx

     HLSMediaFileDuration 2000

the other config is default,..can't solve this problem,..anyone can help us>??

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 16, 2012 Feb 16, 2012

Copy link to clipboard

Copied

Just request the m3u8 from browser and download it.. This is plan text file. Just check that your target duration is set to 2 after the httpd.conf change. If not, you have either not restarted the apache server after the change or Event.xml or Application.xml is overridign this vlaue..

Regarding delay.. I am not sure you can get better than this on Http streaming.. I hope you read the article and understands why all Http streaming protocols suffers from delay..

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Feb 16, 2012 Feb 16, 2012

Copy link to clipboard

Copied

Nitin Goel, thanks for your help!

I have readed your link in previous post, I have a little bit understands why have delay in the http streaming protocols

But the delay is around ten more second, I think it must  somhavee problem in my setting.

After I restart the server after change the "httpd.conf" file and check m3u8 's xml, the duration is 0.

I have find the 2 Event.xml file in "Flash Media Server 4.5" folder

"sample\application\livepkgr\events\_definst_\liveevent"

     I don't know where is this file's duration setting.

"Apache2.2\manual\mod"

<FragmentDuration>4000</FragmentDuration>

<SegmentDuration>400000</SegmentDuration>

<DiskManagementDuration>3</DiskManagementDuration>        

And I find the Application.xml in "application\livepkgr"

the only 1 setting is

<Live>

<AssumeAbsoluteTime>true</AssumeAbsoluteTime>

</Live>

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 19, 2012 Feb 19, 2012

Copy link to clipboard

Copied

In httpd.conf , you can edit HLSMediaFileDuration .. it is specified in milliseconds

<Location /hls-live>

    HLSHttpStreamingEnabled true

    HttpStreamingLiveEventPath "../applications"

    HttpStreamingContentPath "../applications"

    HLSMediaFileDuration 8000

    HLSSlidingWindowLength 6

    HLSFmsDirPath ".."

    HLSM3U8MaxAge 2

    HLSTSSegmentMaxAge -1

    Options -Indexes FollowSymLinks

</Location>

In Event.xml

You can add

<Recording>

</Recording>

<HLS>

       <MediaFileDuration>2000</MediaFileDuration>

</HLS>

<HLS> tag has to be sibling tag of the <Recording>

Same applies to Application.xml

Read Application-level and event-level configurations for live HLS @ http://help.adobe.com/en_US/flashmediaserver/devguide/WSeb6b7485f9649bf23d103e5512e08f3a338-8000.htm...

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Feb 25, 2012 Feb 25, 2012

Copy link to clipboard

Copied

Am I correct in assuming that Event.xml overrides Application.xml and httpd.conf, and Application.xml overrides httpd.conf?  Then httpd.conf values are used if they are not specified in the Application or event?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Feb 27, 2012 Feb 27, 2012

Copy link to clipboard

Copied

LATEST

Yes you are right in your assumptions.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines