首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏coding个人笔记

    rtmp、m3u8直播小记

    最近项目做跟视频有关的,一个是直播,一个是播放视频。使用video标签。视频直播有很多协议,rtmp、rtsp、hls等就自己去了解,业务有做到就会了解一些。 公司经过软硬件测试,发现目前公司使用rtmp流直播延迟是最小的,rtmp需要flash,chrom在今年年底要完全禁止flash,不像现在是默认禁止还能允许。 移动端使用的是m3u8直播,需要安装一个新的依赖:videojs-contrib-hls 测试了一下,必须要有 播放页使用: import videojs from 'video.js' import video-js.css' import 'videojs-contrib-hls' 原本老版本直接切换src就可以了,连videojs都没用,不知道为什么这个版本不行,于是跟PC方法一样,只是type对于m3u8 期间还有另外的一些问题,现在也重现不了,主要是有些问题也不知道为什么就解决了,m3u8和mp4还会出现跨域问题,我这边是nginx加允许头header。

    6.4K30发布于 2020-04-24
  • 来自专栏smy

    video.js支持m3u8格式直播

    PC端浏览器并不支持video直接播放m3u8格式的视频 2. DOCTYPE html> <html> <head> <title>videojs支持hls直播实例</title> <link href="./video.css? } },3000) } </script> </body> </html> 源码请移步github: videojs支持hls<em>直播</em>实例

    12.8K130发布于 2018-04-03
  • 来自专栏喵喵学前端

    如何手动停止 videojs 直播视频流 m3u8 请求?

    每当视频开始播放,视频流m3u8 会不断请求,即便是暂停了播放,这个请求也不会终止。大量的请求会导致页面卡顿,长此以往会带来性能问题,导致浏览器卡死甚至崩溃。 Videojs Removing Players 其实我个人觉得,这个方法的操作 2 的特性非常不好,这样导致关闭后组件直接被销毁,导致下次触发视频弹窗(业务需求是点击百度地图图例,出现弹窗播放视频直播流 参考 vue使用videojs控制后台m3u8数据请求 - bomdeyada - 博客园 我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

    1.8K22编辑于 2024-06-10
  • 来自专栏m3u8相关

    m3u8格式在直播场景中的应用

    以下是M3U8直播中的主要应用方式:实现实时流媒体分片在直播过程中,持续的视频流会被切割成一系列短暂的媒体分片(如TS文件)。M3U8文件则作为索引,动态更新并记录这些分片的播放顺序与网络地址。 播放器通过不断解析该文件,即可按序获取并播放分片,从而实现直播内容的无缝观看。支持自适应码率调整M3U8文件可以同时包含同一直播内容、但不同分辨率与比特率的多个分片序列。 从PC上的网页浏览器到智能手机、平板电脑乃至智能电视,几乎所有现代设备都能直接支持M3U8格式的直播流,极大地扩展了直播内容的覆盖范围。 提供灵活的延迟控制通过调整M3U8文件中媒体分片的长度、数量或播放器的缓冲策略,可以对直播流的端到端延迟进行有效控制。 这使得直播服务提供商能够在实时性和播放稳定性之间取得平衡,以满足不同场景下对延迟的特定需求。实现多码率直播传输利用M3U8文件,直播平台可以轻松地发布同一路直播信号的多个码率版本。

    78010编辑于 2025-10-12
  • 来自专栏PUSDN平行宇宙软件开发者网

    最新版videoJS使用播放M3U8格式直播 视频

    300" class="video-js vjs-default-skin vjs-big-play-centered" poster=""> <source src="<em>M3U8</em>

    2.1K20编辑于 2023-10-11
  • 来自专栏码上就说

    多媒体文件格式剖析:M3U8

    这是HLS应用在直播上的一大优势。 如果在直播中使用HLS技术,那么执行流程如下:图片来源于苹果官网; 我们播放一个HLS,首先要对HLS流对应的M3U8文件进行解析,解析M3U8文件,首先要搞清楚M3U8的封装格式。 M3U8格式解析 HLS流可以用于直播,也可以用于点播;这点很重要,开头的那张图千万别让你误会,M3U8是可以用作点播的。 :0 #EXT-X-TARGETDURATION 每个分片TS的最大的时长; #EXT-X-TARGETDURATION:10 每个分片的最大时长是 10s #EXT-X-ALLOW-CACHE r=52 ,请求回来存储在本地; 3.如何判断M3U8是否直播 1.判断是否存在 #EXT-X-ENDLIST 对于一个M3U8文件,如果结尾不存在 #EXT-X-ENDLIST,那么一定是 直播,不是点播

    8.5K31发布于 2020-12-11
  • 来自专栏直播那些事儿

    关于h5直播源码的技术扫盲

    尤其强化了web网页的表现性能,通过h5技术搭建的直播系统不仅能够在网页实现高清流畅播放,还能加入很多的交互功能。下面,我们就针对h5直播源码做一些技术扫盲。 这些预定的引擎配置为h5直播源码提供了强悍的技术基础。不过,WebRTC只是应用于视频录制,视频播放还得需要HLS的支持。 timg.jpg 二、什么是HLS协议?.m3u8是干啥用的? 每一个.m3u8文件,分别对应若干个ts文件,这些ts文件才是真正存放视频的数据,m3u8文件只是存放了一些ts文件的配置信息和相关路径,当视频播放时,.m3u8是动态改变的,video标签会解析这个文件 3、客户端解析.m3u8的播放列表,再按序请求每一段的url,从而获取ts数据流。 三、直播延迟往往不可避免 前面提到,HLS协议是将直播流分成一段一段的视频去下载播放的。 但如果这多就会造成请求次数增加,增大服务器压力,当网速慢时会造成更多的缓冲,所以一般推荐的ts时长为10s,这样大概有30s的延迟。 以上就是关于h5直播源码的一些技术扫盲点。

    2.3K20发布于 2020-03-11
  • 来自专栏海之滨云视频和流媒体技术

    HTTP Live Streaming直播(iOS直播)技术分析与实现

    相对于常见的流媒体直播协议,例如RTMP协议、RTSP协议、MMS协议等,HLS直播最大的不同在于,直播客户端获取到的,并不是一个完整的数据流。 ,就实现了直播。 HLS分段生成策略和m3u8    1. 分段策略 HLS的分段策略,基本上推荐是10秒一个分片,当然,具体时间还要根据分好后的分片的实际时长做标注 通常来说,为了缓存等方面的原因,在索引文件中会保留最新的三个分片地址,以类似“滑动窗口”的形式 2. m3u8文件简介   m3u8,是HTTP Live Streaming直播的索引文件。m3u8基本上可以认为就是.m3u格式文件,区别在于,m3u8文件使用UTF-8字符编码。

    3.8K90发布于 2018-05-11
  • 来自专栏ThoughtWorks

    10月在线直播一览

    10月在线直播一览 ●  10月12日 运用未来思维在不确定中创造可能性 分享一种不是从问题出发,关注解决方案可行性,而是面向未来,从愿景出发,创造可能性的思路。 ●   10月27日 如何用场景思维做体验重塑? 本次直播从场景的内容、用户、技术三个思维维度入手,解析场景思维在“体验重塑”中的应用。 此次直播,我们想建立在多个项目经验的基础上,跟大家分享一种新的设计思路。一种不是从问题出发,关注解决方案可行性,而是面向未来,从愿景出发,创造可能性的思路。 本次直播从场景的内容、用户、技术三个思维维度入手,解析场景思维在“体验重塑”中的应用。 如何了解当前场景下用户的真实需求和痛点? 怎么从用户场景中挖掘出更多有价值的机会点? 扫描下方二维码 查看所有直播及往期直播回放

    78920编辑于 2022-10-11
  • 来自专栏Kirin博客

    HTML5点播m3u8(hls)格式视频

    这两年来我们发现越来越多的视频应用使用了m3u8格式的视频,因为可以兼容PC、移动端。相比mp4等视频源,m3u8可以减轻服务器压力(按需加载)。 HLS是由苹果公司率先提出的一种协议标准,可用于直播。 不同于mp4大文件,m3u8是由一系列的ts文件组成,一般一个ts文件大概5-10秒,这些ts文件通过一个.m3u8文件做索引。 因此在播放m3u8的时候很少有卡顿的现象。 关于HLS直播的技术示例以及m3u8切片技术我们会在后面有文章介绍。本文只做HLS点播讲解,与直播不同,点播是指视频文件已经在编辑好,随时可播放。 由于HLS是由Apple公司提出的,所以在iOS电脑或手机上,你可以直接使用Safari浏览器的

    12.2K40发布于 2020-05-11
  • 来自专栏流媒体音视频

    FFmpeg输出hls时ts切片和m3u8索引动态更新解读

    示例如下:#EXTM3U#EXT-X-VERSION:3#EXT-X-TARGETDURATION:10#EXT-X-MEDIA-SEQUENCE:02、循环生成切片hls处理模块不断接收音频流和视频流的数据包 当输入流结束时添加 #EXT-X-ENDLIST 结束标记,但如果是直播流的话,不会加这个标识,只有点播 m3u8 文件才有。 比如 -hls_time 10 则表示 10 秒一个 ts 切片。2、hls_list_size控制播放列表的窗口大小,也就是 .m3u8 中有多少个 ts 切片。 6、#EXT-X-ENDLIST标识播放列表结束,不再更新,直播场景中没有,但是点播场景中必须有。四、主要方法对应上面的主要过程,我们来看一下底层的代码。 的关键步骤和主要方法,其逻辑清晰,涉及 init、header、packet、trailer、deinit 五个阶段,实现了高度可扩展的 hls 生成能力,既能处理点播文件转换,也能支持高并发场景下的直播

    1.2K10编辑于 2025-07-13
  • 来自专栏关键帧Keyframe

    M3U8 格式:为什么直播回放都用这个格式?丨音视频基础

    在实际应用场景中,由于 HLS/M3U8/TS 这套方案在控制直播延时上不太理想,所以一般实时直播场景不会选择使用 M3U8 媒体格式。 但是,对于直播回放这种场景,由于使用 M3U8/TS 这套方案能够在直播过程中就持续生成和存储切片,所以直播回放基本上都会选择 M3U8 媒体格式。 在点播时,客户端首先下载 M3U8 文件,然后按照 M3U8 列表下载各个资源切片依次播放即可。在直播时,客户端则需要定时重新请求 M3U8 文件,从而检查是否有新的媒体切片需要进行下载播放。 #EXTINF:10, fileSequence120.ts #EXTINF:10, fileSequence121.ts #EXT-X-ENDLIST EVENT 播放列表可以用在直播中,通常用于晚会和体育赛事场景 直播播放列表是一个会动态更新的 M3U8 文件,服务端会对直播流进行实时转码生成直播流切片,并定期更新 M3U8 文件。这个 M3U8 文件一般为会包括 3-5 个切片。

    6.3K31编辑于 2022-06-13
  • 来自专栏Gnep's_Technology_Blog

    HLS直播协议详解

    二、HLS 总体框架 先看下图: 服务器将媒体文件转换为 m3u8 及 ts 分片; 对于直播源,服务器需要实时动态更新。 客户端请求 m3u8 文件,根据索引获取 ts 分片;点播与直播服务器不同的地方是,直播m3u8 文件会不断更新, 而点播的 m3u8 文件是不会变的,只需要客户端在开始时请求一次即可。 :2019-03-28T04:33:40Z #EXTINF:10, 19674922.ts? #EXT-X-PROGRAM-DATE-TIME:2019-03-28T04:33:50Z #EXTINF:10, 19674923.ts? #EXT-X-PROGRAM-DATE-TIME:2019-03-28T04:34:00Z #EXTINF:10, 19674924.ts?

    3.2K10编辑于 2023-10-29
  • 来自专栏腾讯Bugly的专栏

    HTML 5 视频直播一站式扫盲

    视频直播这么火,再不学就 out 了。 为了紧跟潮流,本文将向大家介绍一下视频直播中的基本流程和主要的技术点,包括但不限于前端技术。 1. H5 到底能不能做视频直播? 简单讲就是把整个流分成一个个小的,基于 HTTP 的文件来下载,每次只下载一些,前面提到了用于 H5 播放直播视频时引入的一个 .m3u8 的文件,这个文件就是基于 HLS 协议,存放视频流元数据的文件 每一个 .m3u8 文件,分别对应若干个 ts 文件,这些 ts 文件才是真正存放视频的数据,m3u8 文件只是存放了一些 ts 文件的配置信息和相关路径,当视频播放时,.m3u8 是动态改变的,video 当然可以缩短列表的长度和单个 ts 文件的大小来降低延迟,极致来说可以缩减列表长度为1,并且 ts 的时长为1s,但是这样会造成请求次数增加,增大服务器压力,当网速慢时回造成更多的缓冲,所以苹果官方推荐的ts时长时10s 10. 在 html5 页面进行播放直播视频?

    5.4K81发布于 2018-03-23
  • 来自专栏EasyNVR

    安防互联网直播服务中为什么HTML5目前还没有实时的低延迟视频流协议?

    苹果公司开放了HLS协议,这种协议在h5中不需要插件即可进行播放,解决了在h5页面中直播的问题。 然而,对于直播来说,HLS协议还是存在很多问题: 1、播放时需要多次请求,对于网络质量的要求更高 2、延迟在10s左右 3、同时还存在延时累积,比如一分钟内的延迟有5s,看了10分钟后,延迟可能会达到50s 4、只能支持拉流,不支持推流 H5中播放直播的场景主要是,以ios、安卓为主要平台,分享到第三方应用中,通过hls协议拉流,来为app引流。 此外,要想做到HLS小于3秒的延时,理论上是可以的,这需要看你ts分片的大小,和一个m3u8存储多少个ts的分片的索引。 如果一个m3u8存储6个ts的分片索引,每个分片为5s,那么就起码有30s的延时。只要把分片的时长减少,比如减少到250ms每个分片,一个m3u8只存储一个ts分片,那么理论延时就只有250ms。

    1.1K10发布于 2020-04-22
  • 来自专栏多媒体工具

    M3U8失效检测、播放异常诊断与FFmpeg解决方案

    M3U8链接失效检测与调试指南一、M3U8链接失效的核心检测方法1.1HTTP状态码验证基础检测:通过HTTP请求验证M3U8文件可达性,返回状态码200OK表示链接基本有效关键状态码解析:404NotFound 专业检测工具推荐2.1命令行工具工具核心功能使用场景FFmpeg支持HLS协议解析、TS分片下载与合并开发环境集成、批量检测curl/wget快速验证HTTP状态码与响应头脚本自动化检测streamlink直播流抓取与稳定性测试实时流媒体检测示例命令 :https://www.example.com"-iinput.m3u8-ccopy-t10test.ts2.2专用检测工具IPTV-M3U8-Checker:Python开源工具,支持批量检测TS分片状态 ('.ts')]withThreadPoolExecutor(max_workers=5)asexecutor:results=list(executor.map(check_ts,ts_urls[:10 链接状态,建议建立定期检测机制,尤其对直播流服务应实现分钟级监控,确保服务可用性。

    73710编辑于 2026-01-25
  • 来自专栏即时通讯技术

    视频直播技术干货:一文读懂主流视频直播系统的推拉流架构、传输协议等

    在我们获取TS文件之前:协议首先要求请求一个M3U8格式的文件,M3U8是一个描述索引文件,它以一定的格式描述了TS地址的指向,我们根据M3U8文件中描述的内容,就可以获取每一段TS文件的CDN地址,通过加载 使用HLS协议播放视频时:首先会请求一个M3U8文件,如果是点播只需要在初始化时获取一次就可以拿到所有的TS切片指向,但如果是直播的话就需要不停地轮询M3U8文件,获取新的TS切片。 如果是直播,那么每次请求M3U8文件里面的TS列表都会随着最新的直播切片更新,从而达到直播流播放的效果。 比如我们一个M3U8有5个TS文件,每个TS文件播放时长是2秒,那么一个M3U8文件的播放时长就是10秒,也就是说这个M3U8播放的直播进度至少是10秒之前的,这对于直播场景来说是一个比较大的弊端。 10、视频直播传输协议3:RTMP RTMP协议实际可以与HTTP-FLV协议归做同一种类型。

    6.4K43编辑于 2022-05-31
  • 来自专栏视频加密

    M3u8或者ts协议的直播流视频如何通过加密防止盗链和盗播?

    其实除了这些还有就是对视频流加密,这种在视频点播中使用的比较多,但在直播中也可实现,即对版权方给的ts或者说m3u8格式的视频进行加密处理,对内容进行帧加密,加密后只能在允许的APP中播放,即使下载到其他 整个使用流程如下: 1、部署流媒体系统,在对版权方给的直播视频流进行中转的时候就直接开启加密功能,自动对视频流进行加密处理,加密后直接给出频道地址。

    2.7K20发布于 2021-02-25
  • 来自专栏音视频技术

    Apple 低延迟HLS分析

    为了将10-30的延迟降低到2秒以下,苹果提出了5点改进 减少片段发布延迟 优化片段发现机制 消除片段请求时间 m3u8采用增量升级机制 加速不同码率直播流切换速度 下面针对每个改进做一个介绍 减少片段发布延迟 _HLS_msn=1803 上述请求表示当直播流中出现1803的ts的时候,停止阻塞,返回m3u8内容。 _HLS_msn=1803&_HLS_part=0&_HLS_push=1 上述请求表示当直播流中出现1803的第一部分(_HLS_part=0)的时候就停止阻塞,返回m3u8内容。 这个功能在一些场合比较有用,有些直播流允许用户往前回看一段时间,所以它们的m3u8文件会很大,上百K都有可能。使用增量更新机制能极大减小传输量。 加速不同码率直播流切换速度 最后一个,加速不同码率直播流切换速度的实现方案是在m3u8的最后带上EXT-X-RENDITION-REPORT,告诉客户端其它码率直播流的当前进展(片段序号和part序号)

    5K63发布于 2019-07-01
  • 来自专栏geekfly

    如何下载企业微信上课直播回放

    一、标题官方渠道 直播时开启了直播回放,在15天到期的时候,直播发起人会收到消息提醒,在windows系统的企业微信客户端,可直接点击消息下载回放。 打开观看直播回放页面,点击检查元素 这一步也可以点击右上角,在浏览器中的打开,然后企业微信扫码即可。 浏览器需为Chrome等支持开发者工具的。 3. 找到m3u8地址 在元素标签下,搜索m3u8,找到形如http://1253731777.vod2.myqcloud.com/cd68bb45vodbj1253731777/af7d63c33701925925248622605 下载 使用m3u8下载器下载上述Url地址即可 这里有一个可以在线下载m3u8地址的网站: m3u8 downloader 输入地址后,点击“转码Mp4下载”即可,等所有片段都下载完,浏览器会自动弹出文件保存

    7.3K50编辑于 2022-04-24
领券