m3u8简介

简介:https://www.jianshu.com/p/426425cad08a

RFC:https://tools.ietf.org/html/rfc8216

原理:将视频或音频流分片,并建立m3u8格式的索引,m3u8可以嵌套(最多支持一层嵌套)。可用于直播或者点播。

格式:m3u8是由独立行组成的文本文件,行分成三类:

  • 以#EXT开头的表示是tag
  • 仅有#表示是注释
  • uri行表示嵌套的m3u8文件,或者真正的分片流。

m3u8参数

一级索引和二级索引中,给出的地址可能是相对地址/绝对地址。相对地址根据一级索引的地址更改。
通常一级索引会给出不同带宽的下载链接,可以根据网速适配不同的下载链接,从而避免卡顿。
流格式可能是.ts .aac或者RFC支持的其他格式。

m3u8参数

  • EXTINF:播放时间长度,单位s
  • BANDWIDTH:带宽
  • EXT-X-ENDLIST:有这个参数,说明是点播,是完整的一段音频或者视频;没有这个参数,说明是直播,需要不断从二级索引中去获取下一片段的链接
  • EXT-X-MEDIA-SEQUENCE(可选): 播放列表的第一个音频的序号,如64.m3u8中,有3个音频,序号分别是12591742,12591743,12591744。如果不设置,默认为第一个音频链接序号为0。可以没有这个参数
  • EXT-X-KEY:可能是加密的,具体见RFC
  • EXT-X-TARGETDURATION:每片最大时长,单位s, #EXTINF应该小于这个值
  • 更多参数参考中文链接:http://www.dnsdizhi.com/m/?post=242

例子

一级索引 (可以这一层索引,直接是下面的二级索引)
http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8
二级索引(在一级索引中根据当前网速找合适的带宽的链接下载)
http://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8
可以直接播放的文件,mpeg2格式
http://devimages.apple.com/iphone/samples/bipbop/gear1/fileSequence0.ts

bipbopall.m3u8

#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=200000
gear1/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=311111
gear2/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=484444
gear3/prog_index.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=737777
gear4/prog_index.m3u8

prog_index.m3u8

#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10, no desc
fileSequence0.ts
#EXTINF:10, no desc
fileSequence1.ts
#EXTINF:10, no desc
...
...
...
fileSequence178.ts
#EXTINF:10, no desc
fileSequence179.ts
#EXTINF:1, no desc
fileSequence180.ts
#EXT-X-ENDLIST

转载于:https://www.cnblogs.com/pukaifei/p/8312936.html

[多媒体] m3u8简介相关推荐

  1. [Qt教程] 第49篇 进阶(九) 多媒体应用简介

    [Qt教程] 第49篇 进阶(九) 多媒体应用简介 楼主  发表于 2013-10-7 09:50:36 | 查看: 267| 回复: 2 多媒体应用简介 版权声明 该文章原创于作者yafeilinu ...

  2. HLS科普1 HLS和M3U8简介

    HLS(HTTP Live Streaming)是苹果公司针对iPhone.iPod.iTouch和iPad等移动设备而开发的基于HTTP协议的流媒体解决方案.在 HLS 技术中 Web 服务器向客户 ...

  3. M3U8多线程下载器

    一.M3U8简介 M3U8是一种用于指示多媒体播放列表的格式.这种格式通常用于流媒体播放,尤其是在直播和点播领域. M3U8文件是一个文本文件,其中包含一个或多个URL,这些URL指向实际的媒体文件或 ...

  4. 使用python下载加密的流媒体m3u8视频文件,获取电影资源

    使用python下载加密的流媒体m3u8视频文件,获取电影资源 m3u8简介 代码示例 获取文件名与m3u8地址 媒体序列解密 视频序列片段下载 完整代码 后记 m3u8简介 M3U8是Unicode ...

  5. m3u8直播流视频实时下载小记-HLS(Http Live Streaming)录屏

    最近由于发现自己想回看的直播会被剪镜头,所以下定决心以后要学会录屏.但一般的录屏软件满足不了我的需要,主要是: 会录出鼠标操作.网络卡顿.水印等影响观感的画面 由于显示器和录屏软件的和原视频帧数可能不 ...

  6. java 微信多媒体文件_java微信接口之三—上传多媒体文件

    一.微信上传多媒体接口简介 1.请求:该请求是使用post提交from来实现的,我们可以在网页上进行表单提交来实现.地址为: http://file.api.weixin.qq.com/cgi-bin ...

  7. 纽芬兰纪念大学计算机系怎么样,纽芬兰纪念大学计算机

    原标题:纽芬兰纪念大学计算机 计算机科学是研究计算机系统及软件的设计,以及相关理论和应用领域的学科.为了给申请计算机科学专业的学生带来帮助,下面立思辰留学小编为大家带来纽芬兰纪念大学计算机科学本科专业 ...

  8. 语音识别双十一优惠活动

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 产品体验 客户端 接入实时语音识别技术指引上线 了解更多 功能发布语音识别产品已开 ...

  9. 计算机科学家 本科专业,纽芬兰纪念大学计算机科学本科专业介绍及课程设置...

    计算机科学是研究计算机系统及软件的设计,以及相关理论和应用领域的学科.为了给申请计算机科学专业的学生带来帮助,下面出国留学网小编为大家带来纽芬兰纪念大学计算机科学本科专业介绍及课程设置. 纽芬兰纪念大 ...

  10. 中文实时语音识别引擎

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 接口是 http restful 形式,在使用该接口前,需要在语音识别控制台开通服 ...

最新文章

  1. ksql 数量大于2_别人1加1大于2大于3,雍禾植发1加1小于2……
  2. 网管的一天——按小时记录生活
  3. SQL 2005 收缩事务日志文件
  4. 剑指offer(05)用两个栈实现队列
  5. ElasticSearch教程——自定义分词器(转学习使用)
  6. 串口MSComm控件五种不同校验方式对数据收发的影响
  7. 程序员怎样上元宇宙的车?
  8. SIP(Session Initiation Protocol,会话初始协议)
  9. Python制作代码雨
  10. 60套模板免费送,一秒搞定甘特图
  11. 【并联机构工作空间分析系列1】 多个圆/圆环求交 得到重叠部分边界 Matlab程序
  12. html5页面的dtd定义是,DTD的作用
  13. 2.2磁盘IO网络IO工作机制
  14. Django+itchat+apscheduler实现向指定微信群和微信好友定时发送信息和文件
  15. 机器人系统的基本概念及外部模型参数详解
  16. 2022最新电脑CPU性能天梯图
  17. Winsock协议目录
  18. Gattaca-千钧一发
  19. 推荐一个单干网赚好站!BUXJOB - 健康程序员,至尚生活!
  20. 2021 电子科技大学 组合数学试卷 (卢光辉、戴波 )

热门文章

  1. Node.js CVE-2017-14849复现(详细步骤)
  2. 亚马逊云平台采集转单机采集实现
  3. jQuery 插件使用记录
  4. AVG开发过程记录(3) —— 半透明的实现
  5. JHipster中文官网
  6. 2019 The Preliminary Contest for ICPC China Nanchang National Invitational
  7. 3.JAVA内存溢出
  8. Java——面向对象三大特性学习笔记
  9. android:模拟水波效果的自己定义View
  10. 搭建本地LNMP开发环境(6)-配置nginx和PHP