# Google Cloud Speech-to-Text API 전환 계획 ## 목표 Web Speech API의 모바일 제한을 해결하고, Google Cloud Speech-to-Text API로 전환하여 모바일과 웹에서 모두 안정적으로 작동하도록 개선 ## 현재 문제점 1. 모바일 Chrome에서 Web Speech API의 `onresult` 이벤트가 발생하지 않음 2. 웹 버전에서 텍스트 중복 문제 발생 (수정 완료) ## 해결 방안 ### 1. Google Cloud Speech-to-Text API 사용 - **장점:** - 모바일과 웹에서 모두 안정적으로 작동 - 더 높은 정확도 - 실시간 스트리밍 지원 - 한국어 지원 우수 - **단점:** - 서버 측 구현 필요 - Google Cloud API 키 필요 - API 사용량에 따른 비용 발생 (무료 할당량 있음) ### 2. 구현 계획 #### 2.1 서버 측 (PHP) - `api/speech_to_text.php` 생성 - Google Cloud Speech-to-Text API 연동 - 오디오 파일 수신 및 변환 - JSON 응답 반환 #### 2.2 클라이언트 측 (JavaScript) - MediaRecorder API로 오디오 녹음 - 실시간 스트리밍 또는 청크 단위 전송 - 서버 응답 받아서 텍스트 표시 - 기존 UI/UX 유지 ### 3. 구현 단계 #### Phase 1: 서버 측 API 구현 1. Google Cloud Speech-to-Text API 설정 2. PHP API 엔드포인트 생성 3. 오디오 파일 수신 및 변환 로직 #### Phase 2: 클라이언트 측 구현 1. MediaRecorder API로 오디오 녹음 2. 실시간 또는 청크 단위 전송 3. 서버 응답 처리 및 텍스트 표시 #### Phase 3: 통합 및 테스트 1. 모바일/웹 호환성 테스트 2. 에러 처리 강화 3. 사용자 경험 개선 ### 4. 필요한 설정 #### Google Cloud 설정 1. Google Cloud 프로젝트 생성 2. Speech-to-Text API 활성화 3. 서비스 계정 키 생성 4. PHP에서 사용할 수 있도록 설정 #### 서버 설정 1. PHP cURL 확장 확인 2. Google Cloud PHP 클라이언트 라이브러리 설치 (선택사항) 3. API 키 또는 서비스 계정 키 파일 위치 설정 ### 5. API 사용 방법 #### 실시간 스트리밍 (권장) - WebSocket 또는 Server-Sent Events 사용 - 실시간으로 오디오 전송 및 텍스트 수신 #### 청크 단위 전송 - 일정 간격으로 오디오 청크 전송 - 각 청크에 대한 텍스트 수신 및 누적 ### 6. 비용 고려사항 - Google Cloud Speech-to-Text 무료 할당량: 월 60분 - 이후 사용량에 따른 과금 - 대안: 무료 할당량 내에서 사용하거나 유료 플랜 고려 ## 다음 단계 1. Google Cloud 프로젝트 설정 확인 2. 서버 측 API 엔드포인트 구현 3. 클라이언트 측 오디오 녹음 및 전송 로직 구현 4. 통합 테스트