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

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

bash 复制代码
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命令如下:

bash 复制代码
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流:

相关推荐
码云骑士8 分钟前
120-视频理解-大模型视频分析-抽帧-自动字幕摘要-高光片段
python·音视频
heqingchun1612 分钟前
RK3568 交叉编译与部署:MPP + FFmpeg 硬解全流程
ffmpeg·视频编解码
镭封22 分钟前
2026免费AI配音5款实测:哪些真正无水印可导出音频
人工智能·音视频·媒体
H03111698531 分钟前
会议视频转文字工具实测:六款主流方案功能与适用场景解析
音视频
非凡ghost37 分钟前
用 Kotlin 和 Jetpack Compose 重写的安卓视频播放器,原生体验有多流畅?
android·java·kotlin·音视频·软件需求
阿童木写作14 小时前
跨境电商翻译利器,批量图片视频翻译+智能抠图工具
python·音视频
auto_go16 小时前
大模型实战指南(10)——多模态实战:让模型“看懂”图片和视频
大数据·人工智能·音视频
stuartevil17 小时前
AI 小说漫改视频零基础入门:口型同步和字幕匹配怎么调?
人工智能·音视频·语音识别
方银的技术分享18 小时前
五、AI训练师:数据标注-视频标注
人工智能·音视频
shxjnpl19 小时前
涉密企业使用AI会议助手时,需要注意哪些问题?
人工智能·音视频·语音识别·智能硬件