视频直播新时代,低延时直播交互,Web,Android,WebRtc推流拉流测试

news2024/9/29 1:23:06

直播现在已经深入了生活,学习,工作和娱乐方方面面,由于前些年的技术所限,传统rtmp,flv,m3u8 技术让直播快速启动项目产品,但也有很多不足,特别的交互式直播,一直是其中的痛点,延时较大(1-10秒不等)
让用户即想用,已不是太爽,随技术进步,Webrtc已经切入了视频技术主干道,各方面配套,浏览器集成也大部分支持,体验极低延时的直播,已经是项目必需,因此我找了一个项目对比做了Webrtc低延时直播这个博文

测试选型,测试中如开源srs,nginx-rtmp之类,架构测试都比较麻烦,在github上找到ovsyunlive搭建都极简单,测试步骤如下:

下载OvsyunLive相关服务包Windows平台

1,启动:start.bat 停止: stop.bat

2,服务程序在公网上,要配ovsyunmedia.ini的exthost=公网IP.

3,推流地址:https://IP:7702/pub/

4,测试地址:https://IP:7701/play/
推流:webrtc://IP:7702/live/2222
webrtc播流地址:webrtc://IP:7701/live/2222
rtmp播流地址:rtmp://IP:1937/live/2222
rtsp播流地址:rtsp://IP:7554/live/2222
flv播放地址: http://IP:7701/live/2222.flv

5,测试效果如下,延时都是0.1-0.3秒左右,还是很不错的,

测试演示下载:http://m.ovmeet.com:7701/play/index.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1396314.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++初阶】第二站:类与对象(上) -- 上部分

前言: C学习的第二站:类和对象(上)文章的上半部分,知识点:面向过程和面向对象初步认识、类的引入、类的定义、类的访问限定符及封装、类的作用域、类的实例化. 目录 面向过程和面向对象初步认识 类的引入 类的定义 类的访问限定符及封装 访问限定符 封装 类的…

Docker服务以及容器如何设置服务器开机自动启动

Docker服务以及容器如何设置服务器开机自动启动 今天在客户现场遇到了如下问题: 他们服务器的机房,有时候需要关机重启,进行机房改造! 这时候就会遇到断电重启,在没有设置自动启动的情况下,我们所有的软…

经典ABR算法介绍:Pensieve (SIGCOMM ‘17) 原理及训练指南

文章目录 前言Pensieve原理*Pensieve重训练参考Oboe [SIGCOMM 18]Comyco [MM 19]Fugu [NSDI 20] A3C熵权重衰减思路实现 前言 Pensieve是DASH点播视频中最经典的ABR算法之一,也是机器学习类(Learning-based)ABR算法的代表性工作。Pensieve基…

Unity-场景

创建场景 创建新的场景后: 文件 -> 生成设置 -> Build中的场景 -> 将项目中需要使用的场景拖进去 SceneTest public class SceneTest : MonoBehaviour {// Start is called before the first frame updatevoid Start(){// 两个类: 场景类、场…

VUE--组件通信(父子)

1、什么是组件通信 组件通信就是指组件与组件之间的数据传递。因为组件的数据是独立的,无法直接访问其他组件的数据,想获取其他组件的数据,就需要用到组件通信。 2、组件关系分类(如图) ● 父子关系(props…

【Linux】进程的概念 进程状态 进程优先级

Content 一、什么是进程1. 进程的概念2. 进程的描述 - 进程控制块(PCB)3. Linux下的进程 二、进程状态1. 教科书中的进程状态运行状态阻塞状态挂起状态 2. Linux下的进程状态R(running)- 运行状态S(sleeping) - 睡眠状…

排序:非递归的归并排序

目录 递归与非递归的思想对比: 递归: 非递归: 代码解析: 完整代码: 递归与非递归的思想对比: 递归: 在之前的归并排序,它的核心思想是通过不断的分割,从一个数组变…

docker-compose部署

目录 一、什么是docker-compose? 二、compose部署 一、什么是docker-compose? Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。 Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。它使用Y…

MySQL(四)——约束

上期文章 MySQL(三)——函数 文章目录 上期文章概述约束演示外键约束添加外键删除外键删除/更新行为 总结 概述 概念:作用于表中字段上的规则,用于限制存储在表中的数据 目的:保证数据库中数据的正确、有效性和完整性…

2024华数杯国际赛数学建模A题完整论文来啦!最后的助攻!

大家好呀,从发布赛题一直到现在,总算完成了2024华数杯国际数学建模竞赛A题日本放射性废水完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半成品论文。 论文共40页&a…

48-DOM节点,innerHTML,innerText,outerHTML,outerText,静态获取,单机click,cssText

1.DOM基础 Document Object Module,文档对象模型,window对象,document文档,都可以获取和操作 1)文档节点 2)属性节点(标签内的属性href,src) 3)文本节点(标签内的文字) 4)注释节点 5)元素节点(标签) 2.获取元素节点 2.1通过标签名获取getElementsByTagName() …

