黑龙江省和城乡建设厅网站,免费网站空间申请,服务器租用一天,nginx rewrite wordpress前言 由于wireshark并不能解析amr-wb、evs数据#xff0c;所以也就没办法播放响应的音频。在遇到问题时#xff0c;想还原抓包的数据是否正常就很难受。为了解决这个问题#xff0c;我看了RFC4867#xff0c;想着自己写一个解包小工具#xff0c;最后彻底放弃。。感觉太复…前言 由于wireshark并不能解析amr-wb、evs数据所以也就没办法播放响应的音频。在遇到问题时想还原抓包的数据是否正常就很难受。为了解决这个问题我看了RFC4867想着自己写一个解包小工具最后彻底放弃。。感觉太复杂了。还好一向面向github编程的我在上面找到了以为大佬写的转换工具。本文章的操作亲自验证可用。 软件介绍
这是一个python写的脚本github地址为 AMR-WB_extractor 这个不光可以转换amrwb的格式而且还可以转换amrnb的格式很吊 下面讲一下如何使用这个脚本 使用过程
首先需要安装两个库,现在软件采用python3需要安装pip3
apt-get install python3-pippip3 install --index https://pypi.mirrors.ustc.edu.cn/simple/ bitarray
pip3 install --index https://pypi.mirrors.ustc.edu.cn/simple/ scapy
然后开始git clone
git clone https://github.com/Spinlogic/AMR-WB_extractor.git
cd AMR-WB_extractor
git clone https://github.com/wanglihe/3gpp-evs.git直接运行
#amr-wb/amr codec
python3 .\pcap_parser.py -i .\amrwb_rtp.pcap -o out.amrwb -c amr-wb#evs codec
python3 .\pcap_parser.py -i .\evs_rtp.pcap -o out.evs -c evs#命令参数
python3 .\pcap_parser.py
-i输入文件位置这个是需要过滤后的pcap文件这个pcap文件只能包含所有的amr-wb rtp数据包不能有别的数据这个地方可以通过过滤特定ssrc后使用wireshark导出特定分组获得
-o输出的文件路径和名字
-c指定的编码格式此处可以不指定。脚本就会自动获取也可以指定amr 或者 amr-wb evs 播放
AMR: amr的转换包可以用mpv和ffplay都可以愉快的播放 ffplay.exe .\out.amrwb
AMR的声音就可以听到了 EVS: evs转换的包无法直接播放需要用EVS_dec转换为raw数据后使用audacity进行导入raw数据播放配置如下 Encoding: Signed 16-bit PCM
Byte order: Little endian
Channels: 1 Channel (Mono)
Start offset: 0 bytes
Sampling rate: 48000EVS的声音就可以听到了 如果找不到相关的连接可以访问GitHub - manlong2004/AMR-WB_EVS_extractor: 3GPP amr evs pcap package extractor