bash - 预期的音频采样率与实际不匹配?

标签 bash shell audio speech-recognition pocketsphinx

我正在尝试使用袖珍狮身人面像来转录音频文件。

pocketsphinx_continuous -infile 116-288045-0005.flac.wav

但是我得到了错误:

ERROR: "continuous.c", line 136: Input audio file has sample rate [44100],
       but decoder expects [16000]
FATAL: "continuous.c", line 165: Failed to process file '116-288045-0005.flac.wav'
       due to format mismatch.

这是我需要转录的音频文件之一:Download from GitHub

最终,我将在5个小时以上的时间内批量转录此类音频文件,目前它们都引发了相同的错误。

这是我要转录的同一文件的一些统计信息:

$ soxi 116-288045-0000.flac.wav

Input File     : '116-288045-0000.flac.wav'
Channels       : 1
Sample Rate    : 44100
Precision      : 16-bit
Duration       : 00:00:10.65 = 469665 samples = 798.75 CDDA sectors
File Size      : 939k
Bit Rate       : 706k
Sample Encoding: 16-bit Signed Integer PCM

此文件的某些配置可能有问题,我已经进行了一些预处理,以将其与mp3合并,从flac转换为wav等。

现在让我开始转录工作的最简单方法是什么?

是否可以不重新采样回低至16kHz的文件。最初,flac文件的采样率为16kHz,但是我不得不将它们与44.1kHz的mp3文件合并。因此,现在其中有一些高频信息,如果重新采样到16k,则可能会丢失。

最佳答案

将音频重新采样为16000样本,然后重试。

您可以像这样重新采样sox file.wav -r 16000 file-16000.wav

关于bash - 预期的音频采样率与实际不匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46828820/

相关文章:

bash - 使用 Bash 安排 Cron

bash - 如何格式化 emacs 组织模式表中的一列数字?

linux - 编写脚本以获得更好的错误检测、时间和资源效率的更好方法?

linux - 无法回显对文件所做的更改

audio - 如何将 RAW/WAV 文件解码为数字列表?

linux - 查看 PS 命令的完整输出

linux - 每次监视执行时的不同文件间接

linux - 减去作为命令输出获得的变量和 shell 脚本中的整数

ios - UISlider 不能与 AVPlayer 一起正常工作

audio - 具有多个输入文件的 ffmpeg 映射