[NSSRound#16 Basic]RCE但是没有完全RCE

题目代码&#xff1a; <?php error_reporting(0); highlight_file(__file__); include(level2.php); if (isset($_GET[md5_1]) && isset($_GET[md5_2])) {if ((string)$_GET[md5_1] ! (string)$_GET[md5_2] && md5($_GET[md5_1]) md5($_GET[md5_2])) {i…

微信内测“听一听” 音乐音频业务提至一级入口;美团 AI 平台视觉中心负责人魏晓林离职;腾讯视频生成模型 VideoCrafter2;广州房价连跌12个月

今日精选 • 微信内测“听一听” 音乐音频业务提至一级入口• 美团 AI 平台视觉中心负责人魏晓林离职• 腾讯推出视频生成模型 VideoCrafter2&#xff0c;• 广州房价连跌12个月 投融资与企业动态 • TikTok 越南推出 Thu Duc Market 在线销售渠道• 亚马逊将在五年内在日本…

[足式机器人]Part2 Dr. CAN学习笔记- Kalman Filter卡尔曼滤波器Ch05-3+4

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记 - Kalman Filter卡尔曼滤波器 Ch05-34 3. Step by step : Deriation of Kalmen Gain 卡尔曼增益/因数 详细推导4. Priori/Posterrori error Covariance Martix 误差协方差矩阵 3. Step by step :…

C++中特殊类的设计与单例模式的简易实现

设计一个只能在堆上创建对象的类 对于这种特殊类的设计我们一般都是优先考虑私有构造函数。然后对于一些特殊要求就直接通过静态成员函数的实现来完成。 class A//构造函数私有&#xff08;也可以析构函数私有&#xff09; { public:static A* creat(){return new A;} privat…

【Flink-CDC】Flink CDC 介绍和原理概述

【Flink-CDC】Flink CDC 介绍和原理概述 1&#xff09;基于查询的 CDC 和基于日志的 CDC2&#xff09;Flink CDC3&#xff09;Flink CDC原理简述4&#xff09;基于 Flink SQL CDC 的数据同步方案实践4.1.案例 1 : Flink SQL CDC JDBC Connector4.2.案例 2 : CDC Streaming ETL…

【Redis】三种集群模式(主从复制、哨兵模式、Cluster)

前言 redis有三种集群模式&#xff0c;其中主从是最常见的模式。Sentinel 哨兵模式是为了弥补主从复制集群中主机宕机后&#xff0c;主备切换的复杂性而演变出来的。哨兵顾名思义&#xff0c;就是用来监控的&#xff0c;主要作用就是监控主从集群&#xff0c;自动切换主备&…

Excel表格的快速动态扩展与删除行

实例需求&#xff1a;工作表中的表格&#xff08;ListObject&#xff09;名称为Table1&#xff0c;表格列数不确定&#xff0c;需要实现如下功能&#xff1a; 当用户完成最后一行最后一列输入之后&#xff08;如果该单元格为空&#xff0c;则视为输入未完成&#xff09;&#…

Golang个人web框架开发-学习流程

Golang-个人web框架 github仓库创建github仓库 web框架学习开发周期第一阶段--了解第一阶段思考小结 第二阶段第三阶段 github仓库 github地址&#xff1a;ameamezhou/golang-web-frame 后续还将继续学习更新 创建github仓库 设置免密登录 ssh-keygen 一路回车就OK 上面有告…

x-www-form-urlencoded接收方式代码示例

数据回推方式是 “x-www-form-urlencoded”&#xff0c;可以选择使用 GET 或 POST 方法来接收数据回推。 使用 GET 方法接收数据回推时&#xff0c;您可以将数据作为查询参数附加在请求的 URL 中。例如&#xff1a; http://example.com/callback?param1value1&param2val…