当前位置: 首页 > 工具软件 > RTP Tools > 使用案例 >

wireshark 导出rtpdump 并使用 ffmpeg播放

曹泉
2023-12-01

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);

 

 

 类似资料: