kn007的个人博客
♥ You are here: > > > Windows下批量转换Silk v3音频文件为MP3格式

Windows下批量转换Silk v3音频文件为MP3格式

by | 402 Comments

0ec17619ec44feb52e238b54c5718796前有《解码转换QQ微信的SILK v3编码音频为MP3或其他格式》和《[进阶]批量解码转换SILK V3编码音频为其他格式》这两篇文章,大概讲述了怎么批量转换Silk v3音频为其他格式,但都是Linux下可用的。

有几个陌生人问如何在Windows使用和转换,还有发邮件给我转换的。有时候不帮忙,又显得有点假清高。想想还是弄个Windows可用的转换程序,直接将Silk v3编码的音频输出为MP3。

正好也很久没用过Autoit写东西了,几个原因凑一起,就弄了个:Github传送门

求测试、求Star。Github地址拉到下面有中文说明。

因为是Autoit写的,或许有一些垃圾杀毒软件会报毒。

文件: silk2mp3.zip
大小: 841764 字节
MD5: 454CFC4A9F9A76FF694553B0B843E3E1
SHA1: 4CFFC132B189075B2A2FE1B895EB318D75B0FCBC
CRC32: E866599D

文件: silk2mp3-expansion.zip
大小: 14900840 字节
MD5: DFE2776EA70FF7D7B0268E5C8CF365D1
SHA1: CDD7FF73B0235E7900B63B174C176F857845FD27
CRC32: 4E1BC1CB

文件: silk2mp3-full.zip
大小: 15420778 字节
MD5: 4A4A24E2DC0067BDF62CDD7A3FDD6C4A
SHA1: BBE6EEC24D2C44C8B18210B1EA63B6D036099158
CRC32: C0160A5C

更新历史:
2017-09-01发布1.0.2.5版本:
优化代码。

2017-08-22发布1.0.2.4版本:
修复一些Bug。

2017-08-22发布1.0.2.3版本:
1.修复一些Bug。
2.去掉拖拽功能。

2017-08-19发布1.0.2.2版本:
修复一些Bug。

2017-06-28发布1.0.2.1版本:
支持拖拽文件进列表框替换待转换文件列表。

2017-05-28发布1.0.2.0版本:
1.“尝试强制AMR编码解码文件”变为可选项。
2.支持微信小程序语音转换(包括编码、解码)。
3.修复一些Bug。

2017-02-19发布1.0.1.2版本:
强制输出固定频率和最大化比特率(主要针对MP3)。

2016-11-03发布1.0.1.1版本:
1. 添加编码输出格式自定义。
2. 修复一些Bug。

2016-09-30发布1.0.1.0版本:
1. 修复缺失AMR头无法转换问题。(但也带来一定量的误转换)
2. 新增关于页。
3. 修复一些Bug。

2016-09-22发布1.0.0.6版本:
1.修复编码后,微信播放完,会有杂音。
2.新增输出格式自定义。(请勿随意修改,除非你确信是对的)
3.修复一些Bug。

2016-07-27发布1.0.0.5版本:
1.最小加载模式。(Silk V3 Encoder和FFmpeg,需要下载Expansion包)
2.当发现程序目录下存在FFmpeg时,启用专业模式。(优先使用FFmpeg,不存在时使用LAME)

2016-06-15发布1.0.0.4版本:
1.添加语言支持,新增繁体中文支持。
2.修复一些Bug。

2016-06-01发布1.0.0.3版本:
1.支持转换音频文件为Silk v3编码。
2.修复一些Bug。

2016-04-29发布1.0.0.2版本:
隐藏转换时弹出的命令行窗口。

2016-04-13发布1.0.0.1版本:
1.添加语言支持,新增英文支持。
2.Fix Some Bugs.

2016-04-12发布1.0.0.0版本:
第一个版本,由Autoit3编译而成。

压缩包内部文件一览:

文件: ffmpeg.exe
大小: 36560896 字节
MD5: 170913E96730ED552392D9C06023515D
SHA1: 41B42AB46A83FBD82B62233CF9F52C950F0C05FD
CRC32: 05C8F349

文件: lame.exe
大小: 653312 字节
文件版本: 3.99 release 5
MD5: 17728C0F48D30E3770ACF6F3FEA3B184
SHA1: 1848CDC71F583B34147AF2D1009F4F9CE19D77D3
CRC32: 3B8F45D9

文件: silk2mp3.exe
大小: 579584 字节
文件版本: 1.0.2.5
MD5: AE36A2C9610375A944BA164199D59EE7
SHA1: A15261FD47E93BD1E9AA550FAB085B0C69809276
CRC32: F93CDB27

文件: silk_v3_decoder.exe
大小: 179037 字节
MD5: BB0B72D969293E5D41A3DA6E25B62D1B
SHA1: 22DE4AF082C8AB57C611950264708668CD0815BE
CRC32: EF6BE0F4

文件: silk_v3_encoder.exe
大小: 318514 字节
MD5: 4F253BC1185DA46A18D0CC5EAA146E35
SHA1: AD6250C5CA6ED0A1CB805D1A6F53F421F67A2ED7
CRC32: 6444593C

