1

我正在做一个小型学校项目,我必须拍摄大量音频文件并将它们转录成 .txt 文件。我是编程的初学者。到目前为止,我已经尝试过使用 Google 的 Cloud Speech API 的alexkras方法。但是我不能将它用于大量转录,因为它是通过使用外部软件将音频转换为 .wav 来完成的(这也可以通过 ffmpeg 完成,所以没什么大不了的)并将新的 .wav 文件拆分为 <60s作为 Cloud Speech 的部分一次只能转录 <60 秒,这在 trans 中是一个很大的损失,除非您将它们上传到 GCS,但这也是大规模转录的问题,因为一些 .wav 文件足够大(我使用的 1 小时播客转进入 800mb 文件)该过程减慢。

我尝试的下一个是使用 gcloud SDK 并使用终端中的一个小代码直接转录 GCS 上的音频文件,现在我在这里观察到的问题是转录不完整,它以这种方式显示转录,

来自谷歌的例子:

   {
          "@type": "type.googleapis.com/google.cloud.speech.v1.LongRunningRecognizeResponse",
      "results": [
        {
          "alternatives": [
            {
              "confidence": 0.9840146,
              "transcript": "how old is the Brooklyn Bridge"
            }
          ]
        }
      ]
    }

这并不理想,也许有一种方法可以将其传输到文本文件中,但到目前为止我所做的转录并不完整,我从 11 分钟的视频中总共得到了 <30 行文本。

我尝试过的最有效的方法是 alexkras 方法,但正如我上面所说的那样也有问题(就我而言)。我一直在研究语音到文本的机器学习方法,以便它也可以识别或转录带有口音的音频。

你们知道有什么方法可以帮助我有效地将大量音频转录成文本吗?如果不是用于拆分文件或将其上传到 GSC,它会非常高兴使用 alexkras 方法。我将不胜感激任何帮助或建议或指导。谢谢你。

4

2 回答 2

0

我刚刚探索了AWS Transcribe 产品。它需要一个 AWS 账户,可以免费获得,如果您超过免费限制,请使用信用卡付款。

它每月提供最多 60 分钟的音频转录。如果您超过 60 分钟的音频,则每小时需要支付不到 1.50 美元的音频转录费用。

转录会生成一个不易阅读的 .JSON 文件。但是,GitHub 上有一个 php 脚本,可以将 .JSON 文件转换为非常易于阅读的脚本。

我发现它非常准确,并且相对易于使用。如果我是你,我会调查的。

于 2018-10-01T21:01:41.467 回答
0

您可以尝试使用 Watson STT API,文件/流大小限制为 100MB,这意味着如果使用正确的编码,您可以解码长达数小时的文件。如果需要,您可以使用soxffmpeg进行音频转换,重量较轻的编解码器是audio/ogg

https://www.ibm.com/watson/developercloud/speech-to-text/api/v1/#recognize_sessionless12

请参阅 curl 示例以帮助您入门

于 2018-06-11T13:04:55.183 回答