I have created a live stream using Amazon Web Services and Adobe Flash Media Server 4.5.
AWS provides me with both a .f4m and .m3u8 file, to use in <object><embed> and <video> tags, respectively.
The .f4m loads fine on my desktop browser, and the .m3u8 file loads fine on my iOS device. However, my Android devices will not load either file.
What code/solutions are there to get this to play on Android devices?
My current .f4m code (retrieved from http://www.osmf.org/configurator/fmp):
<object width="600" height="409">
<param name="movie" value="http://fpdownload.adobe.com/strobe/FlashMediaPlayback_101.swf"></param>
<param name="flashvars" value="src=http%3A%2F%2F<myinfo>.cloudfront.net%2Fhds-live%2Flivepkgr %2F_definst_%2Fliveevent%2Flivestream.f4m"></param>
<param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<embed src="http://fpdownload.adobe.com/strobe/FlashMediaPlayback_101.swf" type="application/x-shockwave-flash" allowscriptaccess="always"
allowfullscreen="true" width="600" height="409" flashvars="src=http%3A%2F%2F<myinfo>.cloudfront.net%2Fhds-live%2Flive pkgr%2F_definst_%2Fliveevent%2Flivestream.f4m">
My current .m3u8 code:
<video src="http://myinfo>.cloudfront.net/hls-live/livepkgr/_definst_/liveevent/livestream.m3u8 " height="300" width="400"> </video>
I have just tried with an OSMF player on my android device and was successfully able to ply one of the hds vod streams that ships with FMS4.5.
I have created this player once for my own testing purpose, so when I have provided the url like - "http://<myamazoninstance>/hds-vod/sample1_150kbps.f4v.f4m", it started stremaing without issues.
Although, so far I havent tried making a html, hosting on a webserver and then finding the issue.
What I will suggest you to directly play the stream on your android device using the swf file and see if it plays fine.
Just in case if you like I can share the air apk I have used to test this functionality.
Few additional things which I just came across while setting up for live stream on my Android from AWS are as follows:
1. for the first time when I tried to run the live stream on my android app, it didnt run at all and I thought your concerns are valid for an instance :-) .
2. Later, I killed the application from task manager, restarted it cleanly and again provided the url and it streamed without issues.
Please also ensure that:
- You had put a crossdomain.xml file under <fmsinstalldirectory>/webroot folder.
- You have provided the correct stream name in the <media> tag in Manifest.xml file inside <fmsinstalldirectory>/livepkgr/events/_definst_/liveevent folder
(hopefully you have done it since you are already playing it on PC)
You may also like to cehck the apache logs inside <fmsinstalldirectory>/Apache2.2/logs/access_logs folder to find whether your Android device request is reaching to the server.
Hope these steps will help you in osloating the problem.
Where can I find/how do I access the FMS Install Directory and files? I'm on AWS and their CloudFormation - how can I access the files to see the logs and .xml files?
Edit: Found the answers here: http://www.turnkeylinux.org/forum/support/20100413/how-do-you-get-data -and-out-ec2-instance
As to the Android, I tried again and all loads fine.
In context of AWS, you may like to check following locations:
fms logs - /mnt/logs - here you will get master.00.log, access.00.log, edge.00.log and other applications and admin logs
fms application folder - /mnt/applications - location to put your fms applications
fms webroot folder - /mnt/webroot folder
default fms install directory - /opt/adobe/fms
fms conf file locations - /opt/adobe/fms/conf - here you will find all the xml files
Apache directory - /opt/adobe/fms/Apache2.2
Apache logs directory - /opt/adobe/fms/Apache2.2/logs - for HDS/HLS logging purpose
Hope this will help.