이 페이지에서는 Speech-to-Text를 사용하여 2개 이상 채널이 포함된 오디오 파일을 텍스트로 변환하는 방법을 설명합니다. 다중 채널 인식은 전부는 아니라도 Speech-to-Text에서 지원되는 대부분의 오디오 인코딩에서 사용할 수 있습니다. 각각의 인코딩 유형의 오디오 파일에서 여러 채널을 인식하는 방법은 audioChannelCount
를 참조하세요.
오디오 데이터에는 일반적으로 레코딩에 포함된 각 화자의 채널이 포함됩니다. 예를 들어 두 명이 전화로 이야기하는 오디오의 경우에는 개별적으로 레코딩되는 2개의 채널이 포함될 수 있습니다.
여러 채널이 포함된 오디오 데이터를 텍스트로 변환하려면 Speech-to-Text API에 대한 요청에 채널 수를 제공해야 합니다. 요청의 audioChannelCount
필드를 오디오에 있는 채널 수로 설정합니다.
여러 채널이 포함된 요청을 보내면 Speech-to-Text가 오디오에 있는 서로 다른 채널을 식별하는 결과를 반환하며 channelTag
필드를 사용하여 각 결과를 대신하는 항목에 라벨을 지정합니다.
다음 코드 샘플에서는 여러 채널이 포함된 오디오를 텍스트로 변환하는 방법을 보여줍니다.
프로토콜
자세한 내용은 speech:recognize
API 엔드포인트를 참조하세요.
동기 음성 인식을 수행하려면 POST
요청을 하고 적절한 요청 본문을 제공합니다. 다음은 curl
을 사용한 POST
요청의 예시입니다. 이 예시에서는 Google Cloud CLI를 사용하여 액세스 토큰을 생성합니다. gcloud CLI 설치에 대한 안내는 빠른 시작을 참조하세요.
다음 예시에서는 curl
을 사용하여 POST
요청을 보내는 방법을 보여줍니다. 이 예시에서는 요청의 본문에서 오디오 샘플에 있는 채널 수를 지정합니다.
curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "config": { "encoding": "LINEAR16", "languageCode": "en-US", "audioChannelCount": 2, "enableSeparateRecognitionPerChannel": true }, "audio": { "uri": "gs://cloud-samples-tests/speech/commercial_stereo.wav" } }' "https://speech.googleapis.com/v1/speech:recognize" > multi-channel.txt
요청이 성공하면 서버는 200 OK
HTTP 상태 코드와 응답을 JSON 형식으로 반환하여 multi-channel.json
라는 파일에 저장합니다.
{ "results": [ { "alternatives": [ { "transcript": "hi I'd like to buy a Chromecast I'm always wondering whether you could help me with that", "confidence": 0.8991147 } ], "channelTag": 1, "languageCode": "en-us" }, { "alternatives": [ { "transcript": "certainly which color would you like we have blue black and red", "confidence": 0.9408236 } ], "channelTag": 2, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " let's go with the black one", "confidence": 0.98783094 } ], "channelTag": 1, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " would you like the new Chromecast Ultra model or the regular Chromecast", "confidence": 0.9573053 } ], "channelTag": 2, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " regular Chromecast is fine thank you", "confidence": 0.9671048 } ], "channelTag": 1, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " okay sure would you like to ship it regular or Express", "confidence": 0.9544821 } ], "channelTag": 2, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " express please", "confidence": 0.9487205 } ], "channelTag": 1, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " terrific it's on the way thank you", "confidence": 0.97655964 } ], "channelTag": 2, "languageCode": "en-us" }, { "alternatives": [ { "transcript": " thank you very much bye", "confidence": 0.9735077 } ], "channelTag": 1, "languageCode": "en-us" } ] }
Go
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Go API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Java
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Java API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Node.js
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Node.js API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
Python
Speech-to-Text용 클라이언트 라이브러리를 설치하고 사용하는 방법은 Speech-to-Text 클라이언트 라이브러리를 참조하세요. 자세한 내용은 Speech-to-Text Python API 참조 문서를 확인하세요.
Speech-to-Text에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 다음 .NET용 Speech-to-Text 참조 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 다음 PHP용 Speech-to-Text 참조 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 Speech-to-Text 참조 문서를 참조하세요.