我有一个包含数百个.SPH文件的文件夹的目录。我需要将所有.SPH文件转换成.wav格式。我采用了下列守则:
cd %~dp0 mkdir转换为%A IN (%*)进行sox -t原始-s -2 -r 22050 -c 2%A“转换/%%nA.wav”暂停
但是,它在Windows 7上什么也不做。当我在一个文件夹中尝试CMD上的代码时,其中一些.SPH是:
sox *.SPH output.wav
它将所有*.SPH嵌入到output.wav文件中,这不是我想要的。我需要name1.SPH到name1.wav,name2.SPH到name2.wav
请帮帮忙。
发布于 2017-07-23 06:29:00
对于Linux,请考虑如下:
for f in *.SPH; do sox -t sph "$f" -b 16 -t wav "${f%.*}.wav"; done发布于 2013-10-07 18:01:46
在Windows 7中,我需要为目标文件提供整个路径,而且即使我是以管理员身份运行的,mdkir命令也得到了一个权限错误,所以预先创建目标目录并删除mkdir命令,然后您的SOX命令应该与此类似(根据您试图完成的转换或编辑使用自己的标志):
FOR %%A IN (%*) DO sox -t raw -e mu-law -c 1 -r 8000 %%A c:\converted\%%~nA.wavcmd文件不应位于文件所在的文件夹中,而应位于安装SOX的文件夹中,然后将要转换的文件拖动到cmd (或bat)文件中。
发布于 2013-09-04 19:35:05
for %%a in (*.sph) do sox "%%~a" "%%~na.wav"https://stackoverflow.com/questions/18621041
复制相似问题