首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏RTSP/RTMP直播相关

    Android平台毫秒级低延迟HTTP-FLV直播播放器技术探究与实现

    本文将深入探讨如何基于FLV相关规范,在Android平台上实现一个HTTP-FLV播放器,从理论基础到实践代码,全方位剖析实现过程中的关键要点与技术细节。 四、Android端实现HTTP-FLV播放器1. ,可以看到,真的不输我们做的RTMP、RTSP直播播放器延迟! 六、总结通过深入理解FLV格式规范和HTTP-FLV传输原理,在Android平台上实现一个HTTP-FLV播放器涉及网络请求、数据解析、音视频解码渲染以及播放控制等多个方面的技术细节。 尽管随着技术的发展,FLV格式的应用场景有所局限,但在特定的业务需求下,掌握HTTP-FLV播放器的实现原理和方法,对于Android开发者来说,依然具有重要的实践价值和意义。

    1.3K10编辑于 2025-03-24
  • 来自专栏smy

    HTTP-FLV直播初探

    html5解封包播放(hls.js) 如果dash文件列表是mp4webm文件,可直接播放 RTMP(Real Time Messaging Protocol)是基于TCP的,由Adobe公司为Flash播放器和服务器之间音频 margin-bottom: 10px; } .logcatBox { border-color: #CCCCCC; font-size: 11px

    8.6K80发布于 2018-04-03
  • 来自专栏Gnep's_Technology_Blog

    HTTP-FLV详解及分析

    而当播放器拿到这些数据包解包的时候能够根据时间戳信息把这些音视频数据和之前到达的音视频数据连续起来播放。 调度:RTMP 也有个 302,可惜是播放器 as 中支持的,HTTP FLV 流就支持 302 方便 CDN 纠正 DNS 的错误。 M3U8 文件可以通过 HTTP 服务器提供给客户端,并使用流媒体播放器(如VLC、HLS播放器等)进行解析和播放。 注意这个大小关系:PreviosTagSize = TagDataSize + 11; 2、FLV 格式解析 先来一张图,这是上面我们播放的视频文转换为 FLV 文件 使用 Notepad++ AVCDecoderConfigurationRecord 长度为 sizeof(UI8) * (11 + sps_size + pps_size)。

    3.3K41编辑于 2023-11-12
  • 来自专栏Linux驱动

    11.QT-ffmpeg+QAudioOutput实现音频播放器

    所以接下来,我们使用ffmpeg+QAudioOutput来实现一个简单的音频播放器. 2.界面展示 因为业余爱好,只是简单实现了大部分功能,支持播放、暂停、恢复、换歌、播放进度调节,如下图所示: ?

    3.2K20发布于 2020-09-14
  • 来自专栏ghostsf

    没有Flash如何做直播?

    ”,“用什么播放器HTTP-FLV”。 其实很多播放器底层都是用的MSE,比如flv.js播放HTTP-FLV或者WebSocket-FLV,比如hls.js播放HLS,比如dash.js播放DASH切片。 用HTTP-FLV还是HLS? 答案是: 看你的业务的延迟要求,2-5秒用HTTP-FLV,5-10秒用HLS。 所谓延迟,就是推流和播放器的延迟,可以用OBS抓一个网页的秒表,然后播放器上观看,对比这两个时钟的差异,就是延迟了。 HLS是否就不能做3秒延迟呢? 移动端Native,用RTMP或HTTP-FLV。 用什么播放器? 这个问题就比较简单了,根据协议可以选择播放器HTTP-FLV,PC上用flv.js,移动端用Fijkplayer。

    2.1K20编辑于 2022-09-09
  • 来自专栏SRS开源服务器

    没有Flash如何做直播?

    还是WebRTC”,“用什么播放器HTTP-FLV”。 其实很多播放器底层都是用的MSE,比如flv.js播放HTTP-FLV或者WebSocket-FLV,比如hls.js播放HLS,比如dash.js播放DASH切片。 用HTTP-FLV还是HLS? 答案是: 看你的业务的延迟要求,2-5秒用HTTP-FLV,5-10秒用HLS。如果是替代RTMP,一般来说要用HTTP-FLV,因为RTMP延迟也是3秒左右。 所谓延迟,就是推流和播放器的延迟,可以用OBS抓一个网页的秒表,然后播放器上观看,对比这两个时钟的差异,就是延迟了。 HLS是否就不能做3秒延迟呢? 用什么播放器? 这个问题就比较简单了,根据协议可以选择播放器HTTP-FLV,PC上用flv.js,移动端用Fijkplayer。

    1.8K50编辑于 2022-03-18
  • 来自专栏腾讯IMWeb前端团队

    理论 | 使用flv.js做直播

    常见直播协议延迟与性能数据以下数据只做对比参考 传输协议 播放器 延迟 内存 CPU RTMP Flash 1s 430M 11% HTTP-FLV Video 1s 310M 4.4% HLS Video 同时支持录播和直播 去掉对Flash的依赖 flv.js 限制 FLV里所包含的视频编码必须是H.264,音频编码必须是AAC或MP3, IE11和Edge浏览器不支持MP3音频编码,所以FLV里采用的编码最好是 其中HTTP FLV需通过流式IO去拉取数据,支持流式IO的有fetch或者stream flv.min.js 文件大小 164Kb,gzip后 35.5Kb,flash播放器gzip后差不多也是这么大 兼容方案如下: PC端 优先使用 HTTP-FLV,因为它延迟小,性能也不差1080P都很流畅。 不支持 flv.js 就使用 Flash播放器播 RTMP 流。 不想用Flash兼容也可以用HLS,但是PC端只有Safari支持HLS 移动端 优先使用 HTTP-FLV,因为它延迟小,支持HTTP-FLV的设备性能运行 flv.js 足够了。

    4.4K10编辑于 2022-06-29
  • 来自专栏IMWeb前端团队

    使用flv.js做直播

    常见直播协议延迟与性能数据以下数据只做对比参考 传输协议 播放器 延迟 内存 CPU RTMP Flash 1s 430M 11% HTTP-FLV Video 1s 310M 4.4% HLS Video 同时支持录播和直播 去掉对Flash的依赖 flv.js 限制 FLV里所包含的视频编码必须是H.264,音频编码必须是AAC或MP3, IE11和Edge浏览器不支持MP3音频编码,所以FLV里采用的编码最好是 其中HTTP FLV需通过流式IO去拉取数据,支持流式IO的有fetch或者stream flv.min.js 文件大小 164Kb,gzip后 35.5Kb,flash播放器gzip后差不多也是这么大 兼容方案如下: PC端 优先使用 HTTP-FLV,因为它延迟小,性能也不差1080P都很流畅。 不支持 flv.js 就使用 Flash播放器播 RTMP 流。 不想用Flash兼容也可以用HLS,但是PC端只有Safari支持HLS移动端 优先使用 HTTP-FLV,因为它延迟小,支持HTTP-FLV的设备性能运行 flv.js 足够了。

    14.3K105发布于 2017-12-29
  • 来自专栏codeniu

    vue+flvjs实现自定义控制条的流媒体播放器

    vue+flvjs实现自定义控制条的流媒体播放器 flvjs与FLV有什么区别和联系? + AAC 编解码器播放功能 多部分分段视频播放 HTTP FLV 低延迟实时流播放 FLV 通过 WebSocket 实时流播放 兼容 Chrome, FireFox, Safari 10, IE11 rtmp和http-flv的视频格式都是flv格式的,只是传输协议而不同。rtmp是tcp的传输协议,而http-flv是http长链接的传输协议。 总结 flvjs是一个H5播放器。 协议 http-flv rtmp hls 传输方式 http流 tcp流 http流 视频封装格式 flv flv Ts文件 延迟 低 低 高 数据分段 连续流 连续流 切片文件 h5播放 flv.js 5.传入src,一个简单的播放器就完成了。也可以在video标签中加入controls属性以利用H5播放器自带的控制条。 自定义控制条。 效果图,画面是ffmpeg推的一个mp4的流。

    5.7K31编辑于 2022-02-25
  • 来自专栏四楼没电梯

    SRS(Simple Realtime Server) 开源直播/双录服务器

    核心特性: 支持主流直播协议:RTMP、HTTP-FLV、HLS、WebRTC、SRT、GB28181 ⚡ 支持亚秒级延迟:特别是 WebRTC 和 HTTP-FLV 模式下 跨平台编译:支持 Linux ,支持浏览器播放无需 Flash 视频监控转发 RTSP 拉流转 HTTP-FLV、WebRTC 支持拉流并转封装、输出为 HTTP-FLV / WebRTC 多端直播平台 RTMP 推流 + 多协议播放 | D[低延迟播放器] B -->|HLS| E[m3u8 播放器] B -->|SRT/RTMP Relay| F[边缘/转发服务] G[后端控制系统] -->|API调用| B ⚙️ 四 五、多协议推流与播放地址示例 协议 推流地址/播放地址 客户端支持 RTMP 推流 rtmp://<host>/live/stream OBS、FFmpeg RTMP 播放 同上 VLC、Flash 播放器 播放器 srs-player SRS 官方 WebRTC 播放测试工具 OBS Studio 主流开源推流软件,支持 RTMP ffmpeg 编解码、转码、多协议推流 ✅ 九、总结:SRS 是否适合你

    2K10编辑于 2025-07-11
  • 来自专栏嵌入式技术笔记

    推荐一个基于C++11的高性能运营级流媒体服务框架

    logo 一个基于C++11的高性能运营级流媒体服务框架 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qGMRzHOl-1588662590011)(https://travis-ci.org branch=master)] 项目特点 基于C++11开发,避免使用裸指针,代码稳定可靠;同时跨平台移植简单方便,代码清晰简洁。 RTMP 播放器,支持RTMP代理,支持生成静音音频 RTMP 推流客户端。 支持http-flv直播。 支持https-flv直播。 使用方法 作为服务器: 作为播放器: 作为代理服务器: 作为推流客户端器: QA 怎么测试服务器性能? IOS rtmp/rtsp播放器,视频推流器 支持linux、windows、mac的rtmp/rtsp播放器 上述工程可能在最新的代码的情况下编译不过,请手动修改 授权协议 本项目自有代码使用宽松的

    3.5K10发布于 2021-05-31
  • 来自专栏TSINGSEE青犀视频

    流媒体播放器EasyPlayer.js无法播放H.265的情况是什么原因?该如何解决?

    H5无插件流媒体播放器EasyPlayer属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,可支持H.264与H.265编码格式,性能稳定、播放流畅,能支持WebSocket-FLV 、HTTP-FLV,HLS(m3u8)、WebRTC等格式的视频流,并且已实现网页端实时录像、在iOS上实现低延时直播等功能。 有用户在集成TSINGSEE青犀easyplayer播放器时出现了不能播放H.265的情况,随后技术人员立即查看了用户的wasm文件放的位置,是正常在根目录下的;于是再进远程查看,发现webpck做了配置 目前我们TSINGSEE青犀视频所有的视频监控平台,集成的都是EasyPlayer.js版播放器,它属于一款高效、精炼、稳定且免费的流媒体播放器,可支持多种流媒体协议播放,包括WebSocket-FLV 、HTTP-FLV,HLS(m3u8)、WebRTC等,支持全平台、全终端播放,如Windows、Linux、Android、iOS,支持H.264与H.265编码,无须安装任何插件,起播快、延迟低、兼容性强

    1K30编辑于 2023-09-28
  • 来自专栏多媒体工具

    使用B站开源的flv.js:实现网页无插件在线播放RTMP/FLV(含低延迟优化指南)

    flv.js:通过将FLV格式的视频数据转换为HTML5支持的MediaSourceExtensions(MSE)格式,实现在不使用Flash的情况下播RTMP/HLS/HTTP-FLV对比特性RTMP CORS:HTTP-FLV流服务器必须配置Access-Control-Allow-Origin,否则JavaScript无法读取流数据。 多格式支持:自适应RTMP和HTTP-FLV,支持多种设备。流媒体状态展示:实时动态展示链接状态、码率、分辨率、HTTP-FLV延迟等信息。 测试RTMP源地址是否正常工作总结flv.js不仅仅是一个播放器,它是现阶段B端监控、低延迟直播场景下的最优平衡点。 参考flv.jsFLV/RTMP在线播放器

    2.1K20编辑于 2026-01-11
  • 来自专栏EasyNVR

    集RTMP, HLS, FLV, WebSocket 于一身的网页直播点播播放器EasyPlayer.js引用videojs无法自动播放问题解决

    EasyPlayer几乎涵盖了开发者所需的全部平台,尤其是在web端的EasyPlayer.js时遇到的播放器接入的问题,比如:不懂前端的js代码、没有公网服务器放置这些js脚本和网页、微信对接入IP播放地址有限制等 EasyPlayer.js,极大地方便了开发者在解决B/S型业务开发,集 rtmp,hls,flv,websocket 于一身的网页直播/点播播放器。 实际上,采用video.js播放或者采用ckplayer、cyberplayer等播放器,在安防、流媒体、音视频领域,总会有一些局限,举个简单的例子,我们为了产品全平台、全终端的兼容,需要H5播放能同时支持 RTMP、HTTP、HLS、HTTP-FLV、websocket等多种协议,同时,在安防等工业场景,重连还是必须的,例如RTMP重连、HTTP-FLV直播的重连、HLS(m3u8)直播的重连,这就不得不让我们基于

    7.5K10发布于 2020-04-23
  • 来自专栏即时通讯技术

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

    9、视频直播传输协议2:HTTP-FLV HTTP-FLV协议,从名字上就可以明显看出是通过HTTP协议来传输FLV封装格式的一种协议。 这个时候就会遇到一个移动端播放器的老大难问题——同层播放。 同层播放问题:是指在移动端H5页面中,一些浏览器内核为了提升用户体验,将video标签被劫持替换为native播放器,导致其他元素无法覆盖于播放器之上。 比如我们想要在直播间播放器上方增加聊天窗口,将聊天窗口通过绝对定位提升z-index置于播放器上方,在PC中测试完全正常。 ] 零基础入门:实时音视频技术基础知识全面盘点 [12] 实时音视频面视必备:快速掌握11个视频技术相关的基础概念 [13] 写给小白的实时音视频技术入门提纲

    6.4K43编辑于 2022-05-31
  • 来自专栏Qt项目实战

    Qt编写的项目作品11-带频谱的音乐播放器

    一、功能特点 可获取整个声音文件采样值数据 可实时获取当前播放位置的采样值数据 可设置采样的步长和数量 可开始播放/暂停播放/停止播放 多线程处理,超流畅 可设置当前播放位置 可设置和调节音量 支持任意Qt版本及mingw和msvc编译器,包括32位和64位 二、效果图 [2.png] 三、体验地址 体验地址:https://pan.baidu.com/s/1bbL2ZughZAgfIGrexyN-9g 提取码:zkeh 名称:bin_player_fmod.zip 国内站点:https://gitee.c

    1.6K20发布于 2020-03-20
  • 来自专栏流媒体音视频

    流媒体服务器(11)—— 云点播播放器方案调研实录

    最后说腾讯云,腾讯云的播放器 Player 支持 Web 端、iOS 端、Android 端、Flutter 端四大终端,还提供了超级播放器和超级播放器 Adapter 两种类型的播放器,这也是我们选择腾讯云最重要的原因之一 因为用户的技术人员对比播放器集成基本上没有任何概念,它们希望开箱即用,而腾讯云的超级播放器就非常适合。 #EXTM3U #EXT-X-VERSION:3 #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-TARGETDURATION:11 -- 注意事项: * 播放器容器必须为 video 标签 * player-container-id 为播放器容器的ID,可自行设置 * 播放器区域的尺寸请按需设置,建议通过 css 进行设置,通过css 超级播放器 Adapter 和 超级播放器对比 下面说一说云点播的 H5 超级播放器 Adapter,它比 H5 超级播放器具备更加灵活的 API 接口,下面是二者的对比表格: 播放器类别

    11.4K21发布于 2021-11-01
  • 来自专栏IT综合技术分享

    组件分享之后端组件——Nginx中流媒体服务器模块组件nginx-http-flv-module

    官方对比如下: 功能 nginx-http-flv-module nginx-rtmp-module 备注 HTTP-FLV (播放) √ x 支持 HTTPS-FLV 和 chunked 回复 GOP wait_video 或 wait_key 开启后无法工作 reuseport 支持 √ x 定时打印访问记录 √ x JSON 风格的 stat √ x stat 中包含录制详情 √ x 支持的播放器 VLC (RTMP & HTTP-FLV) / OBS (RTMP & HTTP-FLV) / JW Player (RTMP) / flv.js (HTTP-FLV).

    86030编辑于 2022-03-06
  • 来自专栏SRS开源服务器

    为什么说WebRTC做直播,不是潮流而是大坑?

    About play stream 如果是从播放器角度来说,对于直播场景,MSE是比WebRTC成熟得多的技术,几乎目前所有直播平台都是用MSE在播放。 而且MSE的Bug也不是HTTP-FLV协议封装的问题,同样用DASH或HLS也有。 如果需要支持iOS或Android,在直播领域FFmpeg同样是个更合适的选择,例如ijkplayer,可以播放RTMP或HTTP-FLV,是非常成熟的方案。 所以如何选择播放器,完全取决于你的客户端,如果只有PC H5,那么WebRTC或MSE都行,当然WebRTC的服务器更复杂。 最后,关于直播的延迟,HTTP-FLV一样延迟也很低,大约1~3秒。 Conclusion 其实,WebRTC就不是为直播设计的,最合适的场景就是H5推流,其他情况请考虑普通的直播技术,比如RTMP、HLS、HTTP-FLV或SRT。

    3.4K31编辑于 2022-04-15
  • 来自专栏全栈前端精选

    如何开发一款 H5 小程序直播?

    4.视频验证 上面我们已经说了server工具提供三种协议的视频流,分别是rtmp,http-flv以及hls。 可以使用VLC播放器验证rtmp协议的视频流。 ? video.js可以支持hls也是因为插件是基于hls.js flv.js是B站开源的flv格式的播放器,如果是http-flv协议的直播用它是非常合适的。 HTTP-FLV flv.js是B站开源的一款flv播放器,可以说是国人的骄傲,同样使用起来非常简单。也是引入flv.js。 ? <! HTTP-FLV和RTMP都是长连接,传输的格式也都是flv,不同点在于他们和CDN的链接还有播放器的链接上,RTMP是TCP而HTTP-FLV是HTTP。 也可以使用我们上面自己开发的播放器访问。 http://localhost:8080/hls/stream.m3u8 http-flv的编译比较复杂,我们这里就不过多介绍了。

    4.4K20发布于 2021-01-14
领券