在 Windows 命令行中将 Speex 转换为 FLAC

在 Windows 命令行中将 Speex 转换为 FLAC

我有一个 speex 音频文件snd.spx我发现foob​​ar2000是唯一一款我可以轻松将其转换为更广泛使用的格式的软件长度单位 ( snd.flac)这样我就可以编辑它,然后再将其编码为有损格式。我使用的其他软件似乎对此有所抱怨(mencoder、ffmpeg,两者都抱怨它们没有被编译来处理 speex :()

使用图形用户界面很棒,但在生成文件时手动点击多次很麻烦,所以我想设置一个小脚本来帮我做这件事

这是我遇到问题的地方,我找不到关于如何通过命令行执行此操作的文档,调用foobar2000 /?会调出 foobar2000 GUI 并给我一些无用的信息

Available switches:
  /add <list-of-files> - appends the specified files to the current playlist instead of replacing the playlist content and playing them immediately
  /immediate - bypasses the "please wait" dialog when adding files
  /play, /pause, /playpause, /prev, /next, /rand, /stop - playback controls
  /exit - exits foobar2000
  /show, /hide - shows or hides the main foobar2000 window
  /config - opens the Preferences dialog
  /command:<menu command> - invokes the specified main menu command
  /playlist_command:<context menu command> - invokes the specified context menu command on current playlist selection
  /playing_command:<context menu command> - invokes the specified context menu command on currently played track
  /context_command:<context menu command> <files> - invokes the specified context menu command on the specified files

这些选项似乎都不能让我访问文件转换功能。


其他speex 转 FLAC如果解决方案是可移植的,使用命令行也是可以接受的
(并且不需要我编译二进制文件,我没有合适的环境可用)

答案1

我找到了一种使用官方工具进行转换的方法,

  1. 使用语音windows 二进制文件来自这里 1.1.11win32.zip对我有用)
  2. 使用弹性计算windows 二进制文件来自这里 (我有flac-1.3.1-win.zip

您需要分两步进行转换才能从 到.spx作为.flac官方解码器语音只允许您解码为.wav原始 PCM

现在假设你在当前目录中有speexdec.exe和,并且是文件的路径,flac.exe%~d1%~p1%~n1.spx.spx(这是.bat获取没有文件扩展名的输入参数的文件技巧)

speexdec.exe "%~d1%~p1%~n1.spx" "%~d1%~p1%~n1.wav"
flac.exe -o "%~d1%~p1%~n1.flac" -8 "%~d1%~p1%~n1.wav"
del "%~d1%~p1%~n1.wav"

最后一行清理中间文件

相关内容