Copy link to clipboard
Copied
We've setup an AMS 5 environment and publish a live video on an URL like : rtmp://<my_ams_host>/livepkgr/events/_definst_/liveevent/testlive02 then we were able to read the stream by RTMP as well.
But we wanted to read the live stream using HLS protocol. We've setup the bundled apache (with AMS) as recommaned in the technical documentation.
Normaly we would be able to read the stream at the URL : http://<my_ams_host>/events/_definst_/liveevent/testlive02.m3u8.
But we got 404 errors as if the resource was not found.
The "hls-live" location is configured as following
<Location /hls-live>
HLSHttpStreamingEnabled true
HttpStreamingLiveEventPath "/opt/adobe/ams/applications"
HttpStreamingContentPath "/opt/adobe/ams/applications"
HLSMediaFileDuration 8000
HLSSlidingWindowLength 6
HLSFmsDirPath "/opt/adobe/ams"
HttpStreamingUnavailableResponseCode 503
HLSM3U8MaxAge 2
HLSTSSegmentMaxAge -1
HLSMetaMaxAge 3600
HLSMaxEventAge 300
Options -Indexes FollowSymLinks
</Location>
The hls module is loaded. Vérication made by the following command
sshams@mv271:~$ sudo /opt/adobe/ams/Apache2.2/bin/apachectl -M
[Fri Mar 27 08:48:14 2015] [debug] mod_f4fhttp.cpp(985): mod_f4fhttp - found Professional license
[Fri Mar 27 08:48:14 2015] [debug] mod_f4fhttp.cpp(992): mod_f4fhttp - timeout is unlimited
[Fri Mar 27 08:48:14 2015] [debug] mod_f4fhttp.cpp(1005): mod_f4fhttp - phds permitted by license
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(958): mod_hlshttp - found Professional license
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(965): mod_hlshttp - timeout is unlimited
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(978): mod_hlshttp - Vanilla/PHLS encryption permitted by license
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(958): mod_hlshttp - found Professional license
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(965): mod_hlshttp - timeout is unlimited
[Fri Mar 27 08:48:14 2015] [debug] mod_ioshttp.cpp(978): mod_hlshttp - Vanilla/PHLS encryption permitted by license
[Fri Mar 27 08:48:14 2015] [info] mod_jithttp - AMS installation path: "/opt/adobe/ams"
[Fri Mar 27 08:48:14 2015] [debug] mod_jithttp.cpp(813): mod_jithttp - found Professional license
[Fri Mar 27 08:48:14 2015] [debug] mod_jithttp.cpp(820): mod_jithttp - timeout is unlimited
[Fri Mar 27 08:48:14 2015] [debug] mod_jithttp.cpp(833): mod_jithttp - PHDS is enabled
httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.1.71 for ServerName
Loaded Modules:
...
...
cache_module (shared)
disk_cache_module (shared)
alias_module (shared)
f4fhttp_module (shared)
hlshttp_module (shared)
jithttp_module (shared)
ctrlplane_module (shared)
Syntax OK
After activating debug mode on Apache, we got the following detail in the apache error log
...
[Thu Mar 26 17:18:52 2015] [debug] mod_cache.c(141): Adding CACHE_SAVE filter for /hls-live/livepkgr/events/_definst_/liveevent/testlive02.m3u8
[Thu Mar 26 17:18:52 2015] [debug] mod_cache.c(148): Adding CACHE_REMOVE_URL filter for /hls-live/livepkgr/events/_definst_/liveevent/testlive02.m3u8
[Thu Mar 26 17:18:52 2015] [debug] requesthandler.cpp(246): Reading application wide configs.
[Thu Mar 26 17:18:52 2015] [debug] requesthandler.cpp(246): generating prog index for event:livepkgr/events/events/_definst_ stream name:liveevent/testlive02
[Thu Mar 26 17:18:52 2015] [error] [client 41.190.237.66] File does not exist: /opt/adobe/ams/webroot/hls-live
...
What could be the issue ?
- Our Settings ?
- Our HLS-LIVE URL ?
Any help will be welcome !!!
Regards.
Mamisoa RAMANITRARIVO.
Copy link to clipboard
Copied
Hi Mamisoa,
Welcome to adobe forums.
Kindly check your HLS url it should be like this : http://<my_ams_host>/hls-live/livepkgr/_definst_/liveevent/livestream.m3u8 and make sure that you play HLS stream on Mac safari browser.
And please place the crossdomain.xml file inside your server webroot so that It can allow connections from other domain, you can edit this xml file based upon your requirement.
Here is the sample crossdomain.xml:
<?xml version="1.0"?>
<!-- http://www.osmf.org/crossdomain.xml -->
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
<site-control permitted-cross-domain-policies="all"/>
</cross-domain-policy>
Let me know if you need any help.
Regards,
Puspendra
Copy link to clipboard
Copied
Hi Pushpendra and thanks for your answer.
But, unfortunately I keep on to have the same error.
Actually, I've made a mistake in my message above. My HLS-LIVE URL is http://<my_ams_host>/hls-live/livepkgr/events/_definst_/liveevent/testlive02.m3u8.
Could you explain me why I had the following line in my apache's error_log
...
[Thu Mar 26 17:18:52 2015] [debug] mod_cache.c(141): Adding CACHE_SAVE filter for /hls-live/livepkgr/events/_definst_/liveevent/testlive02.m3u8
[Thu Mar 26 17:18:52 2015] [debug] mod_cache.c(148): Adding CACHE_REMOVE_URL filter for /hls-live/livepkgr/events/_definst_/liveevent/testlive02.m3u8
[Thu Mar 26 17:18:52 2015] [debug] requesthandler.cpp(246): Reading application wide configs.
[Thu Mar 26 17:18:52 2015] [debug] requesthandler.cpp(246): generating prog index for event:livepkgr/events/events/_definst_ stream name:liveevent/testlive02
[Thu Mar 26 17:18:52 2015] [error] [client 41.190.237.66] File does not exist: /opt/adobe/ams/webroot/hls-live
...
Why did Apache try to find the resource under the "webroot" directory. I thought it's a kind of "virtual resource". Isn't it ???
Thanks in advance.
Mamisoa.
Copy link to clipboard
Copied
Did you placed crossdomain.xml file inside webroot of AMS.
Regards,
Puspendra
Copy link to clipboard
Copied
Yes, of course 🙂
Mamisoa.
Copy link to clipboard
Copied
Please upload your httpd.conf.
Copy link to clipboard
Copied
Unable to upload my apache config file, I've dumped its whole content below
#
# This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/2.2/> for detailed information.
# In particular, see
# <URL:http://httpd.apache.org/docs/2.2/mod/directives.html>
# for a discussion of each configuration directive.
#
# Please see httpd.conf.orig for the configuration of a default
# (non-AMS) installation of apache.
#Listen 80
Listen 8134
# If you plan to run AMS as root on linux, you _must_ specify a
# valid user, with access to the AMS installation direction, or
# apache will not run.
#
# If you've used the default installer, nobody (or whatever other
# username you gave to the installer) will work here.
#
# If you're running a developer build under your own home directory,
# you should use your own username.
AccessFileName .htaccess
ServerSignature On
UseCanonicalName Off
HostnameLookups Off
Timeout 120
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
ErrorLog logs/error_log
LogLevel debug
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog logs/access_log combined
# Proxy rtmpt to AMS
ProxyRequests Off
ProxyPass /open/ http://localhost:1935/open/
ProxyPass /close/ http://localhost:1935/close/
ProxyPass /idle/ http://localhost:1935/idle/
ProxyPass /send/ http://localhost:1935/send/
ProxyPass /fcs/ http://localhost:1935/fcs/
ProxyPass /fms/ http://localhost:1935/fms/
DocumentRoot "C:\Program Files\Adobe\Adobe Media Server 5\webroot"
DirectoryIndex index.html index.html.var index.php index.php3 index.php4 index.php5 index.py index.pl index.rb
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Satisfy all
</Directory>
<Directory "C:\Program Files\Adobe\Adobe Media Server 5\webroot">
Options -Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /documentation ../documentation/
<Directory ../documentation/>
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /icons/ "icons/"
<Directory "icons">
Options MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Alias /error/ "error/"
ScriptAlias /cgi-bin/ "cgi-bin/"
<Directory "cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 10.0.0.0/8
Allow from 172.16.0.0/12
Allow from 192.168.0.0/16
Allow from 127.
</Location>
ExtendedStatus On
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from 10.0.0.0/8
Allow from 172.16.0.0/12
Allow from 192.168.0.0/16
Allow from 127.
</Location>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
</FilesMatch>
<IfModule mpm_winnt_module>
ThreadsPerChild 250
MaxRequestsPerChild 0
</IfModule>
<IfModule worker_module>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_anon_module modules/mod_authn_anon.so
#LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
#LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
#LoadModule cern_meta_module modules/mod_cern_meta.so
<IfModule mpm_winnt_module>
LoadModule cgi_module modules/mod_cgi.so
</IfModule>
<IfModule worker_module>
LoadModule cgid_module modules/mod_cgid.so
</IfModule>
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule file_cache_module modules/mod_file_cache.so
LoadModule headers_module modules/mod_headers.so
LoadModule imagemap_module modules/mod_imagemap.so
LoadModule include_module modules/mod_include.so
LoadModule info_module modules/mod_info.so
<IfModule mpm_winnt_module>
LoadModule isapi_module modules/mod_isapi.so
</IfModule>
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
#LoadModule speling_module modules/mod_speling.so
LoadModule status_module modules/mod_status.so
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule userdir_module modules/mod_userdir.so
#LoadModule usertrack_module modules/mod_usertrack.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule ssl_module modules/mod_ssl.so
LoadModule f4fhttp_module modules/mod_f4fhttp.so
LoadModule hlshttp_module modules/mod_hlshttp.so
LoadModule jithttp_module modules/mod_jithttp.so
LoadModule ctrlplane_module modules/mod_ctrlplane.so
<IfModule ctrlplane_module>
<Location /ctrlplane>
SetHandler ctrlplane
HdsHttpStreamingLiveEventPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
HlsHttpStreamingLiveEventPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
MaxBootstrapAge 300
Options -Indexes FollowSymLinks
</Location>
</IfModule>
##############################################################################
# The following section enables caching of Just-In-Time packaged content #
# Use htcacheclean tool to manage the amount of data that is cached on disk. #
# See Apache documentation for its usage. #
# http://httpd.apache.org/docs/2.2/programs/htcacheclean.html #
# Make sure the directory specified by the CacheRoot directive exists. The #
# default is a directory named cacheroot that is directly under the Apache #
# installation directory. #
# For more information on content caching, see Apache documentation #
# http://httpd.apache.org/docs/2.2/caching.html #
##############################################################################
# Uncomment this to enable caching
#LoadModule cache_module modules/mod_cache.so
<IfModule mod_cache.c>
LoadModule disk_cache_module modules/mod_disk_cache.so
<IfModule mod_disk_cache.c>
CacheEnable disk /hds-vod
CacheEnable disk /hls-vod
CacheRoot cacheroot
CacheMaxFileSize 10000000
CacheLock On
</IfModule>
</IfModule>
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE application/vnd.apple.mpegurl
Header append Vary Accept-Encoding env=!dont-vary
</IfModule>
<IfModule f4fhttp_module>
<Location /vod>
HttpStreamingEnabled true
HttpStreamingContentPath "C:\Program Files\Adobe\Adobe Media Server 5\webroot\vod"
Options -Indexes FollowSymLinks
</Location>
# Drop the Range header when more than 5 ranges.
# CVE-2011-3192
SetEnvIf Range (,.*?){5,} bad-range=1
RequestHeader unset Range env=bad-range
# map old style url to new (as of FMS 4.5), more compact url
Redirect 301 /live/events/livepkgr/events /hds-live/livepkgr
Redirect 301 /live/events/livepkgr/streams/livepkgr /hds-live/streams/livepkgr
# If you are using any other location directive and 'audio-only=true' in the query parameter for AMS 5.0,
# please replace hls-live or hls-vod with that location directive below
RewriteEngine On
RewriteCond %{QUERY_STRING} audio-only=true
RewriteCond %{QUERY_STRING} codec=aac
RewriteRule ^/hls-vod/(.+).m3u8$ /hls-vod/audio-only-aac/$1.m3u8? [R=301,L]
RewriteCond %{QUERY_STRING} audio-only=true
RewriteRule ^/hls-vod/(.+).m3u8$ /hls-vod/audio-only/$1.m3u8? [R=301,L]
RewriteCond %{QUERY_STRING} audio-only=true
RewriteCond %{QUERY_STRING} codec=aac
RewriteRule ^/hls-live/(.+).m3u8$ /hls-live/audio-only-aac/$1.m3u8? [R=301,L]
RewriteCond %{QUERY_STRING} audio-only=true
RewriteRule ^/hls-live/(.+).m3u8$ /hls-live/audio-only/$1.m3u8? [R=301,L]
<Location /hds-live>
HttpStreamingEnabled true
HttpStreamingLiveEventPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
HttpStreamingContentPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
HdsFmsDirPath ".."
HttpStreamingF4MMaxAge 2
HttpStreamingBootstrapMaxAge 2
HttpStreamingDrmmetaMaxAge 3600
HttpStreamingFragMaxAge -1
Options -Indexes FollowSymLinks
</Location>
</IfModule>
<IfModule hlshttp_module>
<Location /hls-live>
HLSHttpStreamingEnabled true
HttpStreamingLiveEventPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
HttpStreamingContentPath "C:\Program Files\Adobe\Adobe Media Server 5\applications"
HLSMediaFileDuration 8000
HLSSlidingWindowLength 6
HLSFmsDirPath ".."
HttpStreamingUnavailableResponseCode 503
########################################
# Cache-control header configuration start
# Specify the max-age(in secs) to set in the Cache-Control header
# for different response types (m3u8, ts, drmmeta,...).
# A value of -1 turns off setting the cache control header.
HLSM3U8MaxAge 2
HLSTSSegmentMaxAge -1
HLSMetaMaxAge 3600
HLSMaxEventAge 300
# Cache-control header configuration end
########################################
# Uncomment the following directives to enable encryption
# for this location.
# HLSEncryptionScope server
# HLSEncryptCipherKeyFile "../creds/liveeventkey.bin"
# HLSEncryptKeyURI "https://<ServerName>/hls-key/liveeventkey.bin"
Options -Indexes FollowSymLinks
</Location>
<Location /hls-vod>
HLSHttpStreamingEnabled true
HLSMediaFileDuration 8000
HttpStreamingContentPath "C:\Program Files\Adobe\Adobe Media Server 5\webroot\vod"
HLSFmsDirPath ".."
HLSJITConfAllowed true
########################################
# Cache-control header configuration start
# Specify the max-age(in secs) to set in the Cache-Control header
# for different response types (m3u8, ts, drmmeta,...).
# A value of -1 turns off setting the cache control header.
HLSM3U8MaxAge 86400
HLSTSSegmentMaxAge 86400
HLSMetaMaxAge 3600
# Cache-control header configuration end
########################################
# Uncomment the following directives to enable encryption
# for this location.
# HLSEncryptionScope server
# HLSEncryptCipherKeyFile "../creds/vodkey.bin"
# HLSEncryptKeyURI "https://<ServerName>/hls-key/vodkey.bin"
Options -Indexes FollowSymLinks
</Location>
</IfModule>
<IfModule jithttp_module>
<Location /hds-vod>
HttpStreamingJITPEnabled true
HttpStreamingContentPath "C:\Program Files\Adobe\Adobe Media Server 5\webroot\vod"
HttpStreamingJITConfAllowed true
JitFmsDirPath ".."
Options -Indexes FollowSymLinks
# Uncomment the following directives to enable encryption
# for this location.
# EncryptionScope server
# ProtectionScheme phds
</Location>
</IfModule>
TypesConfig conf/mime.types
MIMEMagicFile conf/magic
DefaultType text/plain
AddType video/x-flv .flv
AddType video/MP2T .ts
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-mpegurl .m3u8
AddHandler send-as-is asis
AddHandler type-map var
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
<IfModule userdir_module>
UserDir disable
</IfModule>
<IfModule dav_fs_module>
DAVLockDB tmp/dav/lockdb
</IfModule>
IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*
AddIconByType (VID,/icons/movie.gif) application/x-shockwave-flash
AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core
AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^
DefaultIcon /icons/unknown.gif
ReadmeName README.html
HeaderName HEADER.html
IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw
LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
ForceLanguagePriority Prefer Fallback
AddDefaultCharset UTF-8
<IfModule mod_negotiation.c>
<IfModule mod_include.c>
<Directory "error">
AllowOverride None
Options IncludesNoExec
AddOutputFilter Includes html
AddHandler type-map var
Order allow,deny
Allow from all
LanguagePriority en es de fr
ForceLanguagePriority Prefer Fallback
</Directory>
</IfModule>
</IfModule>
BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0
BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
#Uncomment following for enabling https based key serving
#for HLS.
#Include conf/httpd-hls-secure.conf
Hoping it will help.
Mamisoa.
Copy link to clipboard
Copied
Hi Mamisoa:
I use FMS 4.5 so excuse some of these questions.
See the article linked in No. 3 and follow the steps for a single stream before you try multi-streams:
Publish and play live multi-bitrate streams over HTTP
Live multi-bitrate streams:
<Event>
<EventID>liveevent</EventID>
<Recording>
<FragmentDuration>4000</FragmentDuration> <SegmentDuration>16000</SegmentDuration> <DiskManagementDuration>3</DiskManagementDuration>
</Recording>
</Event>
#EXTM3U #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=150000
http:// localhost/hls-live/livepkgr/_definst_/liveevent/livestream1.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=500000
http:// localhost/hls-live/livepkgr/_definst_/liveevent/livestream2.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=700000
http:// localhost/hls-live/livepkgr/_definst_/liveevent/livestream3.m3u8