QQ语音消息转换成WAV格式

原创文|Space9
QQ语音消息转换成WAV格式

问题背景

QQ已经成为我们生活中的一部分,在QQ上留下了我们许多美好的回忆,一段动听的音乐,或是一句甜蜜的话语,都能触动我们的内心。腾讯使用的语音文件是经过特殊编码(Silk Version 3)处理的,很多人都尝试将这些记录下来,但是都无功而返。那么,今天我来教大家如何将它们记录下来~~~

解决步骤

  • 首先在电脑的QQ文件夹中(Audio)找到语音文件,可以按照日期排序找到需要转换的语音消息文件,通常文件名为乱码组合,后缀名为.amr
    QQ语音消息转换成WAV格式
  • 下载QQ语音消息解码器,然后将语音消息文件重命名为in.slk,将其移动到解码器目录
    QQ语音消息转换成WAV格式
  • 使用Notepad++编辑语音消息文件,将最开始的STX删除,使#!SILK_V3(SILK文件头)作为开头,然后保存文件
    QQ语音消息转换成WAV格式
  • 双击运行run.bat,等待片刻,就会出现请按任意键继续
    QQ语音消息转换成WAV格式
  • 关闭窗口,紧接着我们就可以发现,在本目录下生成了一个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

本文仅为个人学习使用,不得用于任何商业用途,否则后果自负!如侵犯到您的权益,请及时通知我,我会及时处理。