빠른 시작: 명령줄 사용

이 빠른 시작에서는 Cloud Text-to-Speech API를 소개하며, Google Cloud Platform 프로젝트와 승인을 설정한 후 Text-to-Speech API에 요청을 수행하여 텍스트에서 오디오를 만듭니다.

Cloud Text-to-Speech API에서 기본 개념에 대해 자세히 알아보려면 Cloud Text-to-Speech API 기본 사항을 읽어 보세요.

시작하기 전에

  1. Google 계정에 로그인합니다.

    아직 계정이 없으면 새 계정을 등록하세요.

  2. Google Cloud Platform 프로젝트를 선택하거나 만듭니다.

    리소스 관리 페이지로 이동

  3. Google Cloud Platform 프로젝트에 결제가 사용 설정되어 있는지 확인하세요.

    결제 사용 설정 방법 알아보기

  4. Cloud Text-to-Speech API를 사용 설정합니다.

    API 사용 설정

  5. 인증 설정:
    1. GCP Console에서 서비스 계정 키 만들기 페이지로 이동합니다.

      서비스 계정 키 만들기 페이지로 이동
    2. 서비스 계정 목록에서 새 서비스 계정을 선택합니다.
    3. 서비스 계정 이름 필드에 이름을 입력합니다.
    4. 역할 목록에서 값을 선택하지 않습니다. 이 서비스에 액세스해야 할 역할이 없습니다.
    5. 만들기를 클릭합니다. 이 서비스 계정에 역할 없다는 경고가 표시됩니다.
    6. 역할 없이 만들기를 클릭합니다. 키가 포함된 JSON 파일이 컴퓨터에 다운로드됩니다.
  6. 환경 변수 GOOGLE_APPLICATION_CREDENTIALS를 서비스 계정 키가 포함된 JSON 파일의 파일 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로, 새 세션을 열 경우, 변수를 다시 설정합니다.

  7. Cloud SDK 설치 및 초기화.

텍스트에서 오디오 합성

https://texttospeech.googleapis.com/v1/text:synthesize 엔드포인트에 대한 HTTP POST 요청을 수행하여 텍스트를 오디오로 변환할 수 있습니다. POST 명령 본문에서 voice 구성 섹션에 합성할 음성의 유형을 지정하고, text 섹션의 input 필드에 합성할 텍스트를 지정하고, audioConfig 섹션에 생성할 오디오의 유형을 지정합니다.

  1. Text-to-Speech API를 사용하여 텍스트에서 오디오를 합성하려면 명령줄에서 다음 명령어를 실행합니다. 이 명령어는 gcloud auth application-default print-access-token 명령어를 사용하여 요청에 사용할 승인 토큰을 검색합니다.

    응답은 출력 파일인 synthesize-text.txt로 전달됩니다.

    curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      -H "Content-Type: application/json; charset=utf-8" \
      --data "{
        'input':{
          'text':'Android is a mobile operating system developed by Google,
             based on the Linux kernel and designed primarily for
             touchscreen mobile devices such as smartphones and tablets.'
        },
        'voice':{
          'languageCode':'en-gb',
          'name':'en-GB-Standard-A',
          'ssmlGender':'FEMALE'
        },
        'audioConfig':{
          'audioEncoding':'MP3'
        }
      }" "https://texttospeech.googleapis.com/v1/text:synthesize" > synthesize-text.txt
    

    synthesize-text.txt 파일 콘텐츠는 다음과 유사해야 합니다.

    {
      "audioContent": "//NExAASCCIIAAhEAGAAEMW4kAYPnwwIKw/BBTpwTvB+IAxIfghUfW.."
    }
    
    
  2. REST 명령어의 JSON 출력에는 합성된 오디오가 base64 인코딩 형식으로 들어 있습니다. audioContent 필드의 내용을 synthesize-output-base64.txt라는 새 파일에 복사합니다. 새 파일은 다음과 같이 표시됩니다.

    //NExAARqoIIAAhEuWAAAGNmBGMY4EBcxvABAXBPmPIAF//yAuh9Tn5CEap3/o
    ...
    VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
    
  3. synthesize-output-base64.txt 파일의 내용을 synthesized-audio.mp3라는 새 파일에 디코딩합니다. base64 디코딩에 대한 자세한 내용은 Base64 인코딩 오디오 콘텐츠를 참조하세요.

    base64 synthesize-output-base64.txt --decode > synthesized-audio.mp3
    
  4. 오디오 애플리케이션 또는 오디오 기기에서 synthesized-audio.mp3의 내용을 재생합니다. 또한 file://my_file_path/synthesized-audio.mp3와 같은 파일이 포함된 폴더로 이동하여 Chrome 브라우저에서 synthesized-audio.mp3를 열고 오디오를 재생할 수도 있습니다.

삭제

불필요한 Google Cloud Platform 요금을 피하려면 GCP Console을 사용하여 필요하지 않은 프로젝트를 삭제합니다.

다음 단계

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Cloud Text-to-Speech API
도움이 필요하시나요? 지원 페이지를 방문하세요.