我正在使用Google的php api(https://github.com/googleapis/google-cloud-php)进行语音到文本的转录,并且到目前为止一切正常。然而;使用php库的所有示例都显示了按以下方式处理结果:
if ($op->operationSucceeded()) {
$response = $op->getResult();
// each result is for a consecutive portion of the audio. iterate
// through them to get the transcripts for the entire audio file.
foreach ($response->getResults() as $result) {
$alternatives = $result->getAlternatives();
$mostLikely = $alternatives[0];
$transcript = $mostLikely->getTranscript();
$confidence = $mostLikely->getConfidence();
printf('Transcript: %s' . PHP_EOL, $transcript);
printf('Confidence: %s' . PHP_EOL, $confidence);
}
}
我真的希望将完整结果作为json,以便将其轻松存储在数据库表中。有没有办法将完整结果作为json返回?
谢谢!
答案 0 :(得分:3)
您可以在从serializeToJsonString()
继承的任何对象上调用Google\Protobuf\Internal\Message
。确保您使用的是相对最新的google/cloud
版本。
另外,如果仅使用Cloud Speech,google/cloud-speech
可能会更好,因为它将安装一个更小的程序包。