当前位置: 首页 > news >正文

EasyDarwin搭建直播推流服务

学习链接

easydarwin官网 - 这里看介绍

easydarwin软件下载地址 - 百度网盘

easydarwin视频 B站

文章目录

  • 学习链接
  • 使用
    • 下载EasyDarwin压缩包,并解压到目录
    • 启动EasyDarwin
    • 点播
    • 直播
    • easyplayer.js
    • apidoc
    • ffmpeg推流rtsp & ffplay拉流

使用

下载EasyDarwin压缩包,并解压到目录

在这里插入图片描述
在这里插入图片描述

启动EasyDarwin

双击EasyDarwin.exe
在这里插入图片描述
访问http://127.0.0.1:10086/#/login,用户名和密码都是admin
在这里插入图片描述

点播

上传1个文件
在这里插入图片描述
点击播放
在这里插入图片描述
可以看到实际上是1个m3u8地址http://127.0.0.1:10086/fvod/Ab6V5zVHR/video.m3u8,分享链接http://127.0.0.1:10086/easyplayer.html?snapUrl=/fvod/Ab6V5zVHR/snap.jpg&videoUrl=/fvod/Ab6V5zVHR/video.m3u8&videoTitle=12-%25E8%2587%25AA%25E5%258A%25A8%25E8%25A1%25A5%25E5%2585%25A8-RestAPI%25E5%25AE%259E%25E7%258E%25B0%25E8%2587%25AA%25E5%258A%25A8%25E8%25A1%25A5%25E5%2585%25A8%25E6%259F%25A5%25E8%25AF%25A2&type=vod&autoplay=yes 也可以直接打开
在这里插入图片描述
在这里插入图片描述

直播

创建1个直播
在这里插入图片描述
点击播放,查看推流地址rtmp://127.0.0.1:10035/live/3K41ck4Hg?sign=6FV1czVNg,使用obs推流时,填入该地址
在这里插入图片描述
在这里插入图片描述
设置好obs之后,点击开始直播
在这里插入图片描述

此时,回到easydarwin控制台,可以看到延迟大概是4s。

在这里插入图片描述
并且在播放页看到有拉流地址rtsp://127.0.0.1:10054/live/3K41ck4Hghttp://127.0.0.1:10086/flv/live/3K41ck4Hg.flv,使用vlc打开地址
在这里插入图片描述
在这里插入图片描述

easyplayer.js

EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方式,支持Windows、Linux、Android、iOS全平台终端的H5播放器,使用简单, 功能强大。
在这里插入图片描述

在播放页查看到

  • HTTP-FLV:http://127.0.0.1:10086/flv/live/3K41ck4Hg.flv
  • HLS(m3u8):http://127.0.0.1:10086/hls/3K41ck4Hg/playlist.m3u8
  • WS-FLV:http://127.0.0.1:10086/ws-flv/live/3K41ck4Hg.flv,这里要改成 ws://127.0.0.1:10086/ws-flv/live/3K41ck4Hg.flv 才可以播放

播放示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

apidoc

打开easydarwin的文档说明
在这里插入图片描述

ffmpeg推流rtsp & ffplay拉流

从Easydarwin的启动日志,可以看到rtsp服务启动端口是10054,而rtsp协议的默认端口是554。

这里可以使用ffmpeg推流到rtsp://localhost:10054/test1

执行命令 ffmpeg -re -i test.mp4 -rtsp_transport tcp -vcodec libx264 -acodec aac -f rtsp rtsp://localhost:10054/test1
在这里插入图片描述

打开另1个cmd窗口,执行ffplay -i rtsp://localhost:10054/test1,会弹出1个播放视频的窗口。
在这里插入图片描述
也可以使用vlc播放,地址也是:rtsp://localhost:10054/test1
在这里插入图片描述

相关文章:

EasyDarwin搭建直播推流服务

学习链接 easydarwin官网 - 这里看介绍 easydarwin软件下载地址 - 百度网盘 easydarwin视频 B站 文章目录 学习链接使用下载EasyDarwin压缩包,并解压到目录启动EasyDarwin点播直播easyplayer.jsapidocffmpeg推流rtsp & ffplay拉流 使用 下载EasyDarwin压缩包…...

无人机数据处理系统:原理与核心系统

一、数据处理系统的运行原理 数据获取:无人机在飞行过程中,通过搭载的传感器(如相机、激光雷达等)采集到各种类型的数据,例如图像、点云等。这些数据是后续处理和分析的基础。 数据传输:采集到的数据会通…...

DLL中的inline static成员变量:Windows开发中的常见陷阱

在Windows平台进行C开发时,DLL(动态链接库)是一个非常重要的概念。它让我们能够实现代码的模块化和动态加载,提高了程序的灵活性和维护性。然而,当我们在DLL中使用C17引入的inline static成员变量时,可能会…...

pandas 读写excel

在Python中,使用Pandas库读写Excel文件是一个常见的操作。Pandas提供了read_excel和to_excel方法来分别实现读取和写入Excel文件的功能。以下是一些基本的示例: ### 读取Excel文件 python import pandas as pd # 读取Excel文件 df pd.read_excel(pat…...

记录Threadlocal使用

