9crk

9crk

1个粉丝

34

问答

0

专栏

6

资料

9crk  发布于  2015-05-21 15:16:22
采纳率 0%
34个问答
13023

wireshark分析RTP数据包

   
本帖最后由 9crk 于 2015-5-21 15:24 编辑

使用ortp进行RTP多播,抓取RTP数据包分析:
本测试程序由1.123向1.118的8002/8004/8006端口发送3个码流
1.打开wireshark抓包

2.右击UDP数据包,选择decode as

3.选择RTP协议

4.可以看到RTP的payloadType为96  H264数据。

5.SSRC即为每一个RTP流的唯一identifier,可见每个端口的流都不同

6.可以点击协议中的每一行,来高亮特定字节。

7.由于RTP包过大,需要拆分发送,我使用的方法是先发完第一个端口,再发第二个端口、第三个端口。



好吧。。其实这是个问题帖。。。
测试现象是只有一个可以播放。


我修改了一下,将大包拆分后,先将第一部分轮流发送给每个端口,再将第二部分轮流发送……结果就是:所有的都播放不聊了。

求解。。

c=IN IP4 192.168.1.118
m=video 8004 RTP/AVP 96
a=rtpmap:96 H264/90000
a=sprop-parameter-sets=Z01AM5JUDAS0IAAAAwBAAAAM0eMGVA==,aO48gA==
这是我的sdp文件,抄来的,三个VLC只修改了端口号。
我来回答
回答5个
时间排序
认可量排序

9crk

1个粉丝

34

问答

0

专栏

6

资料

9crk 2015-05-21 15:17:59
认可0
为什么每个端口接收到的数据都是一模一样,只是identifier不一样而已,怎么就只有一个解码正常?

9crk

1个粉丝

34

问答

0

专栏

6

资料

9crk 2015-05-22 13:10:45
认可0
本帖最后由 9crk 于 2015-5-22 13:13 编辑

继续追踪,发现数据还是有点问题的:

假设一个包分为3份,第一份的头是0x5c81 第二份 0x5c01 第三份 0x5c41   这是8002端口正常播放的效果。

但8004和8006的第一个字节都变成了0x1c



所以,问题在于:当有多个session的数据待发时,第一个session的NALU标记是0x5c,后面的都会是0x1c。。。。why ?

9crk

1个粉丝

34

问答

0

专栏

6

资料

9crk 2015-05-26 11:50:24
认可0
:lol好吧。。是我粗心拷贝代码拷错了,已解决。按照mrtpsend的例程是没问题的。

lzan

0个粉丝

0

问答

0

专栏

0

资料

lzan 2016-02-19 11:38:44
认可0
不懂,学习了:)

ryysoft

0个粉丝

0

问答

0

专栏

0

资料

ryysoft 2016-05-15 20:03:59
认可0
锐英源擅长wireshark二次开发,希望和楼主交个朋友
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区