본문 바로가기

java

(3)
Google STT(Speech-to-Text) streaming socket 통신 프론트엔드에서  음성 스트림 데이터를 실시간으로 Google STT API로 보내 인식된 문자열을 프론트앤드에 뿌려주려고 한다.이 작업을 하면서 동작을 안하는 문제가 발생했는데, 이를 정리해보려고 한다.  STT 사용 예시는 구글 독스에서 살펴볼 수 있다: https://cloud.google.com/speech-to-text/docs/transcribe-streaming-audio?hl=ko 스트리밍 입력에서 오디오를 텍스트로 변환  |  Cloud Speech-to-Text Documentation  |  Google CloudVertex AI의 최신 멀티모달 모델인 Gemini 1.5 모델을 사용해 보고 최대 2백만 개의 토큰 컨텍스트 윈도우를 사용해 무엇을 빌드할 수 있는지 확인해 보세요. Ver..
FFT(Fast Fourier Transformer) 를 이용해 주파수 추출하기 음성 스트림으로부터 주파수를 추출하는 방법을 알아보자. FastFourierTransformer 라이브러리를 이용하려면 몇가지 기본 개념이 필요하다. 이해하기 어려운 용어나 수학적인 부분은 설명하지않는다. PCM (Pulse Code Modulation)은 아날로그 오디오 신호를 디지털 형태로 변환하는 가장 일반적인 방법 중 하나다. 샘플링 방법에는 여러 가지 유형이 있지만 사실상 PCM 이 표준이며, 오디오 CD, DVD, 그리고 대부분의 디지털 오디오 시스템에서 사용된다.PCM 은 샘플링(Sampling) - 양자화(Quantization) - 인코딩(Coding) 순서로 진행된다. 1. Sample Rate이는 오디오 스트림을 사용해 개발하려고 할때 자주보게 되는 값이다. 오디오를 처리하기 위해 오..
MacOs Arm64 maven build 오류 해결 Java 에서 VAD (Voice Activity Detector)을 사용하려고 하는데 자바에는 VAD를 사용할 마땅한 라이브러리가 없다. 때문에 WebRTC의 VAD를 래핑해서 사용해야하며,  https://github.com/jitsi/jitsi-webrtc-vad-wrapper 에 좋은 라이브러리가 존재한다.위의 라이브러리는 맥OS에서 빌드를 한게 아니라서 따로 클론을 받아 빌드를 해 사용하려고한다.   1.Library/Caches/JNA/temp/jna7333904895487054757.tmp' (fat file, but missing compatible architecture (have 'i386,x86_64', need 'arm64e' or 'arm64')즉, 사용하는 라이브러리 어딘가에서 ..