Skip to main content
Participating Frequently
January 16, 2013
Question

HLS not working

  • January 16, 2013
  • 1 reply
  • 3670 views

Hello,

I've installed AMS on a CentOS 6.3 (not supported). I configured everything and RTMP works perfectly.

When installing, I choose not to install Apache since I already have Apache with cPanel.

Now, I want to also test iOS streaming so I want to get HLS to work.

I started by adding this to my httpd.conf:

LoadModule hlshttp_module modules/mod_hlshttp.so

LoadModule f4fhttp_module modules/mod_f4fhttp.so

LoadModule jithttp_module modules/mod_jithttp.so

<IfModule hlshttp_module>

<Location /hls-live>

    HLSHttpStreamingEnabled true

    HttpStreamingLiveEventPath "/opt/adobe/ams/applications"

    HttpStreamingContentPath "/opt/adobe/ams/applications"

    HLSMediaFileDuration 8000

    HLSSlidingWindowLength 6

    HLSFmsDirPath "/opt/adobe/ams"

    HLSM3U8MaxAge 2

    HLSTSSegmentMaxAge -1

    Options -Indexes FollowSymLinks

</Location>

<Location /hls-vod>

    HLSHttpStreamingEnabled true

    HLSMediaFileDuration 8000

    HttpStreamingContentPath "/opt/adobe/ams/webroot/vod"

    HLSFmsDirPath "/opt/adobe/ams"

    Options -Indexes FollowSymLinks

</Location>

</IfModule>

<IfModule hlshttp_module>

<Location /hds-live>

    HttpStreamingEnabled true

    HttpStreamingLiveEventPath "/opt/adobe/ams/applications"

    HttpStreamingContentPath "/opt/adobe/ams/applications"

        HdsFmsDirPath "/opt/adobe/ams"

    HttpStreamingF4MMaxAge 2

    HttpStreamingBootstrapMaxAge 2

    HttpStreamingDrmmetaMaxAge 3600

    HttpStreamingFragMaxAge -1

    Options -Indexes FollowSymLinks

</Location>

</IfModule>

<IfModule jithttp_module>

<Location /hds-vod>

    HttpStreamingJITPEnabled true

    HttpStreamingContentPath "/opt/adobe/ams/webroot/vod"

    HttpStreamingJITConfAllowed true

    JitFmsDirPath "/opt/adobe/ams"

    Options -Indexes FollowSymLinks

</Location>

</IfModule>

Listen 0.0.0.0:8134

<VirtualHost myIP:8134>

DocumentRoot /opt/adobe/ams/webroot

ServerName myWeb.net

ServerAlias stream.myWeb.net

</VirtualHost>


I followed AMS / FMS manual in getting this setup. (http://help.adobe.com/en_US/flashmediaserver/devguide/WSd391de4d9c7bd609-52e437a812a3725dfa0-8000.html)

Now, when I open myWeb.net:8134 the index.html from /opt/adobe/ams/webroot is displayed and works perfectly.

I try to stream HLS following the steps in the link above but I always get Internal Server Error.

http://www.myWeb.net:8134/hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

I also tried to open http://www.myWeb.net:8134/hls-live/livepkgr/_definst_/liveevent/Event.xml but I get Not Found error.

I checked the core log in AMS but there is no error.
Checking Apache log I found this:

[Wed Jan 16 05:04:03 2013] [error] mod_hlshttp [500]: Unknown exception when processing /hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

I've tried to many things to get it work. What am I doing wrong?

Thank you.

This topic has been closed for replies.

1 reply

Participating Frequently
January 16, 2013

For FMS Apache modules you need to use libapr-1.so and libaprutil-1.so.

Follow the following steps to solve the issue:

  1. Run ps and find out the pid for httpd
  2. Open file /proc/[PID found in step 1]/maps. Search for libapr-1.so and libaprutil-1.so in this file and check where these libs are picked up from.
  3. Check the versions picked up. For our modules we need libapr-1.so.0 and libaprutil-1.so.0. These comes with the Apache bundled with FMS. So in case the version picked up are not the same and you have these files from the bundled Apache then can create a soft-link to these files.

          ln -s [FMS_INSTALLDIR]/Apache2.2/lib/libaprutil-1.so.0 libaprutil-1.so.0

          ln -s [FMS_INSTALLDIR]/Apache2.2/lib/libapr-1.so.0 libaprutil-1.so.0

Restart Apache and this should solve the issue for you.

AoEIIAuthor
Participating Frequently
January 17, 2013

Hello,

I replaced those two files and made sure Apache uses the new ones, although it's an older version (instead of soft linking I replaced with the actual file).

Anyway, I get the same errors:

[Thu Jan 17 02:24:31 2013] [error] mod_hlshttp [500]: Unknown exception when processing /hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

[Thu Jan 17 02:24:31 2013] [error] [client my_ip] File does not exist: /opt/adobe/ams/webroot/500.shtml

[Thu Jan 17 02:24:39 2013] [error] mod_hlshttp [500]: Unknown exception when processing /hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

[Thu Jan 17 02:24:39 2013] [error] [client my_ip] File does not exist: /opt/adobe/ams/webroot/500.shtml

[Thu Jan 17 02:24:40 2013] [error] mod_hlshttp [500]: Unknown exception when processing /hls-live/livepkgr/_definst_/liveevent/livestream.m3u8

[Thu Jan 17 02:24:40 2013] [error] [client my_ip] File does not exist: /opt/adobe/ams/webroot/500.shtml

What else should I do?

Participating Frequently
January 17, 2013

Hi

This is the only change required.

Can you check what's there in the maps file?

If possible just post the lines from the map file where you see reference to libaprutil and libapr.