音视频入门基础:RTP专题(2)——使用FFmpeg命令生成RTP流

ops/2025/1/13 1:47:30/

通过FFmpeg命令可以将一个媒体文件转推RTP:

ffmpeg -re -stream_loop -1 -i input.mp4 -c:v copy -an -f rtp rtp://192.168.0.102:5400

但是通过ffplay尝试播放上述产生的RTP流时会报错:“Unable to receive RTP payload type 96 without an SDP file describing it”。这是由播放RTP视频时未提供对应的SDP文件导致。SDP文件包含有关媒体流的详细信息(例如编解码器类型和参数、传输协议和端口等),没有SDP文件,ffplay等播放器就无法正确地解析RTP数据包并进行播放:

所以修改转推RTP的FFmpeg命令如下:

ffmpeg -re -stream_loop -1 -i input.mp4 -vcodec copy -an -f rtp rtp://192.168.0.102:6005 -acodec copy -vn -sdp_file XXX.sdp -f rtp rtp://192.168.0.102:7005

其中:

-re参数:以原始帧速率读取输入。即按时间戳读取文件,以本地帧频读数据。该参数可以避免需要被转推的本地媒体文件一下子就被读完了。

-stream_loop参数:循环次数。该参数可以使得需要被转推的本地媒体文件被读取完后可以循环读取。值为-1表示无限循环。

执行上述命令后,ffmpeg所在目录下会生成SDP文件:

通过命令:ffmpeg -protocol_whitelist "file,rtp,udp" -i XXX.sdp 可以查看生成的RTP流的信息:

通过命令:ffplay -protocol_whitelist "file,rtp,udp" -i XXX.sdp 可以播放生成的RTP流:


http://www.ppmy.cn/ops/149613.html

相关文章

搭建docker私有化仓库Harbor

Docker私有仓库概述 Docker私有仓库介绍 Docker私有仓库是个人、组织或企业内部用于存储和管理Docker镜像的存储库。Docker默认会有一个公共的仓库Docker Hub,而与Docker Hub不同,私有仓库是受限访问的,只有授权用户才能够上传、下载和管理其中的镜像。这种私有仓库可以部…

C语言期末回忆

(一)考试题型 十五道判断题,十道选择题,三道函数,四道编程。 (二)函数题回忆: 1.计算一个数字中出现0的次数 错误点在于分类讨论,这个数字是大于0,等于0&…

Python Selenium 库学习指南

Python Selenium 库学习指南 目录 Selenium 基础介绍 Selenium 是什么安装 SeleniumSelenium 的工作原理 Selenium 基本用法 启动浏览器定位元素常见操作:点击、输入、滚动 高级用法 切换窗口与标签页模拟鼠标操作与键盘输入动态加载的网页处理 等待机制 显式等待…

HIVE常见面试题

1. 简述hive Hive‌是一个构建在Hadoop之上的数据仓库工具,主要用于处理和查询存储在HDFS上的大规模数据。Hive通过将结构化的数据文件映射成表,并提供类SQL的查询功能,使得用户可以通过编写SQL语句来进行数据分析,而不需要编写复…

分布式光纤传感器行业:市场潜力巨大,技术革新引领未来

引言:市场增长背后的技术革命 分布式光纤传感器,以其独特的传感机制和高灵敏度的监测能力,正迅速成为众多行业不可或缺的监测工具。随着智慧城市、物联网(IoT)以及能源安全需求的日益增长,分布式光纤传感器…

C语言二级考试

你必须知道的 二级考试不是编写程序,或者说不只是编程的考核,它还会考核计算机C语言相关语言还有内涵等基础知识,比较全面综合(说人话,要看最新考纲具备一定的基础知识) 考试时间 120 分钟 分值 100 分&…

Redis:数据类型

1. 字符串(String) 简介 概念:这是最简单的数据类型,可以存储字符串、整数或浮点数。特点:支持原子操作,如递增和递减数值。 示例 # 设置一个键值对 SET mykey "Hello, Redis!"# 获取该键的值…

国产3D CAD将逐步取代国外软件

在工业软件的关键领域,计算机辅助设计(CAD)软件对于制造业的重要性不言而喻。近年来,国产 CAD 的发展态势迅猛,展现出巨大的潜力与机遇,正逐步改变着 CAD 市场长期由国外软件主导的格局。 国产CAD发展现状 …