将视频转换为 HLS(HTTP Live Streaming) 协议格式文件
就是将视频文件转码(H264+ACC)、分片(n个.ts文件)、生成列表(.m3u8)
方便网站提供视频播放服务,提升加载速度,节省流量。
1、准备好源视频文件。
2、下载 ffmpeg(http://ffmpeg.org/download.html),软件为绿色版,解压即可使用,找到其中的 ffmpeg.exe 程序。
3、为了方便使用,可以将 ffmpeg.exe 所在目录加入环境变量,或者随时拿着走也行…
4、在 命令行提示符 或 PowerShell 中,使用 ffmpeg 的参数对视频进行处理。
以 PowerShell 为例:
ffmpeg -i '.\要转换的视频文件.mp4' -c:v h264 -flags +cgop -g 30 -hls_time 20 -hls_list_size 0 '.\输出文件名.m3u8'
-hls_list_size 为 m3u8 列表存储片段数量,0为全部,因为是点播,所以存储全部
-hls_time 为每个片段的时间长度,以秒为单位
5、更多转换参数,可参考:http://ffmpeg.org/ffmpeg-formats.html#hls-2
6、等待转换完成后,即可直接使用。
参考来源:http://blog.csdn.net/jookers/article/details/21694957
附:
浏览器视频播放插件 videojs :https://github.com/videojs/video.js
videojs 的 hls 支持插件:https://github.com/videojs/videojs-contrib-hls
浏览器视频播放插件 sewise-player(已很久不更新,但其flash对旧浏览器兼容性较好):https://github.com/jackzhang1204/sewise-player
将视频转换为 HLS(HTTP Live Streaming) 协议格式文件的更多相关文章
- 【视频开发】opencv不能读取MP4格式文件
用OpenCV对视频进行处理时,不能打开.mp4格式的文件.后来解决办法是用ffmpeg.exe将mp4文件转码为avi文件,然后再进行处理.但是转码过程比较慢.后来查看opencv源代码,发现它也是 ...
- 基于HLS(HTTP Live Streaming)的视频直播分析与实现
转自:http://www.cnblogs.com/haibindev/archive/2013/01/30/2880764.html HLS(HTTP Live Streaming)的分析: HTT ...
- 视频推流模式HLS,HTTP,RTSP,RTMP协议的区别
HTTP: 先通过服务器将FLV下载到本地缓存,然后再通过NetConnection的本地连接来播放这个FLV,这种方法是播放本地的视频,并不是播放服务器的视频.因此在本地缓存里可以找到这个FLV.其 ...
- java-cef系列视频第四集:自定义协议
上一集我们介绍了如何为java-cef添加flashplayer支持. 本视频介绍java-cef中的自定义协议 本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 中国大陆许可协议进行许可.
- 【转】如何将qlv格式的腾讯视频转换为mp4格式
一般来说,每个视频网站都会有自己的视频播放格式,如优酷的KUX.爱奇艺的QSV和腾讯的QLV等.但是大家知道,优酷是有转码功能的,而就目前来说腾讯视频还没有转码功能,这就给大家造成了一定的困扰.这里呢 ...
- 如何将qlv格式的腾讯视频转换为mp4格式
一般来说,每个视频网站都会有自己的视频播放格式,如优酷的KUX.爱奇艺的QSV和腾讯的QLV等. 但是大家知道,优酷是有转码功能的,而就目前来说腾讯视频还没有转码功能,下面是将qlv格式的腾讯视频转换 ...
- OpenCV视频读取播放,视频转换为图片
转载请注明出处!!! http://blog.csdn.net/zhonghuan1992 OpenCV视频读取播放,视频转换为图片 介绍几个有关视频读取的函数: VideoCapture::Vide ...
- HLS(HTTP Live Streaming)学习和探讨
Introduction HTTP Live Streaming lets you send audio and video over HTTP from an ordinary web server ...
- Python小工具:利用ffmpy3库3秒钟将视频转换为音频
作者 | pk 哥 来源公众号 | Python知识圈(ID:PythonCircle) 最近,有读者微信上私聊我,想让我写一篇视频批量转换成音频的文章,我答应了,周末宅家里把这个小工具做出来了. 这 ...
随机推荐
- flow 静态类型检查 js
1.flow介绍 https://ustbhuangyi.github.io/vue-analysis/prepare/flow.html#为什么用-flow 2.使用 (1)安装flow (2)项目 ...
- linux下切换python2和python3(转)
0x00 为什么需要有两个版本的Python Python2和Python3不兼容是每个接触过Python的开发者都知道的事,虽说Python3是未来,但是仍然有很多项目采用Python2开发.Lin ...
- Yii2框架bootstrap样式理解
Yii2框架默认採用了bootstrap作为CSS风格,各种视图类组件都如此.之前一直採用默认风格,并在必要的时候加入或者改动一下class来达到目的.但在改版Yii1.1的orange项目时.发现之 ...
- java new关键字
//new关键字://1.表示创建一个对象//2.表示实例化对象//3.表示申请内存空间 在python中其实就是一个实例化的过程
- 如何使用 MSBuild.exe 生成解决方案中的特定目标
以前都是直接使用VS或者msbuild生成整个解决方案,或者只构建单个工程. 这回使用msbuild构建单个工程的时候出现了问题,因为工程中使用了SolutionDir这个宏来定位第三方库路径. 对于 ...
- Android实现中文汉字笔划(笔画)、中文拼音排序、英文排序
发布时间:2018-11-16 技术:Android 概述 最近要做一个类似微信的,在登录界面选择国家地区的功能,微信有中文汉字笔画排序以及中文拼音排序等几种方式,如下所示: 简体中文 拼音排 ...
- JavaScript 字符串(String)对象
String 对象 String 对象用于处理文本(字符串). 创建 String 对象的语法: new String(s); String(s); 参数 参数 s 是要存储在 String 对象中或 ...
- 怎样看待IT界业务,技术,管理的各自比重
怎样看待IT界业务,技术,管理的各自比重 技术是根本,业务是个人能力的体现,管理一般随意,追求简单,眼光向IBM等有优秀管理经验的大公司看齐 重点从个人的喜好.性格方面来考虑分配比重,可以加上 ...
- 微信多客服插件获取openid
<!doctype html> <html> <head> <meta http-equiv="Content-Type" content ...
- mysql insert if not exists防止插入重复记录的方法(转)
MySQL 当记录不存在时插入(insert if not exists) 在 MySQL 中,插入(insert)一条记录很简单,但是一些特殊应用,在插入记录前,需要检查这条记录是否已经存在,只有当 ...