其中lame.exe是一款不错的MP3编码器,主程序就是通过它将RAW音频编码为MP3;
而ffmpeg.exe是一款更强大的编码解码器,一些LAME做不到的事情,可以交由FFmpeg来做;
silk_v3_decoder.exe是我用MinGW编译Skype Silk Codec而成的,可解码Silk v3音频为RAW;
silk_v3_encoder.exe是我用MinGW编译Skype Silk Codec而成的,可编码RAW音频为Silk v3;
silk2mp3.exe是我用Autoit3写的主程序,负责调用silk_v3_decoder.exe、silk_v3_encoder.exe和lame.exe来批量转换文件。

程序在Windows XP/7/10测试通过,可正常使用。

另外求个赞助

最后丢几张图:
20160413145612
20160413145643


MinGW下使用gcc.exe编译出来的可执行文件,跨系统运行可能会报dll丢失。比如提示

无法启动此程序,因为计算机中丢失libgcc_s_dw2-1.dll。尝试重新安装该程序已解决此问题。

或者什么

无法启动此程序,因为计算机中丢失libstdc++-6.dll。尝试重新安装该程序已解决此问题。

等等等等。。。

可以给CFLAGS加个“-static”参数,或者在直接运行gcc.exe编译时,后面带上“-static”参数,来解决这个问题。小坑记录一下。

转载请注明转自:kn007的个人博客的《Windows下批量转换Silk v3音频文件为MP3格式

donate
有所帮助?

Comments

402 Comments立即评论
Loading...
  1. 回复

    大神好,用了您的脚本转了微信的语音,发现生成的mp3是64比特的,但是由于我这边数据量比较大,一个月就转了400多G的空间,现在就想在转换的时候压缩一下,特来问您一下可否修改一下脚本,降低mp3的比特率? :oops:

    1. MOD回复

      @zamin: 你是说exe程序,还是shell脚本?shell脚本你可以自己改一下参数。
      exe程序,不会做变更了。或者晚些时候我再看看。

  2. 回复

    大神,您好,我属于软件小白,我想咨询安卓换新手机后,如何将微信原有的语音聊天记录更新到新的手机上?

    1. MOD回复

      @Jianlangli: 这你不问微信,问我?
      用PC端备份一下不就可以了。
      Android也有钛备份这些。

    2. 回复

      @kn007: 大神,运用你这个软件,将MP3转化为微信兼容的语音条,怎么通过微信发出去

    3. MOD回复

      @Jianlangli: 重新拷进去,替换已有的才行。
      其他不清楚

    4. 回复

      @kn007: 大神,您好。之前您给我推荐的微信电脑备份,我发现我将语音条备份恢复却无法播放,怎么办?
      您推荐的那个安卓钛备份可以备份语音和恢复语音条吗?谢谢

    5. MOD回复

      @Jianlangli: 微信电脑备份,应该可以吧。。。

      我钛备份是配合文件夹备份。所以不清楚,只用钛备份可不可以。

      如果你是相同手机刷机,那么只用钛备份是可以的

    6. 回复

      @kn007: 谢谢您的回复,微信电脑备份,确实不能恢复语音条,只能显示文字和图片以及语音条的长短,但是语音条无法播放。
      还有您之前说的那个替换也没法播放,我将旧手机的语音条,拷贝替换到新的手机下面,结果还是没法播放,求大神指点。

  3. 回复

    请问该压缩包内有个叫lame.exe的文件 是什么?》
    ;-) 主动运行会闪退

    1. MOD回复

      @月半: 就是LAME啊,搜索一下。

  4. 回复

    博主,想用命令调用 进行 mp3转微信的amr,不成功,转出来只有1k,命令应该怎么写啊?求指导
    silk_v3_encoder.exe td.mp3 td.silk

    1. MOD回复

      @litt: 错误操作方式

  5. 回复

    你好 我在linux下安装了 FFmpeg 在linux用命令转码失败 Convert sample.silk false, maybe not a silk v3 encoded file. 测试文件是silk格式的 文件内容开头就是SILK V3格式的

    1. MOD回复

      @lsw: 是带混淆的silk还是不带的?混淆,像腾讯有部分是解不出来了,人家没公开方式。
      只能解析标准的。

  6. 回复

    大神,我转的时候报错了,说不是silk v3格式,可我就是保存的silk格式

  7. 回复

    现在是不是不用silk文件了?

  8. 回复

    抱歉打扰了,请教一下,我用windows版的转换安卓微信语音消息(amr格式),只有一部分能成功,是因为微信的语音有一部分不是真正的amr格式么,我看文件头的确不一样,这写不一样的是需要进行怎么样的操作可以转换还是说就没办法了? :|

    1. MOD回复

      @geng: 是啊,微信的转码各不相同。

    2. MOD回复

      @geng: 你可以尝试勾选amr选项,然后看转出来能不能播放

    3. 回复

      @kn007: 嗯感谢回复,我看了一下文件头,文件头为 .#!SILK_V3和#!AMR的都可以转换成功,剩下的文件头为6?啥的就不行,同一台手机导出来的微信语音竟然会编码不同?真是奇怪

icon_wink.gificon_neutral.gificon_mad.gificon_twisted.gificon_smile.gificon_eek.gificon_sad.gificon_rolleyes.gificon_razz.gificon_redface.gificon_surprised.gificon_mrgreen.gificon_lol.gificon_idea.gificon_biggrin.gificon_evil.gificon_cry.gificon_cool.gificon_arrow.gificon_confused.gificon_question.gificon_exclaim.gif