API를 사용하여 음성을 텍스트로 변환하기

이 페이지에서는 REST 인터페이스curl 명령어를 사용하여 Speech-to-Text에 음성 인식 요청을 보내는 방법을 설명합니다.

Speech-to-Text를 사용하면 Google 음성 인식 기술을 개발자 애플리케이션에 간편하게 통합할 수 있습니다. 오디오 데이터를 Speech-to-Text API로 보내면 Speech-to-Text API가 해당 오디오 파일의 텍스트 스크립트를 반환합니다. 이 서비스에 대한 자세한 내용은 Speech-to-Text 기본사항을 참조하세요.

시작하기 전에

Speech-to-Text API에 요청을 보내려면 먼저 다음 작업을 완료해야 합니다. 자세한 내용은 시작하기 전에 페이지를 참조하세요.

필요한 역할

음성을 텍스트로 변환하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 서비스 사용량 소비자(roles/serviceusage.serviceUsageConsumer) IAM 역할을 부여해 달라고 요청합니다. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

커스텀 역할이나 다른 사전 정의된 역할을 통해 필요한 권한을 얻을 수도 있습니다.

오디오 텍스트 변환 요청하기

이제 Speech-to-Text를 사용하여 오디오 파일을 텍스트로 변환할 수 있습니다. 다음 코드 샘플을 사용하여 Speech-to-Text API에 recognize REST 요청을 보냅니다.

  1. 다음 텍스트를 사용하여 JSON 요청 파일을 만들고 sync-request.json이라는 일반 텍스트 파일로 저장합니다.

    {
      "config": {
          "encoding":"FLAC",
          "sampleRateHertz": 16000,
          "languageCode": "en-US",
          "enableWordTimeOffsets": false
      },
      "audio": {
          "uri":"gs://cloud-samples-tests/speech/brooklyn.flac"
      }
    }
      

    이 JSON 스니펫은 오디오 파일이 FLAC 인코딩 형식이고, 샘플링 레이트가 16000Hz이며, 오디오 파일이 주어진 URI의 Google Cloud Storage에 저장되어 있음을 나타냅니다. 오디오 파일은 공개적으로 액세스될 수 있으므로, 파일에 액세스하기 위해 사용자 인증 정보를 인증할 필요가 없습니다.

  2. curl을 사용하여 speech:recognize 요청을 실행합니다. 이때 1단계에서 설정한 JSON 요청의 파일 이름을 전달합니다.

    샘플 curl 명령어는 gcloud auth print-access-token 명령어를 사용하여 인증 토큰을 가져옵니다.

    curl -s -H "Content-Type: application/json" \
        -H "Authorization: Bearer "$(gcloud auth print-access-token) \
        https://speech.googleapis.com/v1/speech:recognize \
        -d @sync-request.json
      

    curl에 파일 이름을 전달하려면 -d 옵션('데이터'용)을 사용하고 파일 이름 앞에 @ 기호를 붙입니다. 이 파일은 curl 명령어를 실행하는 디렉터리와 같은 디렉터리에 있어야 합니다.

    다음과 비슷한 응답이 표시됩니다.

    {
      "results": [
        {
          "alternatives": [
            {
              "transcript": "how old is the Brooklyn Bridge",
              "confidence": 0.98267895
            }
          ]
        }
      ]
    }
      

수고하셨습니다. 첫 번째 요청을 Speech-to-Text에 보냈습니다.

Speech-to-Text에서 오류 또는 빈 응답이 반환되면 문제 해결오류 완화 단계를 살펴보세요.

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.

다음 단계