wireshark - 使用 Wireshark 解码 Opus-48

标签 wireshark opus

我想使用 Opus-48 编解码器捕获和解码 VoIP 对话。我正在使用 Wireshark 来捕获数据包。网上有免费的解码器吗?? Wireshark 不保存双向对话,因为它适用于 G-729 等其他编码方案。

最佳答案

在此处使用 python 脚本解码作品 RTP pcap https://github.com/kamanashisroy/opus_stream_tool

一旦我们有了 pcap,我们就可以在流中选择一个 UDP 数据包,并通过 udp.srcport/udp.dstport 过滤掉它rtp.ssrc.

现在,我们可以将 pcap 文件转换为十六进制转储。

tshark -x -r in.pcap -Y "udp.srcport == myport" | cut -d " " -f 1-20 > tmp.txt

终于可以使用hex_to_opus工具来录制ogg编码的opus文件了。

hex_to_opus.py -x tmp.txt --recordfile out.opus --rtpoffset 42

通常如果是 IPv4 则 rtp-offset 是 42。请从数据包的 wireshark 描述中找到 udp 负载的开始。

关于wireshark - 使用 Wireshark 解码 Opus-48,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23683317/

相关文章:

sql-server - 如何使用 Wireshark 过滤应用程序和数据库服务器之间的 SQL Server 流量?

c - 1. 将 N 秒捕获的数据包保存到一个 pcap 文件中 & 2. 从 Wireshark 中的程序打印输出

android - 如何从蓝牙数据包数据中提取数据?

audio - 在 Ogg/Opus 上寻找

audio - 从.opus转换为.wav

javascript - 如何从 JavaScript 使用 Opus Codec

c# - UDP原始数据在应用程序和wireshark中有所不同

Wireshark:禁用 "Do you want to save..."对话框?

python : PortAudio + Opus encoding/decoding

c++ - Opus encode & decode 没有错误但不是相同的值