首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在浏览器端通过videojs contrib-hls向m3u8清单触发的请求添加参数

在浏览器端通过videojs contrib-hls向m3u8清单触发的请求添加参数,可以通过以下步骤实现:

  1. 首先,确保已经引入了video.js和videojs-contrib-hls插件。可以通过以下方式在HTML文件中引入:
代码语言:txt
复制
<link href="https://vjs.zencdn.net/7.15.0/video-js.css" rel="stylesheet">
<script src="https://vjs.zencdn.net/7.15.0/video.js"></script>
<script src="https://cdn.jsdelivr.net/npm/videojs-contrib-hls@7.1.0/dist/videojs-contrib-hls.min.js"></script>
  1. 创建一个video标签,并为其添加一个唯一的ID,以便在JavaScript中进行操作。例如:
代码语言:txt
复制
<video id="my-video" class="video-js" controls preload="auto" width="640" height="360">
  <source src="path/to/your/video.m3u8" type="application/x-mpegURL">
</video>
  1. 在JavaScript中,使用video.js初始化视频播放器,并为其添加contrib-hls插件。然后,通过videojs的hls.xhr.beforeRequest事件来修改请求URL,添加参数。例如:
代码语言:txt
复制
var player = videojs('my-video');
player.hls({
  withCredentials: true
});

player.ready(function() {
  player.on('hls.xhr.beforeRequest', function(options) {
    // 添加参数到请求URL中
    options.uri += '?your_parameter=your_value';
  });
});

在上述代码中,your_parameter是你要添加的参数名,your_value是对应的参数值。

  1. 最后,通过调用player.play()方法来开始播放视频。完整的示例代码如下:
代码语言:txt
复制
<!DOCTYPE html>
<html>
<head>
  <link href="https://vjs.zencdn.net/7.15.0/video-js.css" rel="stylesheet">
  <script src="https://vjs.zencdn.net/7.15.0/video.js"></script>
  <script src="https://cdn.jsdelivr.net/npm/videojs-contrib-hls@7.1.0/dist/videojs-contrib-hls.min.js"></script>
</head>
<body>
  <video id="my-video" class="video-js" controls preload="auto" width="640" height="360">
    <source src="path/to/your/video.m3u8" type="application/x-mpegURL">
  </video>

  <script>
    var player = videojs('my-video');
    player.hls({
      withCredentials: true
    });

    player.ready(function() {
      player.on('hls.xhr.beforeRequest', function(options) {
        // 添加参数到请求URL中
        options.uri += '?your_parameter=your_value';
      });
    });

    player.play();
  </script>
</body>
</html>

这样,当视频播放器加载m3u8清单时,会自动在请求URL中添加指定的参数。请注意,这只是一个示例,你可以根据实际需求修改参数名和值。

推荐的腾讯云相关产品:腾讯云点播(云点播是腾讯云提供的一站式音视频点播解决方案,支持存储、转码、加密、播放等功能,适用于各种场景的音视频应用。)。

腾讯云点播产品介绍链接地址:腾讯云点播

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

M3U8在线播放

大家好,又见面了,我是你们朋友全栈君。 M3U8在线播放 前言 一、思路 二、代码框架 1. 移动适配 2. 改变M3U8地址 3. 设置videojs参数 4....我今天要干的事情呢,就是解决当我们找到一个M3U8地址之后如何方便播放它~ 一、思路 想要播放M3U8方法有很多,比如浏览器插件 Native HLS PlayBack: 又比如现成软件...于是,还有一种更好方法:写一个M3U8在线播放网站。 直接上图(分别为PC和移动): 二、代码框架 利用js库videojs来对m3u8视频进行解析并播放。...改变M3U8地址 通过请求地址中加入一个play参数,“http://www.m3u8player.top/?play=xxxx.m3u8”来改变需要播放m3u8地址。...设置videojs参数 根据需要对videojs参数进行设置,进度条、poster等: var myVideo = videojs('myVideo',{ bigPlayButton

9.3K30

Nginx+FFmpeg打造自己视频直播服务

引言 现在很多项目都有视频实时播放功能需求,例如监控,直播等,原始摄像头采集视频流协议一般都是 rtsp 协议,在旧版浏览器中使用 FLASH 可以支撑其进行播放,但是现在各大主流浏览器都关闭了对...FLASH 支持,这就需要我们把 rtsp 转为浏览器支持 http ,业务体量很大公司一般会把这种事情委托给专业第三方公司去做,但很多公司在这方面没有那么大业务量,往往只是播放一下监控录像之类需求...,相信大家已经非常熟悉了,不多赘述,这里主要介绍一下如何在已安装nginx上添加nginx-rtmp- module模块,因为想要通过nginx转发视频流需要这一个组件,相关依赖包请看文末。...查看原有nginx配置参数并拷贝出来 (V大写),如下,configure arguments:后面就是我们所需要。...-- videojs-contrib-hls 用于在电脑播放 如果只需手机播放可以不引入 --> <script src="https://cdn.bootcdn.net/ajax/libs/

5.8K74

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

问题描述 在公司某个可视化大屏项目中,大屏页面会有多个 videojs 组件,每个组件都会对应一个视频流地址。每当视频开始播放,视频流m3u8 会不断请求,即便是暂停了播放,这个请求也不会终止。...大量请求会导致页面卡顿,长此以往会带来性能问题,导致浏览器卡死甚至崩溃。...,这是一个hls流 }, ], } // videojs第一个参数表示是,文档中videoid this.myVideo...Error:Invalid target for nutl#on;must be a DOM node or evented object 需要通过 appendChild,添加一个跟之前 videojs...参考 vue使用videojs控制后台m3u8数据请求 - bomdeyada - 博客园 我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

26521

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

HLS协议是最简单也是最常用,他是苹果推出一个直播协议,他工作原理比较简单,H5一般通过video标签,从客户获取一个M3U8索引文件,这个M3U8会直接放在videosrc路径中。...浏览器video标签在某个时间会再次请求m3u8,获取新直播流片段,这样就实现了直播实时播放,而发送这个m3u8请求浏览器自主行为。...这里决定了浏览器video更新m3u8文件时机。 静态列表和动态列表返回文件差不多,只是在第五行多添加了一个playlist-type值为event。其他就没什么区别了。 ?...浏览器像去解析一个视频,首先要知道视频帧和音频帧,在第一个ts文件中会告诉浏览器通过先找PAT, 再找PMT,再找TS文件,然后TS文件再按照视频和音频分类把相连ts组成一个帧。...传统软件和服务器之间交互还是以RTMP为主,比如说上文讲视频音频采集以PC为主,如果客户通过软件方式采集基本就是基于RTMP,如果采集是H5他协议一般是webrtc。

3.6K20

微服务 day13:使用FFmpeg进行格式转换以及m3u8文件生成、文件分块上传接口实现

HLS 工作方式是:将视频拆分成若干 ts 格式小文件,通过 m3u8 格式索引文件对这些 ts 小文件建立索引。...一般 10 秒一个 ts 文件,播放器连接 m3u8 文件播放,当快进时通过 m3u8 即可找到对应索引文件,并去下载对应 ts 文件,从而实现快进、快退以近实时方式播放视频。...0x03 搭建媒体播放器 正常使用 video.js 播放视频是通过一个网页,用户通过浏览器打开网页去播放视频,网页和视频都从web服务器请求,通常视频 url 地址使用单独域名。...常见方案有: 1、通过 Flash 上传,比如 SWFupload、Uploadify。 2、安装浏览器插件,变相pc客户,用比较少。...after-send-file 在所有分块上传完成后触发,可以请求服务合并分块文件。

3.8K31

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

EasyPlayer几乎涵盖了开发者所需全部平台,尤其是在webEasyPlayer.js时遇到播放器接入问题,比如:不懂前端js代码、没有公网服务器放置这些js脚本和网页、微信对接入IP播放地址有限制等...引用videojs无法自动播放问题 很多流媒体视频H5网页播放使用videojs来进行播放,而videojs本身自带自动播放属性是需要通过添加autoplay()方法来完成视频播放自动加载:...player = videojs("video", { autoplay: true, }); 在制作四分屏时出现给videojs添加autoplay()后,在一些浏览器上并不能完成自动播放...但是这个问题在其他浏览器却不存在,在其他浏览器上是能够进行自动加载播放。...RTMP、HTTP、HLS、HTTP-FLV、websocket等多种协议,同时,在安防等工业场景,重连还是必须,例如RTMP重连、HTTP-FLV直播重连、HLS(m3u8)直播重连,这就不得不让我们基于

6.8K10

ubuntu搭建推流服务器Nginx+rtmp

也要玩玩推流服务器~~~ 实现服务器推流/PC客户观看/浏览器客户查看 ---- ****简介**** 对于Nginx优点呢就不多说了,两句话: 1)并发量高 2)可负载均衡 重点谈谈rtmp...最后添加如下信息 # RMTP服务器配置信息 rtmp { server { listen 2016; #推流监听端口...Alic_客户获取流 对于浏览器呢,html整理代码如下 <link rel="stylesheet" href="http://vjs.zencdn.net/5.10...'); player.play(); 注意,在hls_path<em>的</em>路径<em>添加</em>一个站点来访问即可!...推流还是用ffmpeg<em>的</em>命令来, 推流一段时间后, 你会发现在"/home/alic/www/hls"目录里, 有很多ts文件, 还有一个后缀".m3u8"文件上面配置中 server:8081 块

