自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 Wireshark Lua: 一个从RTP抓包里导出H.264 Payload,变成264裸码流文件(xxx.264)的Wireshark插件

抓取一个包含H.264 Payload RTP包的SIP会话或RTSP会话后,用Wireshark的Play功能只能播放声音,不能播放视频。把RTP payload直接导出成文件后也是不能直接播放的,因为H.264 over RTP封包是符合RFC3984规范的,必须按照该规范把H.264数据取出来后,组成NALU,放到avi/mp4或裸码流文件等容器里后才能播放。     本人写了一个wir

2012-03-15 23:43:47 29100 23

原创 wirshark lua: 横跨多包解析方法,混搭tap与postdissector解析器(RTP timestamp差值为例)

在分析抓包时,有时需要横跨多个包计算,比如计算所有RTP包的timestamp与之前RTP包的timestamp的差值,这样可以一目了然看出timestamp是否有异常波动。理想方式是把这个计算出来的差值直接放到RTP信息后面,但wireshark lua目前没有提供可以在某协议dissector解析完后调用自己lua写的dissector的方法,除了http body可借助一些特殊的tabl

2012-03-04 01:01:19 5740

原创 RTSP回放时如何通过RTP的timestamp计算npt时间

客户端通过RTSP的PLAY方法开始播放、定位播放、快速/慢速播放(Scale)某非实时视频时,客户端会通过Range头字段指定npt时间,即让服务器开始从npt指定时刻开始播放视频(npt即播放位置离文件开始部分的相对时间)。播放开始后,下一次发送PLAY命令前,客户端需要根据服务器发来的RTP timestamp计算当前收到的帧的npt时间。客户端与服务器同步npt时间客户端可以在

2012-03-03 23:26:43 28119 5

原创 RTP timestamp与帧率及时钟频率的关系

RTP timestamp是用时钟频率(clock rate)计算而来表示时间的。RTP timestamp表示每帧的时间,由于一个帧(如I帧)可能被分成多个RTP包,所以多个相同帧的RTP timestamp相等。(可以通过每帧最后一个RTP的marker标志区别帧,但最可靠的方法是查看相同RTP timestamp包为同一帧。)      两帧之间RTP timestamp的增量

2012-03-03 22:16:38 26766

原创 实用命令:利用openssl和xxd命令把16进制字符串转换为base64字符串或把base64转成16进制表示

把16进制字符串转换为base64字符串:$ echo 6742c016888b50580934200002bf20002bf20040 | xxd -r -ps | openssl base64Z0LAFoiLUFgJNCAAAr8gACvyAEA=把base64字符串转换为16进制字符串:$ echo Z0LAFoiLUFgJNCAAAr8gACvyAEA= | opens

2012-03-03 21:28:00 12415 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除