live555在Windows WSL2中编译、运行,搭建RTSP流服务器

基于Live555实现数据流的推送 首先实现一个比较通用的MediaSubsession,继承OnDemandServerMediaSubsessionpublic :public :return sms;接着实现数据获取类public :private :public :public :/*实现获取数据到fTo,最大fMaxSize*/ ret = getStreamData(fSourceHandle ,(char *) fTo , fMaxSize) 阅读详情

在这里插入图片描述


1. 背景

想要通过RTSP往opencv的接口中推流,然后做一下yolo的推理等练习,本篇主要记录如何搭建RTSP推流服务器,本篇的环境是Windows WSL2,当然也可以在Linux PC中搭建,方法一致,感兴趣的小伙伴可以试试。
博主的环境信息如下:
在这里插入图片描述


查阅资料,一般都是通过live555作为推流服务器。


2. 实施步骤

2.1 下载live555安装包

前往官网,下载最新版本的live555安装包。
live555官网
在这里插入图片描述


 wget http://www.live555.com/liveMedia/public/live.2023.07.24.tar.gz

在这里插入图片描述


2.2 解压压缩包

解压压缩包:

tar -xvf live.2023.07.24.tar.gz

2.3 编译源码

编译源码:

cd live
./genMakefiles linux-64bit
make

在这里插入图片描述
发现编译失败:
在这里插入图片描述


尝试解决编译问题,但仍无法编译通过。
openrtsp 2023.06.16 build issue #45
于是,放弃最新版本,下载历史版本,在下面的网页中找到live.2021.11.23.tar.gz这个版本,并下载。
live555的历史版本
按照前面的方法,解压、编译:
在这里插入图片描述
编译OK。
查看/mediaServer/路径下live555MediaServer是否被编译出来:
在这里插入图片描述


下载测试视频文件:
在这里插入图片描述
当然,用其他的视频文件也可以。


2.3 安装ffmpeg

在这里插入图片描述


2.4 安装opencv-python

在这里插入图片描述


2.5 视频文件格式转换

ffmpeg -i test.mp4 -codec copy -bsf: h264_mp4toannexb -f h264 test.264

在这里插入图片描述


在这里插入图片描述


将格式转换后的视频文件拷贝到/mediaServer/路径下:
在这里插入图片描述


2.6 启动推流

 ./live555MediaServer

在这里插入图片描述
可以看到,服务端已经启动,连接服务端的URL是:rtsp://192.168.181.1:8554/,我们拷进去的视屏文件名字是test.264,那这里的就是test.264。
至此,推流服务端的准备工作都已完成。


2.6 安装VLC,验证

现在有了服务端,必须要有客户端来验证,所以需要用到VLC,来验证推流功能是否正常。
前往VLC官网下载Windows版本的VLC:
在这里插入图片描述


安装VLC,打开媒体–>打开网络串流:
在这里插入图片描述


点击播放,效果如下:
在这里插入图片描述


至此,live555搭建的RTSP推流服务器搭建成功。


3. 用opencv-python接口接收视频流

在Windows上准备接收程序:

import numpy as np
import cv2

# cap = cv2.VideoCapture(1)
cap = cv2.VideoCapture("rtsp://192.168.181.1:8554/test.264")

