首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ffmpeg将rtsp流式传输到rtmp时出现数据包丢失错误

使用ffmpeg将rtsp流式传输到rtmp时出现数据包丢失错误
EN

Stack Overflow用户
提问于 2019-04-11 12:10:56
回答 2查看 2.9K关注 0票数 3

我正在使用ffmpeg做RTSP到RTMP流,输入是一个描述一个视频流和一个音频流的sdp文件,当我使用ffplay测试RTSP时,它工作得很好

代码语言:javascript
复制
ffplay -protocol_whitelist "file,udp,rtp" -strict -2 -i media.sdp

但是当我切换到ffmpeg进行流式传输时,我得到了许多丢失数据包的错误。

代码语言:javascript
复制
ffmpeg -protocol_whitelist "file,udp,rtp" -strict -2  -i media.sdp   -c copy -f flv "rtmp://liveaddress"

错误日志:

代码语言:javascript
复制
[sdp @ 000001f1f4cea400] max delay reached. need to consume packet
[sdp @ 000001f1f4cea400] RTP: missed 321 packets
[sdp @ 000001f1f4cea400] max delay reached. need to consume 
[sdp @ 000001f1f4cea400] RTP: missed 14 packets
[sdp @ 000001f1f4cea400] max delay reached. need to consume packet
[sdp @ 000001f1f4cea400] RTP: missed 7 packets

sdp文件:

代码语言:javascript
复制
SDP:
v=0
o=- 0 0 IN IP4 127.0.0.1
s=No Name
t=0 0
a=tool:libavformat 58.12.100
m=video 5555 RTP/AVP 96
c=IN IP4 127.0.0.1
b=AS:2000
a=rtpmap:96 H264/90000
a=fmtp:96 packetization-mode=1; sprop-parameter-sets=Z0LAINoBQBbsBagICAoAAAfSAAOpgR4wZUA=,aM4fIA==; profile-level-id=42c020
m=audio 6666 RTP/AVP 96
c=IN IP4 127.0.0.1
b=AS:125
a=rtpmap:96 MPEG4-GENERIC/44100/2
a=fmtp:96 profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3; config=1210
EN

回答 2

Stack Overflow用户

发布于 2019-04-27 18:52:24

经过对网络的研究,我找到了一个解决方案:添加一个-buffer_size命令arg到ffmpeg中,因为我从RTSP服务器下载的H264视频的比特率可能是可变的。

票数 2
EN

Stack Overflow用户

发布于 2021-04-29 14:47:36

我也遇到过类似的问题,用-rtsp_transport tcp -protocol_whiteliste rtp,file,udp,tcp解决了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55624569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档