Google Speech to Text api 客户端 return 无一例外但没有实际结果
Google Speech to Text api client return without exception but no actual results
我正在使用来自 google 网站的示例代码,这没有引发异常,但 returns 没有结果。
如果我使用 API 资源管理器,同样的数据工作得很好。我尝试了不同的文件(全部来自 google 示例代码)不同的设置。所有这些都给我相同的结果,没有。
function transcribe_sync($content)
{
// set string as audio content
$audio = (new RecognitionAudio())
->setContent($content);
// set config
$encoding = AudioEncoding::LINEAR16;
$sampleRateHertz = 32000;
$languageCode = 'en-US';
$config = (new RecognitionConfig())
->setEncoding($encoding)
->setSampleRateHertz($sampleRateHertz)
->setAudioChannelCount(1)
->setMaxAlternatives(1)
->setLanguageCode($languageCode);
// create the speech client
$client = new SpeechClient();
try {
$response = $client->recognize($config, $audio);
echo $response->getResults()
}
catch (\Exception $e) {
$this->handleError('Error determining recognition. ' . $e->getMessage());
}
finally {
$client->close();
}
我解决这个问题的方法是我传递文件的方式(不要认为文件被正确填充或根本没有填充)。奇怪的是我没有收到错误。由于我的音频文件的长度,我最终集成了 google 存储来上传文件 () 并使用了:
$audio = (new RecognitionAudio())->setUri("gs://...");
... longRunningRecognize($config, $audio);
希望这对某人有所帮助。
我正在使用来自 google 网站的示例代码,这没有引发异常,但 returns 没有结果。
如果我使用 API 资源管理器,同样的数据工作得很好。我尝试了不同的文件(全部来自 google 示例代码)不同的设置。所有这些都给我相同的结果,没有。
function transcribe_sync($content)
{
// set string as audio content
$audio = (new RecognitionAudio())
->setContent($content);
// set config
$encoding = AudioEncoding::LINEAR16;
$sampleRateHertz = 32000;
$languageCode = 'en-US';
$config = (new RecognitionConfig())
->setEncoding($encoding)
->setSampleRateHertz($sampleRateHertz)
->setAudioChannelCount(1)
->setMaxAlternatives(1)
->setLanguageCode($languageCode);
// create the speech client
$client = new SpeechClient();
try {
$response = $client->recognize($config, $audio);
echo $response->getResults()
}
catch (\Exception $e) {
$this->handleError('Error determining recognition. ' . $e->getMessage());
}
finally {
$client->close();
}
我解决这个问题的方法是我传递文件的方式(不要认为文件被正确填充或根本没有填充)。奇怪的是我没有收到错误。由于我的音频文件的长度,我最终集成了 google 存储来上传文件 () 并使用了:
$audio = (new RecognitionAudio())->setUri("gs://...");
... longRunningRecognize($config, $audio);
希望这对某人有所帮助。