4.1K20

前端中直播

然而,video标签限制实在是太多了,尤其是对于播放格式这一项,仅仅是支持 MP4 OGG WebM 格式,现在可能还支持 m3u8 格式视频。...;播放器可以直接使用http协议请求流数据。...web浏览器直播,因为FLV和RMTP都不支持IOS移动(手机与平板) HTTP-FLV 关于FLV在目前来说还是一个更好方案,关于FLV方面的介绍可以查看使用flv.js做直播。...所以,最好方案就是PC采用RTMP,移动采用HTTP-FLV。但是要考虑一点就是2020年flash问题。 前端做直播 在视频播放方面,前端有一个开源插件videojs。...重点注意:videojs+flash不支持移动。当初在这里纠结了两天时间,实在是没有办法。 我使用是react框架开发

5.5K20

HTML 5 视频直播一站式扫盲

HLS 请求流程是: 1 http 请求 m3u8 url。 2 服务返回一个 m3u8 播放列表,这个播放列表是实时更新,一般一次给出5段数据 url。...3 客户解析 m3u8 播放列表,再按序请求每一段 url,获取 ts 数据流。 简单流程: ? 3....当首先明确几个概念: 视频编码:所谓视频编码就是指通过特定压缩技术,将某个视频格式文件转换成另一种视频格式文件方式,我们使用 iphone 录制视频,必须要经过编码,上传,解码,才能真正在用户播放器里播放...视频编解码协议,通过设置参数可以完成基于 MPEG4,H.264 等协议编解码,demo 这里使用是 x264 编码库。...业界比较成熟 videojs,可以根据不同平台选择不同策略,例如 ios 使用 video 标签,pc 使用 flash 等。 11.

4.7K70

什么是HLS(HTTP Live Streaming)?

HLS描述了一组通过互联网提供音视频服务工具和程序。一个视频可以被分割成多个视频切片,这些切片传送位置和顺序在一组被称为播放列表XML文件中,该文件以文件扩展名m3u8结尾。...通过HLS,你可以使用常规Web服务器存储和分发内容。但是它需要将数据存储在适当格式中,且客户软件能够获取并处理HLS视频内容。让我们一起来看看HLS视频传输服务架构是什么样子。...打包器(Packager):打包器获取视频后,将其切割成短视频切片(10秒长)。...当客户发起请求时,HLS服务器需要提供文件是播放列表(m3u8文件),以及实际A/V内容(TS切片或者 fMP4)。...HLS播放列表示例 HLS播放列表有两种类型:主清单(master manifest)和子清单(child / media manifest)。让我们通过一个例子来理解它们是如何联系起来

3.1K30

视频直播解决方案

以上原生支持 桌面机浏览器需要使用一些第三方库,JWPlayer 延迟 三秒左右延迟,实时性较高 根据TS长度不同而不同,一般会有10s以上延迟 综合以上因素,我们认为如果对实时性要求较高,...网页使用RTMP会比较好,因为Flash Player原生支持,而大多数浏览器都会安装Flash player。...播放器 我们在试验过程中,使用多种播放器和库在全平台实现了rtmp和hls播放。在网页使用了videojs,在安卓使用vitamio。...具体实现请看我们另外一篇如何在网页和移动播放rtmp和hls视频流 总结 当然本文中解决方案只是最简单,对于直播服务器集群,直播间创建和管理,直播间直播密码和权限,内容分发网络CDN都没有进行深入研究...(reference from wikipedia ) Flash Player是天生能够播放RTMP流,所以RTMP流可以在网页上得到很好支持,另外也有很多其他浏览器能够支持播放RTMP流,比较知名

1.4K20

开源流媒体服务器SRS学习笔记(2) - rtmp http-flv hls 协议配置 及跨域问题

