微信开发者工具录音问题
使用微信小程序开发者工具录制声音想看看声音质量如何,
找到其所在目录,类似于下面这样:
- C:\Users\study\AppData\Local\微信开发者工具\User Data\19f15250c2209a5aea2564e315f41723\WeappSimulator\WeappFileSystem\o6zAJs6fHsuYVMffU7XVspWDZ89g\touristappid\tmp
文件倒是找到了,但这种文件没有办法用一般的播放器播放。
比如vlc media player, foobar2000, QQ音乐,包括audition也没办法播放,怪的是Groove, Windows Media Player倒是可以播放。
我专门用浏览器测试了下,发现chrome浏览器是可以正常播放的!
但IE11不行!
搜索后研究吧,发现微信小程序录制的声音其实和一般的录音有点儿不同,录音文件为silk格式,说是silk其实是base64加密后的webm格式。使用MediaInfo查看:
文件肯定是需要用的,尤其是我还需要使用auditon加工,所以必须要解决,方法有二。
ffmpeg转换后使用
非常简单:
ffmpeg -i 微信小程序录制的文件名.aac 转换后的音频文件名.mp3
实例如下:
ffmpeg -i test.aac test.mp3
ffmpeg version git-2020-01-31-62d92a8 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9.2.1 (GCC) 20200122
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil 56. 38.100 / 56. 38.100
libavcodec 58. 67.100 / 58. 67.100
libavformat 58. 37.100 / 58. 37.100
libavdevice 58. 9.103 / 58. 9.103
libavfilter 7. 72.100 / 7. 72.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Input #0, matroska,webm, from 'test.aac':
Metadata:
encoder : Chrome
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0(eng): Audio: opus, 48000 Hz, mono, fltp (default)
Stream mapping:
Stream #0:0 -> #0:0 (opus (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Output #0, mp3, to 'test.mp3':
Metadata:
TSSE : Lavf58.37.100
Stream #0:0(eng): Audio: mp3 (libmp3lame), 48000 Hz, mono, fltp (default)
Metadata:
encoder : Lavc58.67.100 libmp3lame
size= 32kB time=00:00:04.03 bitrate= 64.8kbits/s speed= 102x
video:0kB audio:32kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.730399%
从input里面可以看出,#0, matroska,webm, from ‘test.aac’,说明微信小程序开发工具录制时其编码器用的是chrome的。
转换之后,一切正常,audtion能够正常打开。
真机录音
还有个办法就是用真机录制文件,编码器用的是手机内置的而不是chrome,能够正常播放!
本文所用微信小程序开发版本为: 1.05.2107221