编写ThreadLocal工具类 package com.jjking.jplan.context;public class BaseContext<T> {public static final ThreadLocal threadLocal new ThreadLocal();//存储用户public static void set(Object t) {threadLocal.set(t);}//获取用户public static <T> T ge…...

2024 ccpc 辽宁省赛 E(构造 思维?)L(二分+一点点数论知识?)

E 题意&#xff1a; 可以注意到&#xff1a; 我的两种方格都四个方格的大小。 所以 如果存在一种摆放方式 那么 4|nm。 再考虑一种特殊的情况 22 &#xff0c;此时虽然我的积是4 但是无法摆放的。 1>对于 4 | n,或者 4 | m.我直接摆放第二种方格就可以了。 如果我n 是4 的…...

【iOS】设计模式的六大原则

【iOS】设计模式的六大原则 文章目录 【iOS】设计模式的六大原则前言开闭原则——OCP单一职能原则——SRP里氏替换原则——LSP依赖倒置原则——DLP接口隔离原则——ISP迪米特法则——LoD小结 前言 笔者这段时间看了一下有关于设计模式的七大原则&#xff0c;下面代码示例均为OC…...

网络安全:攻防技术-Google Hacking的实现及应用

前言 google hacking其实并算不上什么新东西&#xff0c;在早几年我在一些国外站点上就看见过相关的介绍&#xff0c;但是由于当时并没有重视这种技术&#xff0c;认为最多就只是用来找找未改名的mdb或者别人留下的webshell什么的&#xff0c;并无太大实际用途。但是前段时间仔…...

输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。-多语言

目录 C 语言实现 Python 实现 Java 实现 Js 实现 Ts 实现 题目&#xff1a;输入一行字符&#xff0c;分别统计出其中英文字母、空格、数字和其它字符的个数。 程序分析&#xff1a;利用while语句,条件为输入的字符不为\n。 C 语言实现 #include <stdio.h>int mai…...

2-2-18-9 QNX系统架构之文件系统(三)

阅读前言 本文以QNX系统官方的文档英文原版资料为参考&#xff0c;翻译和逐句校对后&#xff0c;对QNX操作系统的相关概念进行了深度整理&#xff0c;旨在帮助想要了解QNX的读者及开发者可以快速阅读&#xff0c;而不必查看晦涩难懂的英文原文&#xff0c;这些文章将会作为一个…...

各大浏览器(如Chrome、Firefox、Edge、Safari)的对比

浏览器如Chrome、Firefox、Edge等在功能、性能、隐私保护等方面各有特点。以下是对这些浏览器的详细对比&#xff0c;帮助你选择合适的浏览器。 1. Google Chrome 市场份额&#xff1a;Chrome是目前市场上最流行的浏览器&#xff0c;约占全球浏览器市场的65%以上。 性能&#…...

nginx搭建直播推流服务

文章目录 学习链接步骤使用nginx搭建直播推流服务安装依赖库下载nginx-http-flv-module模块下载nginx解压nginx&#xff0c;进入nginx目录设置nginx编译配置编译并安装配置nginx rtmp服务启动nginx 准备另外一台电脑下载OBS下载OBS windows | linux 安装vlc观看直播flv协议hls协…...

单片机-- 松瀚sonix学习过程

硬件&#xff1a;松瀚sn8f5701sg、SN-LINK 3 Adapter模拟器、sn-link转接板 软件&#xff1a; keil-c51&#xff08;v9.60&#xff09;&#xff1a;建立工程&#xff0c;编辑&#xff0c;烧录程序 SN-Link_Driver for Keil C51_V3.00.005&#xff1a;安装sonix设备包和snlin…...

循环神经网络:从基础到应用的深度解析

&#x1f35b;循环神经网络&#xff08;RNN&#xff09;概述 循环神经网络&#xff08;Recurrent Neural Network, RNN&#xff09;是一种能够处理时序数据或序列数据的深度学习模型。不同于传统的前馈神经网络&#xff0c;RNN具有内存单元&#xff0c;能够捕捉序列中前后信息…...

从扩散模型开始的生成模型范式演变--SDE

SDE是在分数生成模型的基础上&#xff0c;将加噪过程扩展时连续、无限状态&#xff0c;使得扩散模型的正向、逆向过程通过SDE表示。在前文讲解DDPM后&#xff0c;本文主要讲解SDE扩散模型原理。本文内容主要来自B站Up主deep_thoughts分享视频Score Diffusion Model分数扩散模型…...

【python使用kazoo连ZooKeeper基础使用】

from kazoo.client import KazooClient, KazooState from kazoo.exceptions import NoNodeError,NodeExistsError,NotEmptyError import json# 创建 KazooClient 实例&#xff0c;连接到 ZooKeeper 服务器 zk KazooClient(hosts127.0.0.1:2181) zk.start()# 定义节点路径 path…...

【设计模式系列】解释器模式(十七)

一、什么是解释器模式 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为型设计模式&#xff0c;它的核心思想是分离实现与解释执行。它用于定义语言的文法规则&#xff0c;并解释执行语言中的表达式。这种模式通常是将每个表达式抽象成一个类&#xff0c;并通…...

只出现一次的数字

只出现一次的数字 给你一个 非空 整数数组 nums &#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题&#xff0c;且该算法只使用常量额外空间。 示例 1 &#xff…...

SpringMVC-08-json

8. Json 8.1. 什么是Json JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式&#xff0c;目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写&#xf…...

技术文档的语言表达

技术文档的语言表达 在这个瞬息万变的技术世界中&#xff0c;了解如何撰写有效的技术文档显得尤为重要。无论是开发团队还是最终用户&#xff0c;清晰、简洁且有条理的文档都是连接各方的桥梁。本文将深入探讨技术文档的语言表达&#xff0c;从其重要性、写作原则到各种类型&a…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展&#xff1a;显示创建时间8. 功能扩展&#xff1a;记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

动态 Web 开发技术入门篇

一、HTTP 协议核心 1.1 HTTP 基础 协议全称 &#xff1a;HyperText Transfer Protocol&#xff08;超文本传输协议&#xff09; 默认端口 &#xff1a;HTTP 使用 80 端口&#xff0c;HTTPS 使用 443 端口。 请求方法 &#xff1a; GET &#xff1a;用于获取资源&#xff0c;…...