(实时生成视频切片需要时间,而且每个切片本身是N秒一切割,所以不难理解为啥hls协议延时最大) h5播放hls: 借助video-js项目,可以很容易实现.m3u8hls播放: ...player.play(); 但播放时,如果h5页面与.m3u8视频源不在同一个域名,浏览器会遇到跨域问题。...通常h5页面,是通过nginx来访问,可以在nginx里,把特定视频源路径,转发到后端srs服务器上,参考以下配置: location /srs/ { proxy_pass http://10.2...http://localhost:81/srs/live/livestream.m3u8请求,都会转发到http://10.2.X.X:8080/live/livestream.m3u8上,跨域问题解决后...(比如pc,且能确定安装并允许支行flash player)直接用flash player播放flv效果更好。

4.6K50

html播放rtsp流,浏览器播放rtsp视频流解决方案

浏览器不能直接播放,只有通过插件或者转码来实现这个需求。 要实现这个目的,可以采用方案非常得多,有商业也有开源,这里主要列举一些开源方案。这里方案都是我尝试过了,有些成功,有些没成功。...rtmp(nginx 1.7.11.3 Gryphon) 3....其原理是把整个流切分成一个个小视频文件,然后通过一个m3u8文件列表来管理这些视频文件 HTTP Live Streaming 并不是一个真正实时流媒体系统,这是因为对应于媒体分段大小和持续时间有一定潜在时间延时...此外,在客户开始下载之前,必须等待服务器编码器和流分割器至少生成一个TS文件,这也会带来潜在时延。 服务器软件将接收到流每缓存一定时间后包装为一个新TS文件,然后更新m3u8文件。...参考链接 其他方案 WebRTC WebRTC 是支持网页浏览器进行实时音视频一套API,例如:HTML5 通过 webRTC 直接调用摄像头,但是如果要实现远程视频流显示,则需要将 RTSP 转换为

5.8K130

web内容如何保护:如何有效地保护 HTML5 格式视频内容?

终于,内容提供商( Netflix、Adobe、CableLabs 等)从 Flash、Silverlight 插件播放器过渡到统一 HTML5 视频播放;各大浏览器公司( Google, Microsoft...DRM 整体保护机制 widevine流程h5播放器为例 widevine机制用户拉取需要播放加密视频地址(cdn)浏览器通过拉取视频文件头信息,知道该视频是加密触发浏览器 CDM内容加密模块...,产生license请求播放器应用层,向应用服务器发送获取服务证书请求,应用服务器,chrome应用证书服务器,发送请求,获取证书,以及密钥播放器应该用层获得解密密钥和证书,浏览器CDM使用获得密钥去更新...,解密加密视频能够在浏览器播放DRM 整体保护机制 FairPlay 流程创建HTMLMediaElement元素 设置播放媒体m3u8文件地址 给video.src = xxx.m3u8...设备检测与配置逻辑 videojs-contrib-hls                                                    、广告 videojs-contrib-ads

2K40

如何使用视频流媒体服务器支持HTML5直播?

为了紧跟潮流,本文我也将大家介绍一下视频直播中基本流程和主要技术点,包括但仅不限于前端技术。 H5 到底能不能做视频直播?...对于视频录制,可以使用强大 WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音对话或视频对话技术,缺点是只在PCchrome上支持较好,移动支持不太理想...4000; application hls { #rtmp推流请求路径 live on; hls on;...rtmp://ip:1935/hls/mystream,其中 hls_path 表示生成 .m3u8 和 ts 文件所存放地址,hls_fragment 表示切片时长,mysteam 表示一个实例...业界比较成熟videojs可以根据不同平台选择不同策略,例如 iOS 使用 video 标签,pc 使用 flash 等。

2.7K10

FFmpeg推流命令总结

今天考虑一个mcu混合实现,也就是接收多路过来rtp流,然后转发出去一路rtmp流,使用ffmpeg测试做记录,刚开始一直通过ffmpeg推送文件流不能满足要求,还是对参数配置不熟悉; 0、ffmpeg...udp或者rtp推流 >最简单模式: ffmpeg -re -i d:\videos\1080P.264 -vcodec copy -f rtp rtp://127.0.0.1:1234 ffplay接收命令...如果是MP4文件,需要先完整下载格式为 mp4 视频文件,当视频文件下载完成后,网站才可以播放该视频,这就对于用户体验是极大下降,所以需要切片为多个ts文件,以及m3u8文件,m3u8格式视频是将文件分成一小段一小段...ts文件,播放完一个在播放下一个,由于每次请求ts文件都很小,所以基本可以做到无延时播放: 切片mp4视频文件: ffmpeg -i ....html5shiv.min.js 由于video.js是基于H5构建播放器,所以在浏览器不支持H5时候,需要将相关资源引入到浏览器 放置播放器控件 <video  id="myVideo"  class

5.6K40

SSE技术详解:一种全新HTML5服务器推送事件技术

除了 WebSocket 之外,其他实现方式是基于 HTTP 协议来达到实时推送效果。第一种做法是简易轮询,即浏览器定时服务器发出请求,来查询是否有数据更新。...WebSocket相较SSE最大优势在于它是双向交流,这意味着服务器发送数据就像从服务器接受数据一样简单,而SSE一般通过一个独立Ajax请求从客户服务传送数据,因此相对于WebSocket...添加过滤器方式是在 web.xml 文件中添加代码清单 5 中所示配置内容。 清单 5....理论上来说,只需要通过 XMLHttpRequest 对象来获取服务器响应内容,并通过文本解析,就可以提取出相应事件,并触发对应事件处理方法。...只能通过 HTTP 请求其他方式来传递该标识符, GET 请求参数或 POST 请求内容体。

3.4K51
领券