while(True):
    ret, frame = cap.read()
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)

    cv2.imshow('frame',frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

在这里插入图片描述


运行接收程序:

python untitled.py

在这里插入图片描述
显示效果如下:
在这里插入图片描述


参考

【1】Ubuntu用live555快速搭建一个RTSP视频流服务器

live555 rtsp推流pcm和h264(内存获取视音频数据) live555 rtsp 通过fifo方式从内存同时推流pcm音频和h264视频数据,解决延迟过大的问题 阅读详情

相关推荐

live555搭建实时播放rtsp服务器

createNewStreamSource函数是需要我们实现的函数,函数创建了H264FramedLiveSource类对象,这个类对象就是我们实现doGetNextFrame函数的类;当然live555源码的实现技巧,运行流程也是很值得借鉴的;live555可以说是rtsp的专项库,既可以搭建rtsp服务器,也可以搭建rtsp客户端;FramedSource类中只有一个doGetNextFrame纯虚函数,用于获取媒体流,其他不用实现;我是以帧的方式获取的视频流,在实际的开发中,不一定非要一次取一帧;

qq_39466755的博客 4044

FFmpeg4.3开发系列之12:RTSP+Live555直播点播详解

我将带领大家全面分析RTSP+LIVE555,实现摄像头直播功能。 您将亲自动手来操练,搭建环境、学习理论,分析总结:RTSP+RTP/RTCP+X264+LIVE555 具体包括包括如下:RTSP协议讲解RTP/RTCP协议讲解使用DirectShow读取本地摄像头数据,存储为yuv格式使用X264进行编码,将yuv数据编码为h264码流扩展Live555,实现自定义的摄像头数据源VideoSource和RTPSink实现摄像头直播,使用VLC拉流 -------------------------梅老师从事音视频与流媒体行业18年;曾在永新视博、中科大洋、百度、美国Harris广播事业部等公司就职,经验丰富;曾亲手主导广电直播全套项目,精通h.264/h.265/aac,曾亲自参与百度app上的网页播放器等实战产品。

live555 rtsp+x264模拟实时编码推流

live555 rtsp+x264模拟实时编码推流

基于Live555实现RTSP服务器来推送H264实时码流

实现了一个单播的rtsp服务器来推送实时的h264码流

qq_42161913的博客 6087

live555流媒体服务器(windows版)

解压后直接把需要点播的视频放在与live555的exe同目录下,点击启动live555后,可在局域网用vlc打开串流观看视频,注意:不支持mp4封装格式

Windows下利用live555实现H264实时流RTSP发送

Windows下利用live555实现H264实时流RTSP发送,利用本地文件读入模拟,环境为VS2013。

live555学习笔记【3】---RTSP服务器(一)

Live555库是一个使用开放标准协议如RTP/RTCP、RTSP、SIP等实现多媒体流式传输的开源C库集。这些函数库可以在Unix、Windows、QNX等操作系统下编译使用,基于此建立RTSP/SIP服务器和客户端来实现多媒体流的传输。下面给出具体实现过程[4]: (1)客户端发起RTSP OPTION请求,目的是得到服务器提供什么方法。RTSP提供的方法一般包括OPTIONS、DES...

王木木 9343

云计算学习——5G网络技术

华为eNSP网络设备模拟器的基础安装及简单使用

qq_42520799的博客 1445

win10 vs2019编译live555

1.背景 最近在做音视频方面的工作,需要用到live555,准备了解一下其运行的流程,故下载其源码并编译之。 2.源码下载 下载网址:下载网址 网站中提供各个日期的live555源码的压缩包。 我下载的是最新版本。 源码结构介绍 解压之后的目录结构: 主要使用其中的四个目录, 分别对应 Live555 的四个库: UsageEnvironment 目录:生成的静态库为 libUsageEnvironment.lib, 这个库主要包含一些基本数据结构以及工具类的定义。 g.

xiangxiang2017的博客 1733

基于三轴加速度计的塑料水管泄漏振动检测技术全解析

在流体力学与结构动力学领域,管道振动分析是评估系统健康状态的关键技术。其基本原理在于,当管道内流体状态发生异常(如泄漏)时,会引发管壁产生特定的机械振动信号。这项技术的核心价值在于实现了对管道系统的非侵入式、在线监测,能够提前预警潜在故障,避免资源浪费与次生灾害。在智慧城市与智能水务等应用场景中,它对于保障供水管网安全、提升运维效率具有重要意义。本文聚焦于如何利用高精度的三轴加速度计,精准捕捉塑料水管因泄漏产生的微弱振动,并通过信号处理与机器学习算法,构建一套从数据采集到泄漏识别与定位的完整工程解决方案。

weixin_32239523的博客 407

【学术情报智库】目录学的数字化蜕变:从古籍整理到AI知识图谱的跨越

我们既是浩瀚知识的守望者,也是数字智识的开拓者。目录学数字化不是技术替代传统,而是融合创新,让学术的系统性与多样性在新媒介下焕发新的生命。以AI为桥,既要智能链接,也要人文关照——这是对自我文明的深情回应,也是新知时代的庄严约定。

高校图书馆高级系统架构师/研究馆员,推动高校AI从概念演示到可评审、可交付、可运维:路线图与立项评审、PoC交付、评测回归与上线运维(Baseline/Eval/Ops)。 1422

live555实现RTSP推流

使用live555源码目录中testProgs目录中的testOnDemandRTSPServer.cpp进行推流,可以设置推流端口号、推流地址以及推流数据源文件。1、需要修改其中的OutPacketBuffer::maxSize,改为1000000,避免推流数据包大小超限。如注释所述,创建服务前,设置authDB,并定义ACCESS_CONTROL宏即可。rtsp推流地址为:rtsp://[ip]:[port]/[streamName]7、实时推流时,使用Linux FIFO文件作为推流数据源文件。

2427

数据分析案例-车辆二氧化碳排放量数据可视化分析

本实验数据集来源于Kaggle,该数据集捕获了车辆二氧化碳排放量随不同特征变化的详细信息。数据集取自加拿大政府官方开放数据网站。其中包含 7 年期间的数据。总共有 7385 行和 12 列。各列变量含义解释如下:Make:车辆的品牌或制造商。Model:车辆的具体车型名称。Vehicle Class:车辆的分类,如紧凑型、SUV等。Engine Size(L):车辆发动机的尺寸,以升为单位。Cylinders:车辆发动机的气缸数。

m0_64336780的博客 1万+

3. live555 RTSP推流H264

目录 一、操作系统版本 二、编译live555 三、下载H264文件 四、RTSP推流 五、VLC播放器RTSP拉流播放 一、操作系统版本 使用的虚拟机加ubuntu 20.04 二、编译live555 参照之后的博文: 1.live555 ubuntu编译_pengyouhai的专栏-优快云博客 三、下载H264文件 由于使用live555推流的时候是使用h264,因此格式必须正确,如果文件格式不对,会导致RTSP推流失败。 这里推荐使用官方的h264流文件,h264文

pengyouhai的专栏 6961

手把手教你学Simulink——机器人力控场景实例:基于Simulink的永磁同步电机重力补偿力矩控制仿真

本文介绍了基于Simulink的机器人重力补偿力矩控制仿真方法。针对机器人悬停时电机发热、抖动等问题,提出通过前馈补偿重力转矩的解决方案。文章详细阐述了从机器人动力学建模、重力补偿计算、PMSM转矩控制到系统集成的完整实现流程,并以2-DOF机械臂为例验证了补偿效果。结果表明,重力补偿能显著降低电机电流和拖拽力,提高系统柔顺性。文中还提供了高级功能扩展方向,如参数辨识、摩擦补偿等,为实际工程应用提供了参考框架。

MHD0815的博客 154

TIP 2024 | 跨类与跨域语义增强用于域泛化

域泛化方法旨在通过多样化的源域帮助开发一个在未知目标域上表现良好的通用模型。数据增强已被证明是增强计算机视觉中域泛化的有效方法。最近,基于语义级别的数据增强取得了显著成果。然而,这些方法主要集中在从类内和域内采样语义方向,限制了源域的多样性。为了解决这个问题,作者提出了一种新的方法,称为跨类与跨域语义增强(CDSA)。首先,作者引入了一种基于采样的方法CrossSmooth,从跨类中获取语义方向。然后,CrossVariance通过采样语义方向获取不同域的样式。

小白学视觉 212

通过live555实现H264 RTSP直播(Windows版)

为何标明“Windows版”,因为firehood大神已经实现了linux版:通过live555实现H264 RTSP直播 相关文章: 【1】Win7(Windows 7)下用VS2013(Visual Studio 2013)编译live555 【2】RTSP协议分析 【3】windows命名管道 一.基础 live555的学习基本上都是从E:\live555\testProgs中的

草上爬的博客 2万+

14003.xilinx系统移植

文章目录1 xilinx 系统移植 sd卡版本1.1 创建项目1.2 拷贝 *.hdf 到工程目录1.3 根据hdf文件对系统进行配置1.3.1 设置内核源码路径为本地1.3.2 设置分区的名称与大小1.4 清除本地缓存并编译成功1.5 打包生成BOOT.BIN并拷贝到sd卡1.6 问题1.7 系统启动成功1.8 配置设备树文件丰富系统外设 1 xilinx 系统移植 sd卡版本 芯片型号 ZYNQ UltraScale+ XAZU2EG ,对应厂家提供的demo板为 zu102或zu104 1.1 创建

写给自己的笔记 483

Live555 RTSP服务端H264推流笔记(平台RK3399Pro+mpp)

Live555 RTSP服务端H264推流笔记(平台RK3399Pro+mpp)

目前从事C/C++开发,对Linux驱动开发、Qt应用开发、ROS开发方向感兴趣。 1万+

YOLOv11改进前必看 - YAML模型配置文件详细解读(再也不用担心通道数不匹配) 附网络结构图

YOLOv11的模型配置文件在中,里面包含以及,本文以目标检测模型文件为例(其他文件完全一致),详细介绍一下YOLOv11模型文件中各参数的含义。

Limiiiing的博客 5314

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

使用live555 建立rtsp 服务

1、 live555live555除了可以建立客户端,当然也可以做一个服务端了,快速做一个服务端就把live555的lib文件编译好,放进来进行。以h264 为例子,实际上,无论是读取文件也好,还是web摄像头编码也好,需要的其实就是sps,pps信息,就是这么简单。1.1 读取文件如果是读取文件,读的过程中要把sps,pps记录下来,如果是加密流,分为两种情况,一是解密,二是直接传输。1.2 摄像头编码发送。

liveweb视频汇聚平台 1253

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

live555推送实时视频流

live555推送实时视频流 live555推送实时视频流 live555推送实时视频流

weixin_55163060的博客 3743

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

系统学习live555

live555,音视频同步,RTSP,h.264,h.265

qq_45865950的博客 1891

live555简单实现rtsp服务端推流

live555实现rtsp服务端进行aac+h264推流

大爱de博客 1907

Live555学习

Win7 下用VS2013编译Live555 注意:按照上面的方法安装完成,用于测试的文件名必须是下图的后缀名: 即如果是H264格式的文件,其后缀名必须为.264,否则用vlc播放器作为客户端时,无法播放出来,我用一个格式为H264的文件做测试,但是后缀名写成了.h264,然后测试时,vcl播放器死活都播放不出来,当时找了好久。其它类型的同理,Live555貌似不支持mp4、flv格式。 Live555学习笔记(零)—— live555概述 Live555学习之(一)-------Li

danshiming的博客 1377
上一篇: 深度学习从入门到实际项目资料汇总
下一篇: YOLOX在启智AI GPU/CPU平台部署笔记
智驾
博客等级 码龄11年 6671粉丝 574原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智驾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值