基于FFmpeg进行rtsp推流及拉流(详细教程)

news2024/11/16 19:30:31

目录

1.1 Windows系统

1.2 Ubuntu 和 Debian 系统

1.3 CentOS 和 Fedora 系统

1.4 macOS系统

2. 安装rtsp-simple-server

3. FFmpeg推流

3.1 UDP推流

3.2 TCP推流

3.3 循环推流

4 拉流

4.1 ffplay/VLC拉流显示

4.2 FFmpeg拉流保存成视频


1. 安装FFmpeg

FFmpeg 是一个免费、开源的跨平台视频和音频流处理工具。

首先,打开终端(在 Windows 中是命令提示符,在 Windows 搜索栏中输入“cmd”,然后打开命令提示符),然后运行以下命令以检查您的系统上是否已安装 FFmpeg:

ffmpeg -version

如果显示安装的版本号,表明 FFmpeg 已安装。否则,需要进行安装。

1.1 Windows系统

转到 FFmpeg 官方网站,然后下载最新版本的 Windows 安装包。

下载完成后,双击安装包文件,然后按照提示操作安装 FFmpeg。

1.2 Ubuntu 和 Debian 系统

对于 Ubuntu 和 Debian 系统,可以使用 apt 包管理器来安装 FFmpeg:

sudo apt update
sudo apt install ffmpeg

1.3 CentOS 和 Fedora 系统

对于 CentOS 和 Fedora 系统,可以使用 yum 来安装 FFmpeg:

sudo yum install ffmpeg

1.4 macOS系统

对于 macOS系统,可以使用 Homebrew 来安装 FFmpeg:

brew install ffmpeg

在安装完成后,可以再次运行

ffmpeg -version 

命令来检查是否安装成功。如果安装成功,将显示安装的版本号等信息。

2. 安装rtsp-simple-server

安装rtsp服务器,可以去这个链接

rtsp-simple-server

下载对应编译好的文件直接运行就好。

3. FFmpeg推流

注意:在推流之前先运行rtsp-simple-server

3.1 UDP推流

ffmpeg -re -i input.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

3.2 TCP推流

ffmpeg -re -i input.mp4 -c copy -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/stream

3.3 循环推流

ffmpeg -re -stream_loop -1 -i input.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

其中:

-re 为以流的方式读取;

-stream_loop 为循环读取视频源的次数,-1为无限循环;

-i 为输入的文件;

-f 为格式化输出到哪里;

4 拉流

4.1 ffplay/VLC拉流显示

ffplay rtsp://127.0.0.1:8554/stream

如需用VLC拉流,需安装VLC播放器,下载网站为:VLC 官方网站

内有各个系统的安装包,选择自己的系统下载安装即可。

安装好后,打开网络串流,输入对应的地址即可拉流显示。

4.2 FFmpeg拉流保存成视频

ffmpeg -stimeout 30000000 -i rtsp://127.0.0.1:8554/stream -c copy output.mp4

-stimeout 30000000 为等待RTSP 流连接的时间,单位为us微秒,30000000 为等待 30 秒,如果连接失败则退出。特别注意该字段要放在rtsp地址之前,否者无效。

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

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

相关文章

tftp服务/nfs服务/二进制工具集/uboot基础

一、什么是系统移植 1)系统移植就是给开发板搭建一个linux操作系统 2)从官方获取源码,进行配置和编译,生成板子需要的镜像文件 二、为什么系统移植 1)为后面学习驱动开发课程打基础 2)驱动开发工程师必…

入行4年,跳槽2次,在软件测试这一行我已经悟了!

近年来,软件测试行业如火如荼。互联网及许多传统公司对于软件测试人员的需求缺口逐年增大。然而,20年的疫情导致大规模裁员,让人觉得行业寒冬已经到来。软件测试人员的职业规划值得我们深思。 大家对软件测试行业比较看好,只是因…

【云服务器 ECS 实战】专有网络 VPC、弹性网卡的概述与配置

一、ECS 专有网络 VPC1. 传统经典网络与专有网络 VPC 对比2. 建立自己的专有网络 VPC二、弹性网卡1. 弹性网卡的概念与优势2. 弹性网卡的配置一、ECS 专有网络 VPC 阿里云在早期使用的是一种传统的网络模式,将所有的 ECS 云服务直接建立在传统网络层之上&#xff0…

【有营养的算法笔记】归并排序

👑作者主页:进击的安度因 🏠学习社区:进击的安度因(个人社区) 📖专栏链接:有营养的算法笔记 文章目录一、思路二、模板讲解三、模板测试四、加练 —— 逆序对的数量今天讲解的内容是…

[附源码]Python计算机毕业设计SSM加油站管理信息系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【论文笔记】InverseForm: A Loss Function for Structured Boundary-Aware Segmentation

