Python 3.x 将.wav音频文件设置复制到新的.wav文件

Python 3.x 将.wav音频文件设置复制到新的.wav文件,python-3.x,ffmpeg,wav,speech-to-text,kaldi,Python 3.x,Ffmpeg,Wav,Speech To Text,Kaldi,目前,我正在使用一个语音到文本转换模型,该模型采用.wav文件,并将音频中的语音转换为文本文本。该模型以前使用直接录制的.wav音频录制。然而,现在我正试图对最初出现在视频中的音频进行同样的处理 步骤如下: 通过ffmpeg从流url检索视频文件 从视频中删除.aac音频 将.aac音频转换为.wav 将.wav保存到s3以便以后使用 下面列出了我使用的ffmpeg命令,以供参考: rm /tmp/jonas/* ffmpeg -i {stream_url} -c copy -bsf

目前,我正在使用一个语音到文本转换模型,该模型采用.wav文件,并将音频中的语音转换为文本文本。该模型以前使用直接录制的.wav音频录制。然而,现在我正试图对最初出现在视频中的音频进行同样的处理

步骤如下:

  • 通过ffmpeg从流url检索视频文件
  • 从视频中删除.aac音频
  • 将.aac音频转换为.wav
  • 将.wav保存到s3以便以后使用
下面列出了我使用的ffmpeg命令,以供参考:

  rm /tmp/jonas/*
  ffmpeg -i {stream_url} -c copy -bsf:a aac_adtstoasc /tmp/jonas/{filename}.aac
  ffmpeg -i /tmp/jonas/{filename}.aac /tmp/jonas/{filename}.wav
  aws s3 cp /tmp/jonas/{filename}.wav {s3_audio_save_location}
现在的问题是,我的语音到文本模型不再适用于此音频。我使用sox来转换音频,但sox似乎无法捕获音频。同样,如果没有sox,模型也无法工作。这使我相信.wav音频格式和之间存在差异,因此我想知道如何使用与.wav相同的设置格式化.wav,使其正常工作找到一种方法来比较.wav音频格式,并通过ffmpeg手动将新的.wav设置为正确的格式

我尝试使用PyPy exiftool并找到了两个文件的元数据:

工作.wav文件的元数据为

无法工作的.wav文件的元数据为

可以看到,工作的.wav文件有一些不同的设置,我想在第二个.wav文件中模拟这些设置,这可能会使我的模型再次工作:)

致以亲切的问候,
Jonas

我找到了答案,需要将.aac到.wavs的转换调整为以下行:

ffmpeg -i /tmp/jonas/{filename}.aac -ac 1 -ar 8000 /tmp/jonas/{filename}.wav

.aac直接从视频中复制-ac调整通道的数量-ac调整采样率

1)您可以将两个ffmpeg命令组合成一个:
ffmpeg-i{stream_url}-ac 1-ar 8000/tmp/jonas/{filename}.wav
2)文本到语音转换不能与48000一起使用似乎有些奇怪,但可以接受更糟糕的8000。检查它是否只需要单声道,并在不修改采样率的情况下进行尝试(
-ar
)。我确实尝试将ffmpeg命令组合在一起,但是出于某种奇怪的原因,当我下载并手动收听.wav之后,只有前2秒左右的音频可用,之后它是空的。很奇怪。关于抽样率的公平点。会试着在第一批成绩单之后看看它是否对成绩单的质量有影响,thnx!下次请记住,文本图像不如复制和粘贴文本理想。图像通常更难解析,不必要地占用更多空间,在可访问性方面无法使用,并且文本无法从图像复制。