Google Cloud Speech-to-Text

Google Cloud Speech-to-Text gRPC API를 호출하여 오디오를 텍스트로 전사하는 형식화된 인터페이스입니다.

소개

Google Cloud Speech-to-Text는 Google의 음성 인식 모델을 사용하여 오디오를 텍스트로 변환합니다. gRPC API는 google.cloud.speech.v1.Speech 서비스를 통해 제공되며, TLS를 통해 speech.googleapis.com:443에서 접근하고, 주요 메서드는 동기 인식을 위한 Recognize입니다.

요청은 TsgcGRPCSpeechRecognizeRequest로 작성되며, 여기서 Config는 Encoding, SampleRateHertz, LanguageCode 및 EnableAutomaticPunctuation을 설정하고, Audio.Uri는 오디오를 가리킵니다. 응답은 TsgcGRPCSpeechRecognizeResponse로 반환되며, 그 Results에는 Transcript와 Confidence를 가진 Alternatives가 포함됩니다.

아래 예제는 서비스 계정 JWT로 인증하고, Speech 호스트에 대해 TsgcHTTP2Client 위에 TsgcGRPCClient를 연결하고, authorization Bearer 메타데이터를 설정한 후, gs:// URI에 저장된 LINEAR16 16000 Hz en-US 오디오 스트림에 대해 Recognize를 호출합니다.


    TsgcHTTP2Client *oHTTP2 = new TsgcHTTP2Client();
    oHTTP2->Host = "speech.googleapis.com";
    oHTTP2->Port = 443;
    oHTTP2->TLS = true;

    TsgcGRPCClient *oGRPC = new TsgcGRPCClient();
    oGRPC->Client = oHTTP2;

    // service-account JWT authentication
    oGRPC->GoogleCloudOptions->JWT->KeyFile = "service-account.json";
    oGRPC->GoogleCloudOptions->JWT->API_Endpoint = "https://speech.googleapis.com/";
    oGRPC->DefaultMetadata->AddValue("authorization", "Bearer " + oGRPC->GoogleCloudOptions->JWT->Token);

    // build the typed request and call the method
    TsgcGRPCSpeechRecognizeRequest *oRequest = new TsgcGRPCSpeechRecognizeRequest();
    oRequest->Config->Encoding = "LINEAR16";
    oRequest->Config->SampleRateHertz = 16000;
    oRequest->Config->LanguageCode = "en-US";
    oRequest->Config->EnableAutomaticPunctuation = true;
    oRequest->Audio->Uri = "gs://my-bucket/audio.wav";
    TsgcGRPCResponse *oResponse = oGRPC->Call("google.cloud.speech.v1.Speech", "Recognize", oRequest->ToBytes());
    ShowMessage(oResponse->DataString);
    delete oRequest;

Methods

Name설명
Recognize동기식 음성 인식을 수행합니다: 오디오 구성과 오디오 데이터를 보내고, 신뢰도 점수와 함께 전사된 텍스트를 반환합니다.

Demo

작동하는 샘플은 데모 폴더 Demos/21.GRPC/11.Speech_to_Text에서 제공되며, Recognize 메서드로 인증하고 오디오 파일을 전사하는 방법을 보여줍니다.

참조