开发者

Is it possible to play HTTP Live Streaming video within Flash platform designed for iOS? (.m3u8 playlist)

We're using HTTP live streaming service designed for Apple's iOS devices. It's working well with iOS devices currently.

Source video fragments are stored in server formatted in H.264 and with MPEG2(.ts) container. Is there a way to play these video in Flash platform?


These are my current investigations.

  1. As I know, Adobe offers their own streaming format F4F, anyway we already decided not to go for it.

  2. There is OSMF framework and an implementation. http://code.google.com/p/apple-http-osmf/

Option #2 looks good. But I have no id开发者_如何学编程ea about how can I use it. How can I use this? What's OSMF? Is it possible to run in standard Flash Player for web browsers? And is it work smoothly like in iOS? (smoothly means no struggling) If you have used this OSMF stuff for this purpose, please let me know!


P.S.

I'm finding client-side method primarily. We prefer progressive download if this is impossible in Flash Player.


The latest version of JWPlayer (version 6) supports playing HLS streams in Flash for desktop machines, and in HTML5 mode for iOS. Relevant links:

  • http://www.longtailvideo.com/jw-player/hls-rtmp-live-streaming/
  • http://www.longtailvideo.com/support/jw-player/29393/hls-adaptive-stream/
  • http://www.longtailvideo.com/support/jw-player/28856/using-apple-hls-streaming/

If anyone knows other players which support playing HLS streams in flash, please let me know.

Update: Found few non-free solutions to play HLS in flash:

http://www.uplynk.com/

http://onlinelib.de/ (have separate licensed plugin for SMP)

http://www.unified-streaming.com/

Another One: http://flowplayer.electroteque.org/httpstreaminghls


there is also a free HLS Plugin/Player available here: https://github.com/mangui/flashls it works fine with FlowPlayer, OSMF Based Player (GrindPlayer/Strobe Media Playback), MediaElement.js and video.js. it also provides an AS3 library to easily write custom flash player supporting HLS playback


Yes, it's possible with a free plugin for Flowplayer Flash. I did it myself and explained it in my blog post.


There's a video.js plugin available that does HLS quite nice: https://github.com/videojs/videojs-contrib-hls


Check out hls.js, a javascript player that uses HTML5 video and Media Source Extensions (MSE) to do HLS playback without Flash.

MSE is only supported on modern browsers though (Chrome 34+, Firefox 38+ (with media.mediasource.whitelist=false in about:config), and IE11+), so it won't work everywhere. The Flowplayer hls.js plugin uses it when possible and falls back to Flash otherwise.

See the hls.js github repo and their public demo for more.

hls.js works by transmuxing MPEG-2 Transport Stream into ISO BMFF (MP4) fragments. this transmuxing could be performed asynchronously using Web Worker if available in the browser. hls.js does not need any player, it works directly on top of a standard HTMLelement.


FFMpeg can do the conversion to a mp4 format for you on the fly, and Wowza or Red5 can handle the cross streaming to multiple devices.

Wowza and Red5 have lots of documentations and examples for simple flash streaming setups.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