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

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

by | 231 Comments

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

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

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

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

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

文件: silk2mp3.zip
大小: 839961 字节
MD5: 445DB4F4BFB16D0CE42E6D292B4ED279
SHA1: 701922E593C6F2FC1BD16515266460B64AEA7189
CRC32: E81D8878

文件: silk2mp3-expansion.zip
大小: 14714131 字节
MD5: DB5B98A58849BB38DC21F8D1C3182768
SHA1: A1CFCDF5DC8D61B510BEA8041382A560982B71E6
CRC32: B647F66C

文件: silk2mp3-full.zip
大小: 15232266 字节
MD5: E71F7902FA2986B0BDD0F171F29246DC
SHA1: 8E7F90948469ED6FCF8B22A152B6544EBBA69955
CRC32: 5A703DBC

更新历史:
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
大小: 35877376 字节
MD5: 6856E785AAB413F5E1C8E490C4AAC217
SHA1: 57AB768ECC3CFDA8AC415A0A464423BBEC1C41A0
CRC32: 066F3EA0

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

文件: silk2mp3.exe
大小: 577024 字节
文件版本: 1.0.2.0
MD5: 3F9E5B3C36A0B346335CC6061AD032D3
SHA1: 3F67B5CB3678AE24388CE4A1CBA46338D56027D3
CRC32: F8D4EA22

文件: 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

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

    您好,我在编译后,转换微信小程序的语音文件时,一直提示:
    [Warning] Convert ios.silk false, maybe not a silk v3 encoded file.

    1. MOD回复

      @tby: 。。。你们不会搜索一下吗?
      不是silk v3,自然就转换不了啊。
      小程序语音,直接base64解码后,然后ffmpeg转码就行了。

    2. 回复

      @kn007: 我ios.silk文件记事本打开是这个头:#!SILK_V3 ?t,文件类型是:application/octet-stream,这是用IOS版微信小程序录音的,安卓的一样;
      但微信开发工具的录音文件是:data:audio/webm;base64,直接解码,是可以播放和转码的;

    3. MOD回复

      @tby: 难道微信又变了?
      麻烦你发一份到 kn007@126.com
      我晚点解析一下,周五以后,最近出差。

    4. 回复

      @kn007: 已发邮件,感谢;

    5. MOD回复

      @tby: 来信收到,晚点回复你。

    6. MOD回复

      @tby: 2e0afd82bc3a6ef718166a401ccdaa51.png

      没问题哦,兄弟,你GCC版本是不是过低了?

    7. MOD回复

      @tby: 播放了下,一直念叨着123。。。

    8. MOD回复

      @tby: 兄弟,你这个问题,我至少回答20次了。。

      解码小程序语音很简单的,就我刚才说的那个方法。

  2. 回复

    kn007大神:
    有个问题想求教一下为什么silk转MP3在liunx系统中使用命令可以直接转MP3,但是使用php exec(/bin/sh /opt/app/silk2mp3/converter.sh ./Public/uploads/user_3/music/7550620170616145649.silk mp3)始终不成功

    1. MOD回复

      @悠悠: 加上引号

    2. 回复

      @kn007: 执行中是加引号的exec("/bin/sh /opt/app/silk2mp3/converter.sh ./Public/uploads/user_3/music/7550620170616145649.silk mp3"),但是始终不成功。

    3. MOD回复

      @悠悠: 用绝对路径,看下php报什么错。
      说实在,用exec很容易被攻击。
      另外我收到你私人邮件了,小程序语音,非silk v3编码的,会无法转换。

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