QQ语音消息转换成WAV格式
原创文|Space9
问题背景
QQ已经成为我们生活中的一部分,在QQ上留下了我们许多美好的回忆,一段动听的音乐,或是一句甜蜜的话语,都能触动我们的内心。腾讯使用的语音文件是经过特殊编码(Silk Version 3)处理的,很多人都尝试将这些记录下来,但是都无功而返。那么,今天我来教大家如何将它们记录下来~~~
解决步骤
- 首先在电脑的QQ文件夹中(Audio)找到语音文件,可以按照日期排序找到需要转换的语音消息文件,通常文件名为乱码组合,后缀名为.amr
- 下载QQ语音消息解码器,然后将语音消息文件重命名为in.slk,将其移动到解码器目录
- 使用Notepad++编辑语音消息文件,将最开始的STX删除,使#!SILK_V3(SILK文件头)作为开头,然后保存文件
- 双击运行run.bat,等待片刻,就会出现请按任意键继续
- 关闭窗口,紧接着我们就可以发现,在本目录下生成了一个WAV格式的语音消息文件
经典解析
喜欢钻研的人可能很好奇等待过程中到底做了什么,其实run.bat是一个批处理文件,在你双击运行的时候会执行里面写的命令,下面我就对里面的命令一一进行讲解
@echo off
表示执行了这条命令后关闭所有命令(包括本身这条命令)的回显。cd /d %~dp0
表示进入当前目录执行命令decoder.exe “in.slk” “out.pcm”
表示利用解码器将slk格式文件转换成pcm格式文件(存储音频最原始数据的文件)ffmpeg.exe -y -f s16le -ar 24000 -ac 1 -i “out.pcm” “out.wav”
表示利用转码器将pcm格式文件转换成wav格式文件del “out.pcm”
表示删除生成的临时文件pause
表示暂停并输出请按任意键继续&&
表示只有在符号 && 前面的命令成功时,才会运行该符号后面的命令。
源码交流
QQ语音消息解码器
链接: https://pan.baidu.com/s/1pMZZfjt 密码: ctxp
本文仅为个人学习使用,不得用于任何商业用途,否则后果自负!如侵犯到您的权益,请及时通知我,我会及时处理。