JWPlayer Flash播放器如何实现视频分段载入播放从而节省带宽?
近期由于一个项目的需要,对Flash版本的播放器JWPlayer做了一些改进以支持一些功能,这里把中间用到的一些思路和做法记录下。
首先一个功能是:客户的很多flv视频都是完整的一个大视频,希望JWPlayer可以对flv视频文件播放时不全部载入,而是先只载入前面5分钟,等播放到4分钟左右时再去载入后面的5分钟视频。这样的好处显而易见就是可以节省很多服务器流量,避免用户只看2-3分钟暂停在那,也把整个视频给分发下去。 其实该功能很多视频网站,比如优酷他们的做法是将视频真的切分为每7分钟一段,这样的缺点是:文件被切分成碎片在服务器存放,不利于视频文件的管理。
为了实现上述功能,在JWPlayer中进行如下改造:
1) 增加一个NetStream,用于载入下一段数据;
2)服务器需要支持可以通过start和end参数,来索取任意一段视频。比如http://www.a.com/1.flv?start=0&end=1024999这种,用于获取指定关键帧区间的视频(比如5分钟的)。
3)然后播放时,首先通过获取到的metadata,找出第一个5分钟的视频的结尾关键帧位置,然后构造一个NetStream去播放前面5分钟,由于服务器就只给5分钟数据,因此该stream不会不停缓冲服务器数据。
4)等播放到4:20秒左右时,启动一个新的NetStream载入下一段5分钟视频,但此时将video层放在正在播放的视频的下面(不可见)。
5)等第一段视频播放完成后,将第二段的NetStream接着播放,并切换两个video的位置,将第二段放到舞台的前面。
6)等第二段播放快完成时,用第一段的NetStream预载入下一段视频,不停重复上述逻辑直到视频结束。
经过上述处理后,可以非常可控的以分段的效果播放单段视频,既节省了服务器流量,又不需要对视频真正进行切分。
以上就是对JWPlayer Flash播放器如何实现视频分段载入播放从而节省带宽?这个问题的思路分享,希望对大家有帮助!
JWPlayer Flash播放器如何实现视频分段载入播放从而节省带宽?相关推荐
- Mac QuickTime Player X播放器打开电影视频后自动播放的方法
打开终端(方法一:Finder-应用程序-实用工具-终端:方法二:点击屏幕右上角放大镜图标,搜索"终端").在里面输入以下命 令 "defaults write com ...
- css3音乐播放器,CSS3-自定义视频与音乐播放器!
今天说一下自定义视频和音乐播放器!直接先看看完成后的效果图把! 视频: video.jpg 音乐: 音乐.jpg 哈哈,是不是觉得太难看了,根本没心情往下继续看了?那就对了.我也觉得难看,但是重点来了 ...
- vue西瓜播放器xgplayer-vue实现视频倍速播放,自定义进度条样式
介绍 npm网站:https://www.npmjs.com/package/xgplayer-vue 西瓜播放器官网:https://v2.h5player.bytedance.com/gettin ...
- 暴风影音能播放html视频吗,暴风影音播放器支持哪些视频格式
暴风影音播放器是一款非常给力的视频播放器.该软件能够支持主流的视频格式,当然一些特殊的格式也基本支持,下面就和小编一起来看看到底都支持哪些格式吧! 暴风影音播放器支持哪些视频格式: 1.常规视频.DV ...
- android m3u8离线播放器,android上实现离线缓存播放加密HLS视频和未加密的HLS视频...
1.首先什么是HLS格式的视频,大家去谷歌下就知道了. 2.我们知道HLS格式的视频,只有安卓4.0以上才支持,目前基本4.0一下的机子基本可以考虑,不兼容了,所以为了减少工作量,就没有打算使用三方的 ...
- 音视频从入门到精通——FFmpeg 播放器实现音视频同步的三种方式
老人们经常说,播放器对音频和视频的播放没有绝对的静态的同步,只有相对的动态的同步,实际上音视频同步就是一个"你追我赶"的过程. 音视频的同步方式有 3 种,即:音视频分别向系统时钟 ...
- 在抖音APP源码中如何实现播放器的音视频同步
在抖音APP源码中音频和视频的播放是在不同线程中进行的,而且音频和视频都有自己的时间戳,所以需要同步机制保障音画同步. 抖音APP源码有多种机制可以做到音视频同步:a. 音频同步于视频.b. 视频同步 ...
- linux 中文 音乐播放器,linux下的常见音乐播放器
xmms 老牌的音乐播放器,模仿Windows下*的播放器Winamp,其强大的功能不输于Winamp,具有极强的可扩展性,支持mp3.ogg.wav等格式播放,添加插件后还可以播放AAC.wma等格 ...
- 最强偏振3D播放器TriDef 3D安装+全格式播放配置
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 最强偏振 ...
最新文章
- javascript 通过键获取值
- CentOs登陆输入root作为用户名
- python selenium爬虫爬京东评论_Python 不用selenium 带你高效爬取京东商品评论
- netty 之 telnet HelloWorld 详解
- NLP-基础知识-005(专家系统)
- python一行行写文件_python一行行写文件-女性时尚流行美容健康娱乐mv-ida网
- 酷派手机android版本,系统版本迎来升级
- (49)FPGA面试技能提升篇(仿真加速平台Palladium、Zebu、Veloce)
- 程序员硬核测评:全方位测评 GaussDB(for Redis) 和开源 Redis
- es6 混合commjs_前端模块化——CommonJS、ES6规范
- 机器学习——神经网络(四):BP神经网络
- 【工作日报】2019年7月 前端开发工作日报汇总
- 【Win10】使用“Windows照片查看器”查看照片
- Windbg及Dump文件分析方法
- poi根据模板导出word
- NR Qos 映射DRB
- ​继使命召唤飞机表情雨后,如何在微信群聊天中自带表情雨特效,还有使命召唤红包封面...
- 小米手机miui版本号详细介绍
- Boost(一)——Boost简介
- 如何从ext3升级到ext4?
热门文章
- 如何删除word中表格后面的空白页
- android搜索app下载地址,如何找出APP的URL Scheme
- 来表达我说过如果有那么一天
- java图片合成视频_使用JAVACV把图片合成视频
- 基于花季A传媒ABP落地领域驱动设计-02.聚合和聚合根的最佳实践和原则
- 拼图游戏(8 puzzle)
- Android The destination folder does not exist or is not writeable
- C# Format详解
- pubg显示服务器安装失败,绝地求生全军出击怎么安装不了 安装失败解决办法
- 我手机上常用的app和常访问的网站