반응형
Spring Boot 응용 프로그램에서 STT(Speech-to-Text) 기능을 구현하려면 Google Cloud Speech-to-Text API를 사용할 수 있습니다. API는 Google Cloud Console에서 얻을 수 있는 API 키를 사용하여 액세스할 수 있습니다.
1. 다음 종속성을 pom.xml 파일에 추가합니다.
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-speech</artifactId>
<version>1.105.0</version>
</dependency>
2. 응용 프로그램에서 API 키를 설정합니다.
@Value("${google.cloud.api.key}")
private String apiKey;
@Bean
public SpeechClient speechClient() throws IOException {
return SpeechClient.create().setCredentials(
ServiceAccountCredentials.fromStream(new ByteArrayInputStream(apiKey.getBytes())));
}
3. 코드에서 API 사용.
@Autowired
private SpeechClient speechClient;
public String transcribeAudio(byte[] audioBytes) throws Exception {
// Configure request with local raw PCM audio
RecognitionConfig config =
RecognitionConfig.newBuilder()
.setEncoding(RecognitionConfig.AudioEncoding.LINEAR16)
.setSampleRateHertz(16000)
.setLanguageCode("en-US")
.build();
RecognitionAudio audio = RecognitionAudio.newBuilder().setContent(ByteString.copyFrom(audioBytes)).build();
// Use blocking call to get transcript
RecognizeResponse response = speechClient.recognize(config, audio);
List<SpeechRecognitionResult> results = response.getResultsList();
StringBuilder transcript = new StringBuilder();
for (SpeechRecognitionResult result : results) {
transcript.append(result.getAlternativesList().get(0).getTranscript());
}
return transcript.toString();
}
반응형
'Spring Boot' 카테고리의 다른 글
[React + Spring Boot ] Spring Boot 백엔드를 사용하여 React 앱에서 파일 업로드를 구현하는 방법 (0) | 2023.02.09 |
---|---|
[Google API + Springboot] TTS(Text-to-Speech) 기능을 구현 (0) | 2023.02.09 |
[Google API + Springboot] Google Cloud Translation API 번역 (0) | 2023.02.09 |
[VUE.JS] Axios를 사용하는 Vue.js의 파일 다운로드 구성 (0) | 2023.02.09 |
[VUE.JS] Axios를 사용하는 Vue.js의 파일 업로드 (0) | 2023.02.09 |