EasyDarwin开源流媒体服务器

news2024/11/17 11:50:44

文章目录

  • 前言
  • 一、EasyDarwin 简介
  • 二、EasyDarwin 主要功能特点
  • 三、安装部署
  • 四、推拉流测试
    • 1、进入控制页面
    • 2、推流测试
    • 3、拉流测试


前言

本文介绍一个十分实用的高性能开源 RTSP 流媒体服务器:EasyDarwin


一、EasyDarwin 简介

EasyDarwin 是基于 go 语言研发,维护和优化的一个高性能开源 RTSP 流媒体服务器,能够帮助流媒体开发者和创业型企业快速构建流媒体服务平台,更快,更简单的实现最新的移动互联网流媒体直播和点播,同步音频和视频的传输,源码下载地址:

  • https://github.com/EasyDarwin/EasyDarwin
  • https://github.com/EasyDarwin/EasyDarwin/releases

二、EasyDarwin 主要功能特点

  • 基于 Golang 开发维护;
  • 支持 Windows、Linux、macOS 平台;
  • 支持 RTSP 推流分发(推模式转发);
  • 支持 RTSP 拉流分发(拉模式转发);
  • 服务端录像 参考:https://blog.csdn.net/jyt0551/article/details/84189498
  • 服务端录像检索与回放 参考:https://blog.csdn.net/jyt0551/article/details/84189498
  • 关键帧缓存;
  • 秒开画面;
  • Web 后台管理;
  • 分布式负载均衡;

三、安装部署

1、下载解压 release 包
https://github.com/EasyDarwin/EasyDarwin/releases
在这里插入图片描述
2、直接运行(Windows)
双击 EasyDarwin.exe
注:停止服务为 Ctrl + C
在这里插入图片描述
服务运行起来后如下所示:
在这里插入图片描述

四、推拉流测试

1、进入控制页面

打开浏览器输入 http://localhost:10008,进入控制页面,默认用户名密码都是 admin,主界面如下图所示
在这里插入图片描述

2、推流测试

使用 FFmpeg 将输入的 FLV 视频文件转换为 RTSP 流,并通过 TCP 协议传输到本地主机的 “test1” 路径。视频编码使用 libx264,音频编码使用 AAC。

ffmpeg -re -i SampleVideo_1280x720_20mb.flv -rtsp_transport tcp -vcodec libx264 -acodec aac -f rtsp rtsp://localhost/test1
  • -re:这个选项告诉 FFmpeg 以实时模拟的方式读取输入文件。这对于模拟实时流传输很有用,即使输入文件本身不是实时生成的。
  • -i SampleVideo_1280x720_20mb.flv:这是输入文件的路径和文件名。在这个例子中,输入文件是名为 “SampleVideo_1280x720_20mb.flv” 的 FLV 格式视频文件。
  • -rtsp_transport tcp:这个选项指定了 RTSP(Real-Time Streaming Protocol)传输使用 TCP 协议。RTSP 是一种用于流媒体传输的协议,通过 TCP 可以提供稳定的传输。
  • -vcodec libx264:这个选项指定了视频编解码器为 libx264,它是一个开源的 H.264 视频编码器。H.264 是一种流行的视频编码标准,广泛用于视频压缩和传输。
  • -acodec aac:这个选项指定了音频编解码器为 AAC(Advanced Audio Coding),它是一种常用的音频编码格式,具有高音质和较低的比特率。
  • -f rtsp:这个选项指定了输出格式为 RTSP。RTSP 格式是用于流媒体传输的一种常见格式。
  • rtsp://localhost/test1:这是输出 RTSP 流的 URL。在这个例子中,输出的 RTSP 流将被传输到本地主机上的 “test1” 路径。

在这里插入图片描述
在推流列表可以看到相关信息:
在这里插入图片描述

3、拉流测试

使用 FFplay 工具来播放一个通过 RTSP 协议传输的视频流

ffplay -rtsp_transport tcp rtsp://localhost/test1
  • -rtsp_transport tcp:这个选项指定了 RTSP 传输使用 TCP 协议。这将确保使用 TCP 进行稳定的传输。
  • rtsp://localhost/test1:这是要播放的 RTSP 流的 URL。在这个例子中,要播放的流位于本地主机的 “test1” 路径上。
    在这里插入图片描述
    可以看到拉流成功,正在进行播放
    在这里插入图片描述
    在推流列表可以看到相关信息:
    在这里插入图片描述

我的qq:2442391036,欢迎交流!


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

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

相关文章

域名反查Api接口——让您轻松查询域名相关信息

在互联网发展的今天,域名作为网站的唯一标识符,已经成为了企业和个人网络营销中不可或缺的一部分。为了方便用户查询所需的域名信息,API接口应运而生。本文将介绍如何使用挖数据平台《域名反查Api接口——让您轻松查询域名相关信息》进行域名…

【Java笔试强训】Day10(CM62 井字棋、HJ87 密码强度等级)

