配置语音 CLI 输出选项

可将语音 CLI 输出写入标准输出或指定文件。

若要在语音 CLI 中获取上下文帮助,可以运行以下命令之一:

spx help recognize output examples
spx help synthesize output examples
spx help translate output examples
spx help intent output examples

标准输出

如果文件参数是连字符 (-),则结果将写入标准输出,如以下示例所示。

spx recognize --file caption.this.mp4 --format any --output vtt file - --output srt file - --output each file - @output.each.detailed --property SpeechServiceResponse_StablePartialResultThreshold=0 --profanity masked

默认文件输出

如果省略 file 选项,输出将写入当前目录中的默认文件。

例如,运行以下命令,以将 WebVTT 和 SRT 字幕写入其自己的默认文件:

spx recognize --file caption.this.mp4 --format any --output vtt --output srt --output each text --output all duration

默认文件名如下所示,其中 <EPOCH_TIME> 在运行时被替换。

  • 默认 SRT 文件名包括输入文件名和本地操作系统纪元时间:output.caption.this.<EPOCH_TIME>.srt
  • 默认 WebVTT 文件名包括输入文件名和本地操作系统纪元时间:output.caption.this.<EPOCH_TIME>.vtt
  • 默认 output each 文件名 each.<EPOCH_TIME>.tsv 包括本地操作系统纪元时间。 默认情况下不会创建此文件,除非指定 --output each 选项。
  • 默认 output all 文件名 output.<EPOCH_TIME>.tsv 包括本地操作系统纪元时间。 默认情况下会创建此文件。

输出到特定文件

若要输出到指定文件而不是默认文件,请将 file 选项设置为文件名。

例如,若要将 WebVTT 和 SRT 字幕输出到指定的文件,请运行以下命令:

spx recognize --file caption.this.mp4 --format any --output vtt file caption.vtt --output srt file caption.srt --output each text --output each file each.result.tsv --output all file output.result.tsv

上述命令还会将 eachall 结果输出到指定的文件。

输出到多个文件

对于使用 spx translate 进行的翻译,会为源语言(例如 --source en-US)和每种目标语言(例如 --target "de;fr;zh-Hant")创建单独的文件。

例如,若要输出翻译后的 SRT 和 WebVTT 字幕,请运行以下命令:

spx translate --source en-US --target "de;fr;zh-Hant" --file caption.this.mp4 --format any --output vtt file caption.vtt --output srt file caption.srt

然后,应将字幕写入以下文件:caption.srt、caption.vtt、caption.de.srt、caption.de.vtt、caption.fr.srt、caption.fr.vtt、caption.zh-Hant.srt 和 caption.zh-Hant.vtt。

禁止显示标题

可以通过设置 has header false 选项来禁止显示输出文件中的标题行:

spx recognize --nodefaults @my.defaults --file audio.wav --output recognized text --output file has header false

请参阅配置语音 CLI 数据存储以了解有关 --nodefaults 的详细信息。

后续步骤