nginx+jwplayer配置flv/MP4点播系统, 视频拖动支持
一 配置nginx
1. 下载 nginx 最新版 http://nginx.org/
2. 安装依赖库, 以ubuntu为例
apt-get install libpcre3 libpcre3-dev libssl-dev openssl
3. 编译nginx, 增加flv和MP4的支持
/configure --with-http_flv_module --with-http_mp4_module --with-http_ssl_module --with-debug
编译时可以指定安装目录 --prefix=/path/to/install
然后make install
4. 测试是否支持seek(拖动, 快进)
1) flv需要metadata数据才可以seek. 可以通过ffmpeg来查看flv视频是否有metadata数据.
> ffmpeg -i test.flv Input #0, flv, from 'test.flv':
Metadata:
metadatacreator : Yet Another Metadata Injector for FLV - Version 1.9
hasKeyframes : true
hasVideo : true
hasAudio : true
hasMetadata : true
canSeekToEnd : false
datasize : 23736525
videosize : 21784752
audiosize : 1923169
lasttimestamp : 157
lastkeyframetimestamp: 153
lastkeyframelocation: 23532906
如果flv没有metadata数据. 可以通过yamdi来增加metadata数据, 这个工具windows和linux版本都有, 使用起来也很简单
yamdi -i sample.flv -o sample_with_metadata.flv
2) 把flv视频放在nginx 的html目录下. 然后通过curl或vlc测试拖动
先修改下nginx的配置nginx.conf, 增加如下内容
location ~ \.flv$ {
flv;
limit_rate 250k;
}
location ~ \.mp4$ {
mp4;
limit_rate 250k;
}
limit_rate是限速的意思, 因为是本地测试. 缓冲速度非常快. 如果不限速的话, 视频会立刻下载完成.
curl -I http://ip/test.flv
Content-Length: 23739622 curl -I http://ip/test.flv?start=2373
Content-Length: 23727290
两次的Content-Length不一样.
也可以通过vlc来播放http流. 都是界面点一点.
二 配置jwplayer
网上的jwplayer的配置基本上是过时的. 误导我半天
早期jwplayer里配置的streamer; type; provider; 这些参数在新版里已经没有, 或者不生效了.
jwplayer的support中关于seek的文章 http://support.jwplayer.com/customer/portal/articles/1430518-pseudo-streaming-in-flash 可能要翻墙才能看
<div id="myElement">Loading the player...</div> <script type="text/javascript">
jwplayer("myElement").setup({
file:"http://ip/test.flv",
image: "../image/webrtc.png",
startparam: "start"
});
</script>
关键是 startparam: "start". 没有这句的话. jwplayer是无法拖动视频的. MP4可以不需要这个startparam就可以拖动.

这个是jwplayer文档中关于startparam的参数说明.
nginx+jwplayer配置flv/MP4点播系统, 视频拖动支持的更多相关文章
- 收藏:视频网站(JavaEE+FFmpeg)/Nginx+ffmpeg实现流媒体直播点播系统
FFmpeg安装(windows环境)http://www.cnblogs.com/xiezhidong/p/6924775.html 最简单的视频网站(JavaEE+FFmpeg)http://bl ...
- centos 6.4 Apache 配置 flv mp4.h264 流媒体拖动
http://blog.csdn.net/xst686/article/details/9763995 加入流媒体扩展后要重启 httpd flv 流媒体 <textarea style=&qu ...
- 【原创+史上最全】Nginx+ffmpeg实现流媒体直播点播系统
#centos6.6安装搭建nginx+ffmpeg流媒体服务器 #此系统实现了视频文件的直播及缓存点播,并支持移动端播放(支持Apple和Android端) #系统需要自行安装,流媒体服务器配置完成 ...
- windows server,nginx安装,配置,运行nodeJS后端的web项目的实现,以及错误分析及解决方法
一.安装nginx 下载windows版nginx (http://nginx.org/download/nginx-1.12.2.zip),之后解压到需要放置的位置(C:\nginx) 二.将Ngi ...
- CentOS6下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具)
1.先添加几个RPM下载源 1.1)安装RPMforge的CentOS6源 [root@AY130611215205Z ~]# wget -c http://pkgs.repoforge.or ...
- Ubuntu 14.10下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具)
Ubuntu 14.10下基于Nginx搭建mp4/flv流媒体服务器(可随意拖动)并支持RTMP/HLS协议(含转码工具) 最近因为项目关系,收朋友之托,想制作秀场网站,但是因为之前一直没有涉及到这 ...
- HTTP方式播放FLV/mp4 :nginx+Yamdi/MP4BOX
[导语]chrome浏览器确实很强,直接支持MP4拖动播放,对于其他播放器,可以使用以下方法来支持拖动播放.拖动的关键在于生成关键帧等元数据信息,便于服务器和播放器支持拖动. 另外,nginx web ...
- 转:NGNIX模块开发——nginx的配置系统
From:http://tengine.taobao.org/book/chapter_02.html nginx的配置系统 nginx的配置系统由一个主配置文件和其他一些辅助的配置文件构成.这些配置 ...
- Nginx搭建flv mp4流媒体服务器[转]
Nginx搭建flv mp4流媒体服务器 作者:二蛋 时间:December 1, 2014 分类:Note 环境:Centos 6.4 32bit 一.安装依赖包 1.安装zlib wget htt ...
随机推荐
- 文件读取ndarry 等价于DataFrame的操作
LD=loadDatas() userMat=LD.makeRatingMatWithoutUserID() print(type(userMat)) userRatingMat=pd.DataFra ...
- struts2 action 中autowired 不能注入
一.pom.xml <dependency> <groupId>org.apache.struts</groupId> <artifactId>stru ...
- http://localhost:8080/hello?wsdl
<definitions xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-u ...
- mysql中要根据某个逗号分割的字符串关联查询另一张表的数据
首先观察下面的查询 select * from company where f_id in ('210','205','208') select * from company where f_id i ...
- HDU2976 Dropping tests 2017-05-11 18:10 39人阅读 评论(0) 收藏
Dropping tests Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12187 Accepted: 4257 D ...
- Codeforces758B Blown Garland 2017-01-20 10:19 87人阅读 评论(0) 收藏
B. Blown Garland time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- Linux应用程序中使用math库报undefined reference to `sin'等
出现该问题是因为在Linux中,sin,sqrt等函数是在libm.so库文件中,并非在math.h中. 解决办法:在Ubuntu的gcc编译环境下,直接使用lm参数即可,例如gcc -o Gen G ...
- hdu 1799 循环多少次?
题目 题意:给出n,m,其中m表示有几层循环,求循环的次数 ①如果代码中出现 for(i=1;i<=n;i++) OP ; 那么做了n次OP运算: ②如果代码中出现 fori=1;i<=n ...
- Latex中Matlab代码的环境
需要用到listings宏包 使用方法: 导言区\usepackage{listings}\lstset{language=Matlab} %代码语言使用的是matlab\lstset{br ...
- 一句话为当前窗口客户区捉图: GetFormImage 来自万一的博客
一句话为当前窗口客户区捉图: GetFormImage http://www.cnblogs.com/del/archive/2008/10/24/1318738.html unit Unit1; i ...