windows下利用sox批量将PCM转为WAV
生活随笔
收集整理的這篇文章主要介紹了
windows下利用sox批量将PCM转为WAV
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1 說(shuō)明
在做語(yǔ)音處理時(shí),需要批量將pcm的裸數(shù)據(jù)轉(zhuǎn)為wav格式,我們班的女孩子一開(kāi)始是一個(gè)一個(gè)手動(dòng)轉(zhuǎn)換,大約有8萬(wàn)條吧,再一次證明了女人狠起來(lái)是真的狠。求助了我,我弄了一個(gè)批處理文件給她。
2 實(shí)現(xiàn)
新建txt文件,命名為twk_PcmToWav.txt,將以下內(nèi)容復(fù)制進(jìn)去后,修改后綴為bat。
echo off & color 0A ::指定起始文件夾 set DIR="C:\Users\fylal\OneDrive\FangYan\FangYanDate\changsha\changsha\train" echo DIR=%DIR% :: 參數(shù) /R 表示需要遍歷子文件夾,去掉表示不遍歷子文件夾 :: %%f 是一個(gè)變量,類似于迭代器,但是這個(gè)變量只能由一個(gè)字母組成,前面帶上%% :: 括號(hào)中是通配符,可以指定后綴名,*.*表示所有文件 for /R %DIR% %%f in (*.pcm) do ( echo %%f wtcsox.exe -t raw -c 1 -e signed-integer -b 16 -r 16000 %%f %%f.wav ::ffmpeg -i %%f -f s16le -y -ar 16000 -ac 1 %%f.wav del %%f ) pause其中路徑可以隨意修改。
還需要用到的工具是wtcsox.exe,由于原始的sox工具在Windows下的一些鏈接庫(kù)問(wèn)題,我們團(tuán)隊(duì)自己加入了鏈接庫(kù),最終生成wtcsox.exe,將其添加在windows的環(huán)境變量中。
wtcsox.exe在這里:
以上工作做好以后直接點(diǎn)擊twk_PcmToWav.bat,但生成的文件是含fileName.pcm.wav,這時(shí)需要用到下面這條命令
ren *.wav *.& ren *.pcm *. &ren *. *.wav切換到音頻所在目錄下的cmd,將命令復(fù)制回車就可以。注意這條命令不能識(shí)別子目錄,只能在語(yǔ)音文件所在目錄下運(yùn)行。
總結(jié)
以上是生活随笔為你收集整理的windows下利用sox批量将PCM转为WAV的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: c++判断文件是否被修改(获取文件的MD
- 下一篇: 树莓派4b设置RTC时钟模块DS3231