HLS 流媒体技术 笔记
来源:互联网 发布:淘宝服饰店铺简介 编辑:程序博客网 时间:2024/05/21 22:29
HTTP Live Streaming(HLS)是苹果公司实现的基于HTTP的流媒体传输协议,可实现流媒体的直播和点播。原理上是将视频流分片成一系列HTTP下载文件。所以,HLS比RTMP有较高的延迟。
可使用m3u8downloader下载一个HLS源,或者使用node-m3u生成m3u8索引和MPEG-TS切片,下面是我们准备切片:
https://github.com/miniflycn/HLS-demo/tree/master/m3u8
注意看切片索引文件:
#EXTM3U#EXT-X-TARGETDURATION:11#EXT-X-VERSION:3#EXT-X-MEDIA-SEQUENCE:0#EXT-X-PLAYLIST-TYPE:VOD#EXTINF:10.133333,fileSequence0.ts#EXTINF:10.000666,fileSequence1.ts#EXTINF:10.667334,fileSequence2.ts#EXTINF:9.686001,fileSequence3.ts#EXTINF:9.768665,fileSequence4.ts#EXTINF:10.000000,fileSequence5.ts#EXT-X-ENDLIST
其中#EXT-X-ENDLIST
为切片终止标记,如果没有该标记,浏览器会在文件读取完后再请求索引文件,如果有更新则继续下载新文件,以此达到直播效果。
前端代码
<!DOCTYPE html><html><head><title>player</title><link rel="stylesheet" href="./player/mediaelementplayer.css" /><style>/** 隐藏控制条 **/.mejs-controls { display: none !important;}</style></head><body><video width="640" height="360" id="player1"> <source type="application/x-mpegURL" src="/m3u8/index.m3u8"></video><script src="http://7.url.cn/edu/jslib/jquery/1.9.1/jquery.min.js"></script> <script src="./player/mediaelement-and-player.js"></script><script>var player = new MediaElementPlayer('#player1', { // 禁止点击暂停 clickToPlayPause: false, success: function (media, ele, player) { // 初始化后立刻播放 player.play(); }});</script></body></html>
0 0
- HLS 流媒体技术 笔记
- 【流媒体】【学习笔记】HTTP Live Streaming (HLS) 视频直播技术
- 【笔记】HLS技术架构
- 归纳笔记023:流媒体的理论与HLS框架
- 苹果流媒体HLS
- HLS流媒体点播系统
- 安装hls流媒体服务器
- 流媒体开发 HLS草案
- 流媒体协议—HLS
- HLS流媒体协议介绍
- 流媒体技术笔记(协议相关)
- hls流媒体、传统流媒体、http流媒体、adobe流媒体
- Nginx搭建hls流媒体服务器
- 流媒体之HLS, RTSP, RTMP
- 基于HLS的流媒体方案
- Nginx搭建HLS流媒体服务器
- HLS流媒体直播搭建测试
- 流媒体协议——HLS
- hypervisor中又安装vmware workstation
- C#调C++动态库Dll C++回调C#函数
- 为什么全局描述符表GDT的第0项总是一个空描述符,而局部描述符表却不是这样?
- 优秀程序员的18大法则-兄弟连IT教育
- Error —— 打出log:finished with non-zero exit value 2
- HLS 流媒体技术 笔记
- js 关键字 in 的使用方法
- listview缓慢滚动到顶部的问题
- Java并发之ThreadPoolExecutor和FutureTask
- iOS --一个倒计时类
- 正则表达式,匹配文件名类型
- 连续数打乱,判断出少了哪些数字
- NSThread简介
- iOS开发UI篇—CALayer简介