I have a live stream running 24/7 via ALME to FMS 4.5 that works perfectly and shows in real-time when viewing on a PC or an Android phone (via RTMP). But when I view it on an iPad (via HTTP Live Streaming) all I get is a small chuck (a few seconds) of a video that would have been from many hours before (i.e viewed the stream at 10pm and all I saw was a few-second clip of daylight).
I am on a tight deadline to complete this project and am totally baffled with what I am seeing.
Any ideas from anyone?
Here's the HTTP stream link:
http://66.118.69.146/hls-live/livepkgr/_definst_/liveevent/camera1.m3u 8
And here's the link for the same stream via RTMP:
http://www.connect-bridgeport.com/videoPlayer.cfm?feed=7251E4B3CDB82B2 9BFFC8671FB2AA62E
I didn’t play the stream. Don’t have an iDevice with me right now ☹
We can do one more thing, check the HDS playback.
Can you play this URI http://66.118.69.146/hds-live/livepkgr/_definst_/liveevent/camera1.f4m
using this player http://www.osmf.org/configurator/fmp/#
and see if its fine?
You will have to provide a crossdomain.xml in your webroot dir to allow osmf.org
In core.00.log, any warning or error entry. It can be identified with the x-status field starting with (e) or (w).
In Apache logs,
error_log file entries containing Re: Oddness with iPad/HTTP live streaming
access_log file entries with status code other than 200 or 304
Most probably it is looking for crossdomain.xml file.
Can you create one with following content,
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*.osmf.org" secure="false"/>
</cross-domain-policy>
and place in webroot folder please and check the playback again?
File is not accessible.
Try this URI http://66.118.69.146/crossdomain.xml . It’s not working.
Ok, I see what I did - try to hit it now: http://66.118.69.146/crossdomain.xml
File is now found, but Strobe still gives same error
From the core.00.log file:
| 2012-04-28 | 10:07:09 | 4272 | (w)2611173 | This is a rollover scenario | - |
| 2012-04-28 | 10:07:10 | 4272 | (e)2611178 | Error from libf4f.dll: [Utils] [camera1] [camera1] Restarting the recording after 2.000000 days is not allowed. Stopping the recording. Please change the config parameter<MaxRestartGap> under <Recording> in event.xml if you would like to increase this |
| . | - |
| 2012-04-28 | 10:07:10 | 4272 | (e)2611178 | Error from libf4f.dll: f4fAdaptor::record failed. Error: Failed to push media message. | - |
| 2012-04-28 | 10:07:10 | 4272 | (e)2611082 | Failed to record camera1. | - |
| 2012-04-28 | 10:07:10 | 4272 | (e)2611178 | Error from libf4f.dll: f4fAdaptor::record failed. Error: Failed to push media message. | - |
Here's what my current Event file looks like:
<Event>
<EventID>liveevent</EventID>
<Recording>
<FragmentDuration>4000</FragmentDuration>
<SegmentDuration>400000</SegmentDuration>
<DiskManagementDuration>3</DiskManagementDuration>
</Recording>
</Event>
Is it safe to add <MaxRestartGap>4</MaxRestartGap> to the above?
I also read on another post to append this into the stream path in LME:
&adbe-record-mode=record
...so it will start a fresh recording on every encoder restart instead of "appending" to the old recording. Good idea to do this?
Done. I added it and I also appended this into the stream path in LME: &adbe-record-mode=record. Restarted everything, stream back up and working via RTMP and in the remote Strobe player. Guess we'll just have to wait and see if this fixes the issue.
Can't thank you enough for all your help, vijay.das. MUCH appreciated!
North America
Europe, Middle East and Africa
Asia Pacific