wireshark 导出rtpdump 并使用 ffmpeg播放

本文介绍了如何通过Wireshark导出RTPdump文件,并利用ffmpeg和rtptools进行播放和处理。首先,展示了使用ffmpeg从RTP流中创建并播放SDP文件的命令。接着,说明了在Wireshark中导出RTP流的步骤。然后,提到了rtptools的使用,特别是rtpplay工具来播放rtpdump文件。最后,提到了H264SPS解析的相关资源,并指出如果需要使用ffmpeg拉流可能需要编写代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

wireshark 导出rtpdump 并使用 ffmpeg播放

1,ffmpeg本地rtp播放

ffmpeg -re -i rayna.h264 -vcodec copy -f rtp rtp://30.40.37.23:3000>test.sdp
ffplay -i test.sdp -protocol_whitelist file,udp,rtp

生成 test.sdp

SDP:
v=0

o=- 0 0 IN IP4 127.0.0.1

s=Media Server

c=IN IP4 127.0.0.1

t=0 0

a=tool:libavformat 56.40.101

m=video 3000 RTP/AVP 96

a=rtpmap:96 H264/90000

2,在wireshark中导出rtpdump文件

见菜单:  电话->SIP->SIP流 选择导出

3. 使用 rtptools

源码: https://github.com/irtlab/rtptools.git

ffplay -i test.sdp -protocol_whitelist file,udp,rtp

./rtpplay -T -f bbb2.rtpdump 127.0.0.1/3000

关联:

H264 SPS解析参考:

https://gitee.com/leixiaohua1020/H264_Analysis

bs.h
h264_stream.cpp

void read_seq_parameter_set_rbsp(sps_t* sps, bs_t* b);  //解析sps代码,需要修改点:  int ScalingList4x4[6]; 去掉*,不然 seq_scaling_list_present_flag==1 时解析有问题

4.如果需要使用ffmpeg拉流,貌似命令行弄不了,就使用代码了

fmt_ctx = avformat_alloc_context();
fmt_ctx->protocol_whitelist = "file,udp,rtp";
ret = avformat_open_input(&fmt_ctx, url_in, 0, &opts);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值