
兼容各个浏览器的 H.264 播放:
H.264+HTML5+FLOWPLAYER+WOWZA+RMTP
一、方案确定
计划做视频播放,要求能够播放 H264 编码的 mp4 文件,各个浏览器,各种终端都能播放。
首先查找可行性方案,
http://www.cnblogs.com/sink_cup/archive/2011/04/21/
html5_video_ipad_firefox_chrome_ie9876_flash.html,这个方案将视频播放分为两部分,一
是 html5 播放,二是 flash 播放。如果浏览器支持用 html5 的 video 标签播放 h264 的 mp4 文
件,如 ie9,chrome,safari 采用 html5 播放,如果不支持,降级采用 flowplayerp(以下简称
fp)播放 mp4 文件。
不足是 firefox,opera 目前不支持 h264 编码,无论是 html5 还是 fp 在这两种浏览器上无法
播放(经过后来实验,ff 下是只有音频没有视频)。
还有一个方案是 http://hi.baidu.com/alimyself/item/7f5c003f3397968bb611db07 使用非常简单,
只要链接一个 js 文件就可以了。所以,只要您的页面上(头部或底部)有这么段代码:
<scriptsrc="http://html5media.googlecode.com/svn/trunk/src/html5media.min.js"></script>
就可以了。
这个封装太严密,无法灵活控制状态条和播放器属性。
http://www.zhangxinxu.com/study/201003/html5-video-mp4.html
决定采用此方案。
首先使用方案中的代码搭建整体框架。在使用该方案过程中,有一些改动,后附代码。
其他的一些降级方案:
可行的跨浏览器 HTML5 音频和视频:
http://msdn.microsoft.com/zh-cn/magazine/hh781023.aspx
优雅降级:http://www.iefans.net/html5-qianru-shipin/
没怎么看明白的一篇文章,貌似也是引用外部的一个 js 即可:
http://camendesign.com/code/video_for_everybody
Flowplayer 提供的降级方案:http://flowplayer.blacktrash.org/graceful.html
二、业务说明
基本框架加入后,就需要加入实际业务逻辑。
逻辑是所有人可以观看视频播放。
角色 A 满足某条件时,观看视频时不能控制播放进度,不能快进和后退,并且需要记录本
次有效观看时间。播放开始时,需要从上次观看结束的时间点自动开始播放。
三、html5 播放
首先是 html5 部分,在用 video 标签实现了基本播放后,需要控制角色 A 的播放控制条,禁
用进度条。
- 1
- 2
- 3
- 4
- 5
- 6
前往页