CM62 井字棋 链接:井字棋 题目: 给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,0表示没有棋子,-1代表是对方玩家的棋子。当一方棋子在横竖斜方向上有连成排的及获胜(及…

Ps:通过显示大小了解图像的打印尺寸

在 Photoshop 中,如果想了解文档窗口中的图像打印出来之后的实质大小,只要知道两个数值即可。 第一个数值是图像分辨率(也称“文档分辨率”)的大小,可在Ps菜单:图像/图像大小 Image Size对话框中查询或设置…

linux 安装 mini conda,linux下安装 Miniconda

下载地址 https://docs.conda.io/projects/miniconda/en/latest/index.html 安装conda mkdir -p ~/miniconda3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh bash ~/miniconda3/miniconda.sh -b -u -p ~/mini…

第1关:构造函数与析构函数的实现

题目&#xff1a;根据.h写出.cpp 考点&#xff1a; 1.链表的默认构造&#xff0c; 拷贝构造&#xff0c;传参构造以及析构函数等。 代码&#xff1a; /********** BEGIN **********/ #include <cstdlib> #include <cstring> #include "LinkedList.h&…

Java 设计模式——组合模式

目录 1.概述2.结构3.实现3.1.抽象构件3.2.容器构件3.3.叶子节点3.4.测试 4.分类5.使用场景6.优点 1.概述 &#xff08;1&#xff09;大家对于上面这个图片肯定非常熟悉&#xff0c;上图我们可以看做是一个文件系统&#xff0c;对于这样的结构我们称之为树形结构。在树形结构中可…

JDK并发修改异常的一个“BUG“

很多电商公司早期的架构都是基于PHP&#xff0c;所以我身边会有很多很厉害的PHP老哥&#xff0c;但现在都在写Java。昨天看到他在看Java的并发修改异常&#xff0c;正打算秀一波操作&#xff0c;却被他的一个问题难住了&#xff1a; public class ForeachTest {public static …

【EI会议征稿】第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024)

第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024) The 3rd International Academic Conference on Blockchain, Information Technology and Smart Finance 第三届区块链、信息技术与智慧金融国际学术会议 (ICBIS2024) 将于2024年2月23-25日在马来西亚举行。本次会…

Java+Spring Cloud +UniApp +MySql智慧工地综合管理云平台源码

智慧工地围绕工程现场人、机、料、法、环及施工过程中质量、安全、进度、成本等各项数据满足工地多角色、多视角的有效监管,实现工程建设管理的降本增效. 智慧工地综合管理云平台源码&#xff0c;PC监管端、项目端&#xff1b;APP监管端、项目端、数据可视化大屏端源码&#xf…

计算机毕业设计 基于SpringBoot的失踪人员信息发布与管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

小白看CLIP代码解析

CLIP代码解析 CLIP演示代码&#xff08;以cifar100举例&#xff09;补充11. 为什么选用100*image_feature&#xff1f;2. 为什么使用L2规范点积&#xff0c;而不直接使用点积&#xff1f; cifar100的所有类别model.encode_image >> VisionTransformer补充21. 为什么加入c…

2023亚太杯数学建模C题思路解析

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料5 最后 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 2023年第十三…

蓝桥杯第三场双周赛(AK)

题目非常典型&#xff0c;很适合学算法。 1111 第 3 场算法双周赛 - 蓝桥云课 双十一的祈祷 题意&#xff1a;求的个位数。 思路&#xff1a;只需要求个位数&#xff0c;因此此题等效于求 ,可用快速幂或者直接看出为1。 #include <bits/stdc.h> using namespace std; …

矩阵置零00

题目链接 矩阵置零 题目描述 注意点 使用 原地 算法 解答思路 思路是需要存储每一行以及每一列是否有0&#xff0c;因为要尽可能使用更少的空间&#xff0c;且新设置为0的格子不能对后续的判断产生影响&#xff0c;所以要在原有矩阵上存储该信息先用两个参数存储第一行和第…

关于反弹Shell个人的一些理解与学习收获

反弹Shell 概念&#xff1a; 反弹shell(reverse shell)&#xff0c;就是控制端(攻击者所有)监听某TCP/UDP端口&#xff0c;被控端发起请求到该端口&#xff0c;并将其命令行的输入输出转发到控制端。reverse shell与telnet&#xff0c;ssh等标准shell对应&#xff0c;本质上是…

Linux 本地zabbix结合内网穿透工具实现安全远程访问浏览器

前言 Zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。能监视各种网络参数&#xff0c;保证服务器系统的安全运营&#xff1b;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。 本地zabbix web管理界面限制在只能局域…

OpenMMlab导出yolov3模型并用onnxruntime和tensorrt推理

导出onnx文件 直接使用脚本 import torch from mmdet.apis import init_detector, inference_detectorconfig_file ./configs/yolo/yolov3_mobilenetv2_8xb24-ms-416-300e_coco.py checkpoint_file yolov3_mobilenetv2_mstrain-416_300e_coco_20210718_010823-f68a07b3.pth…

计算机网络期末复习-Part5

1、CRC计算 看例题&#xff1a;待发送序列为101110&#xff0c;生成多项式为X31&#xff0c;计算CRC校验码 先在待发送序列末尾添加与生成多项式次数相同的零&#xff0c;在上述例子中&#xff0c;生成多项式是X^3 1&#xff0c;所以需要添加3个零&#xff0c;待发送序列变成…

面试官问 Spring AOP 中两种代理模式的区别?很多面试者被问懵了

面试官问 Spring AOP 中两种代理模式的区别?很多初学者栽了跟头&#xff0c;快来一起学习吧&#xff01; 代理模式是一种结构性设计模式。为对象提供一个替身&#xff0c;以控制对这个对象的访问。即通过代理对象访问目标对象&#xff0c;并允许在将请求提交给对象前后进行一…

11.9乘法器实验总结(流水线,for移位)

for循环乘法器 流水线乘法器 仿真的时候&#xff0c;注意把clk设置一个初始值 分析报告 电路图分析: 比对两种实现方式的RTL级电路图可以发现&#xff0c;for循环的乘法器本质为转为不断的循环累加&#xff0c;故最终电路长度很长&#xff0c;取决于循环&#xff0c;即累加的…