论文 标题:InverseForm: A Loss Function for Structured Boundary-Aware Segmentation 收录于:CVPR 2021 论文:[2104.02745] InverseForm: A Loss Function for Structured Boundary-Aware Segmentation (arxiv.org) 代码:Git…

大数据都应用在哪些领域?

大数据被应用较多的领域有哪些?疫情期间大数据技术对于疫情的防控发挥了巨大的作用,抗疫期间多家互联网企业纷纷加强大数据在疫情防控中的应用。小到社区大到部委相关部门都将大数据作为不可或缺的防疫工具,生活中很多方面涉及到大数据由此可…

Scala014--Scala中的函数

一,函数的定义和声明 对于其他计算机语言来说,如Java,python,函数和方法是一样的,但是对于Scala来说,函数和方法并不是同一个概念,方法是类或者是对象的成员,而函数是一个对象。但是…

澳亚集团通过聆讯:毛利率波动,预计利润将下滑,陈荣南为董事长

撰稿|汤汤 来源|贝多财经 近日,港交所披露的信息显示,澳亚集团有限公司(下称“澳亚集团”)通过港交所聆讯,并披露了聆讯后资料集(即招股书),中金公司和星展银行(DBS&am…

如何从 Power BI 示例中获取数据以供练习

如果您是 Power BI 初学者, Microsoft Power BI 教程中提供的示例是入门的好地方。 在这篇文章中,我将按照步骤在 excel 中查看示例数据,以便您可以将这些数据用于练习目的。 下载 Excel 文件 首先,在浏览器中打开人力资源数据。文包含有关如何使用数据构建 Power BI 报…

不是我穷,是他真的很好用!

今天猫猫为您推荐一款良心vx小程序——喵盐配音!利用小程序的特性,无需安装,即走即用。 这个配音软件超多功能,太强大了!操作简单,输入文本,一键配音,小白也会用超多声音主播&#…

12月8日绿健简报,星期四,农历十一月十五

12月8日绿健简报,星期四,农历十一月十五1. 中国铁路:即日起购票乘车及进出站停止查验核酸和健康码;联防联控机制:不再对跨地区流动人员查验健康码,无症状和轻型病例一般采取居家隔离。2. 包头:交…

torchnet 简单使用文档

torchnet 是用于 torch 的代码复用和模块化编程的框架: 主要包含4个部分: Dataset:各种不同方式处理数据。Engine:各种机器学习算法Meter:性能度量指标。 Log:Log:Log: 模块详细分为如下部分:D…

FLStudio2023电脑版安装下载及fl21版本新功能介绍

FL Studio水果简称FL,全称:Fruity Loops Studio,国人习惯叫它"水果"。软件现有版本是 FL Studio 21,已全面升级支持简体中文语言界面 。FL Studio 能让你的计算机就像是全功能的录音室一样,完成编曲、剪辑、…

YourKit Profiler for .NET功能和内存一体探查器

YourKit Profiler for .NET功能和内存一体探查器 Windows和Linux的简单易用内存和性能.NET探查器。 功能和内存一体的.NET探查器 远程和本地评测各种.NET Center和.NET设计应用程序、服务器和Windows服务。 探索测试、开发和制造环境中的性能问题。 与Visual Studio和JetBrains…

一键式开启:IDaaS 日志接入 SLS日志审计发布

背景 什么是IDaaS 应用身份服务IDaaS(Identity as a Service)是阿里云原生身份管理系统,可以统一管理各应用中分散的账号,并集中分配应用访问控制权限,降低低效、重复的账号访问配置和运维工作。IDaaS 旗下的EIAM(Enterprise IA…

java计算机毕业设计ssm乡村疫情防控管理系统37804(附源码、数据库)

java计算机毕业设计ssm乡村疫情防控管理系统37804(附源码、数据库) 项目运行 环境配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#…

时间都去哪了?

在很长一段时间我并不知道怎么去平衡速率和质量之间的关系,我虽然看过不少书和文章告诉我只有保证质量才能保证速率,但我还没有见过反例,我没办法很好地说服别人,我只能看着他们义无反顾的冲向进度,然后抱怨时间不够。…

大数据hadoop_HDFS的shell操作(2)

文章目录1. 基本语法2. hadoop hdfs命令指南3. 常用命令操作指南3.1 准备工作3.2 上传3.3 下载3.4 基本操作1. 基本语法 hadoop fs 具体的命令 或者 hdfs dfs 具体的命令一般是使用hadoop fs 具体的命令,因为是简单好记,容易理解。 2. hadoop hdfs命令…

TypeScript 开发环境搭建

TypeScript是JavaScript类型的超集,它可以编译成纯JavaScript代码,TypeScript可以在任何浏览器,任何计算机和任何操作系统上运行。 目录 依赖环境 搭建步骤 1.新建一个文件夹 2.初始化一个NPM项目 3.安装typescript 包 4.新建一个tscon…