When I try to play an HTTP Live Stream using OSMF Player, I get "URL missing from Media tag" error.
I installed Flash MS4.0 with Apache2.2.
My live manifest file (f4m) is below.
http://localhost/live/events/livepkgr/events/_definst_/liveevent.f4m
<manifest>
Hey,
Looks at the media-url tag in your manifest, it has some unknown characters (like %i). Does that match with zeri assets in that folder.Looks like it has some typo.
My sample manifest that works looks like this
<manifest><id>
livepkgr/events/_definst_/liveevent
</id><mimeType>
</mimeType><streamType>
live
</streamType><duration>
0
</duration><dvrInfo beginOffset="0" endOffset="60">
</dvrInfo><bootstrapInfo profile="named" url="../../../../streams/livepkgr/streams/_definst_/livestream/livest ream.bootstrap" id="bootstrap6101">
</bootstrapInfo><media streamId="livestream" url="../../../../streams/livepkgr/streams/_definst_/livestream/livest ream" bootstrapInfoId="bootstrap6101"><metadata>
AgAKb25NZXRhRGF0YQgAAAAAAAhkdXJhdGlvbgBAhWhBiTdLxwAFd2lkdGgAAAAAAAAAA AAABmhlaWdodAAAAAAAAAAAAAAMdmlkZW9jb2RlY2lkAgAESDI2NAAMYXVkaW9jb2RlY2l kAgAEbXA0YQAKYXZjcHJvZmlsZQBAUIAAAAAAAAAIYXZjbGV2ZWwAQD4AAAAAAAAABmFhY 2FvdAAAAAAAAAAAAAAOdmlkZW9mcmFtZXJhdGUA//gAAAAAAAAAD2F1ZGlvc2FtcGxlcmF 0ZQBA1YiAAAAAAAANYXVkaW9jaGFubmVscwBAAAAAAAAAAAAJdHJhY2tpbmZvCgAAAAIDA AZsZW5ndGgAAAAAAAAAAAAACXRpbWVzY2FsZQBAj0AAAAAAAAAIbGFuZ3VhZ2UCAANlbmc AAAkDAAZsZW5ndGgAAAAAAAAAAAAACXRpbWVzY2FsZQBAj0AAAAAAAAAIbGFuZ3VhZ2UCA ANlbmcAAAkAAAk=
</metadata></media></manifest>
And my zeri assets in the folder ../../../../streams/livepkgr/streams/_definst_/livestream are livestreamSeg1.f4f, livestreamSeg2.f4f .....
It matches the files.
C:\Program Files\Adobe\Flash Media Server 4\applications\livepkgr\streams\_definst_ includes:
livestream%i1
livestream%i2
livestream%i3
C:\Program Files\Adobe\Flash Media Server 4\applications\livepkgr\streams\_definst_\livestream%i1 includes:
livestream%i1.bootstrap
livestream%i1.control
livestream%i1.meta
livestream%i1Seg1.f4f
livestream%i1Seg1.f4x
As you must already be observing, %i in the stream name is needed/used only in the MBR case (multi bit rate).
How are you publishing the streams ? Are you using FMLE or any other encoder ? Can you let us know how many streams you published and the publish url please ?
If you are publishing multiple streams, then make sure the following :
Encoder should publish multiple streams (three is a good choice generally). make sure %i is added in the publisher strings so that you have streams with the names livestream1 , livestream2 and livestream3 (no %i in the final published stream name! )
Make sure the manifest.xml ( that you have under the application folder for livepkgr/events/liveevent ) has three stream ids added corresponding to the published streams from the encoder with the bit rate tag added (please refer the documentation on how to add the tags in manifest.xml).
Once these two are confirmed, you may now want to see if the .f4m file that you queried for is having the bitrate info and then the strobe player should be able to play it without any errors (1.5 version is good to use).
Please let us know if that helped.
Thank you !
I am using other encoder than FMLE. I am publishing 3 streams.
rtmp://x.y.z.w/livepkgr
H264 BL3.0 60kbps, 160kbps and 310kbps & AAC-LC Stereo 32kHz 40kbps & Fragment duration 4 sec
>>> matches C:\Program Files\Adobe\Flash Media Server 4\applications\livepkgr\events\_definst_\liveevent Event.xml and Manifest.xml files.
<FragmentDuration>4000</FragmentDuration>
<media streamId="livestream1" bitrate="100" />
<media streamId="livestream2" bitrate="200" />
<media streamId="livestream3" bitrate="350" />
(e.g. 60kbps video + 40kbps audio for the 1st stream)
I have Common output parameters > Stream Name configuration on my Live Transcoder and I write the following:
livestream%i?adbe-live-event=liveevent&adbe-http-streaming-ver=1.0
Then Admin Console > View Apps > Live Log includes the following:
Stream name is: livestream%i1 and live event is: liveevent
Stream name is: livestream%i2 and live event is: liveevent
Stream name is: livestream%i3 and live event is: liveevent
As you say, it seems %i above causes the problem, but how to fix it?
My f4m includes the bitrates:
Hi,
If you are using encoder other than FMLE, then you need to confirm whats the process to send MBR streams. %i is specific to FMLE when you want to publish MBR from FMLE to FMS and the documentation for HTTP Dynamic Streaming is written with reference to FMLE only.
If there is an option for you, can you please try publishing using FMLE ? Rest of things stand exactly the same.
Thank you !
I removed %i from the stream name configuration on Live Encoder and now I am able to play Http Dynamic Live with both OSMF Player and
Strobe Media Playback.
livestream%i?adbe-live-event=liveevent&adbe-http-streaming-ver=1.0
>
livestream?adbe-live-event=liveevent&adbe-http-streaming-ver=1.0
Following misleaded me which is suggested in the Live HTTP Dynamic Streaming Tutorial:
3.e
In the Stream text box, enter livestream%i?adbe-live-event=liveevent&adbe-http-streaming-ver=1.0.
Note: The applications/livepkgr/main.asc file expects this value.
Thanks anyway!
North America
Europe, Middle East and Africa
Asia Pacific