#google-api #speech-recognition #google-speech-to-text-api
#google-api #распознавание речи #google-speech-to-text-api
Вопрос:
Я попытался получить текст из случайного видео на YouTube, просто чтобы опробовать API, но он ничего не возвращает. Это работает при использовании файла образца ‘audio.raw’ из этого репозитория. https://github.com/GoogleCloudPlatform/golang-samples/tree/master/speech/testdata
Видео на YouTube, которое я использую: https://www.youtube.com/watch?v=liAsT4DqalQ Английский довольно понятен, и аудиоверсия, которая у меня есть на местном уровне, понятна. Файл имеет тип webm возможно, это проблема, я пробовал с файлом m4a, но не повезло: x
Мой код похож на тот, что был в async simple, действительно странная часть заключается в том, что я не получаю никаких ошибок…
package main
import (
"context"
"fmt"
"log"
speech "cloud.google.com/go/speech/apiv1"
speechpb "google.golang.org/genproto/googleapis/cloud/speech/v1"
)
func main() {
ctx := context.Background()
client, err := speech.NewClient(ctx)
if err != nil {
log.Fatal(err)
}
req := amp;speechpb.LongRunningRecognizeRequest{
Config: amp;speechpb.RecognitionConfig{
Encoding: speechpb.RecognitionConfig_LINEAR16,
SampleRateHertz: 16000,
LanguageCode: "en-US",
},
Audio: amp;speechpb.RecognitionAudio{
AudioSource: amp;speechpb.RecognitionAudio_Uri{Uri: "gs://BUCKET_NAME/eng.webm"},
},
}
op, err := client.LongRunningRecognize(ctx, req)
if err != nil {
panic(err)
}
resp, err := op.Wait(ctx)
if err != nil {
panic(err)
}
// Print the results.
for _, result := range resp.Results {
for _, alt := range result.Alternatives {
fmt.Printf(""%v" (confidence=?)n", alt.Transcript, alt.Confidence)
}
}
}
Ответ №1:
Ну, заставил его работать, переключившись на aws
Комментарии:
1. Я записываю это
2. Вот как я решаю свои проблемы с Google Cloud