H264 RTP数据包转储和生成quicktime文件

时间:2010-03-29 16:04:37

标签: video quicktime h.264 rtp

我有使用libpcap捕获的流式H264视频的RTP数据包转储。我想知道是否有人知道可以从中生成可播放视频文件的工具。

由于

1 个答案:

答案 0 :(得分:1)

尝试将RTP文件流导出到转储文件中(在Wireshark中,右键单击RTP数据包→按照UDP流→另存为),然后通过gst-launch发送文件以进行解复用。你需要稍微解决这个问题,但这应该是正确的想法:

$ gst-launch-0.10 filesrc location=dump.rtp ! rtpmp2tdepay ! filesink location=dump.ts

以上假设RTP是MPEG TS流。如果它是别的东西(即原始的Vorbis,G.729,PCM,MP3或其他东西),那么你需要使用不同的'depayloader'。您可以使用gst-inspect来查找:

$ gst-inspect-0.10 | egrep 'rtp.*depay'
quicktime:  rtpxqtdepay: RTP packet depayloader
dtmf:  rtpdtmfdepay: RTP DTMF packet depayloader
rtp:  rtpdepay: Dummy RTP session manager
rtp:  rtpac3depay: RTP AC3 depayloader
rtp:  rtpbvdepay: RTP BroadcomVoice depayloader
rtp:  rtpceltdepay: RTP CELT depayloader
[...]

默认情况下,GStreamer(包括gst-launchgst-inspect工具)应附带所有现代Linux发行版。如果没有,它应该相当容易安装。显然我的例子非常通用,所以你需要使用我的建议来自己找到确切的答案。希望我已经给你足够的帮助了。 :)