현대의 디지털 환경에서는 음성 인식 기술이 점점 더 중요해지고 있습니다. 특히, 빠르고 효율적인 텍스트 변환이 필요한 많은 사람들에게 음성 인식 소프트웨어는 필수 도구로 자리잡고 있습니다. 그런 점에서 FluidVoice는 주목할 만한 오픈소스 프로젝트입니다. 이 애플리케이션은 macOS에서 작동하며, 오프라인 환경에서도 음성을 문자로 변환할 수 있는 기능을 제공합니다. 이제 FluidVoice가 어떻게 작동하는지, 그리고 여러분의 작업 흐름을 어떻게 향상시킬 수 있는지 살펴보겠습니다.
FluidVoice 소개
FluidVoice는 빠른 오프라인 음성 인식 애플리케이션으로, 다양한 AI 음성 인식 모델을 활용하여 사용자가 말하는 내용을 실시간으로 텍스트로 변환합니다. 이 프로젝트는 완전 무료이며 오픈소스로 제공되어, 누구나 코드에 기여할 수 있습니다. 현재 GitHub에서 1,875개의 스타를 기록하며 많은 개발자와 사용자들로부터 긍정적인 반응을 얻고 있습니다.
주요 기능과 특징
FluidVoice의 주요 기능은 다음과 같습니다:
- 실시간 변환: 음성을 입력하면 즉시 텍스트로 변환됩니다.
- 다양한 음성 모델 지원: Parakeet Flash, Cohere Transcribe, Whisper 등 여러 음성 인식 모델을 활용하여 다양한 언어와 상황에 맞게 최적화된 인식을 제공합니다.
- 명령 모드: 명령어를 통해 macOS에서 다양한 작업을 수행할 수 있습니다.
- 글쓰기 모드: 모든 애플리케이션의 텍스트 박스에 직접 입력할 수 있습니다.
- 스마트 타이핑: 입력을 빠르게 처리하여 사용자의 작업을 지원합니다.
- 메뉴 바 통합: 손쉬운 접근성을 위해 메뉴 바에 통합되어 있습니다.
- 자동 업데이트: 지속적인 업데이트를 통해 최신 기능을 쉽게 이용할 수 있습니다.
- GitHub Releases 페이지로 이동하여 최신 버전을 다운로드합니다.
- 다운로드한
.dmg파일을 실행하여 애플리케이션을 설치합니다. - 설치가 완료되면 애플리케이션을 실행합니다.
- 애플리케이션을 실행한 후, 원하는 음성 인식 모델을 선택합니다.
- 글로벌 핫키를 설정하여 언제든지 음성 인식을 시작할 수 있습니다.
- 말하기 시작하면 실시간으로 텍스트가 생성됩니다.
- 회의 기록: 회의 중에 FluidVoice를 사용하여 실시간으로 대화를 기록하고, 나중에 쉽게 참고할 수 있습니다.
- 작업 자동화: 명령 모드를 활용해 음성으로 다양한 작업을 수행할 수 있습니다. 예를 들어, "열기"라고 말하면 특정 애플리케이션을 실행할 수 있습니다.
- 다국어 지원: 다양한 언어를 지원하는 FluidVoice를 통해 여러 언어로 음성을 인식하고 텍스트로 변환하여 글로벌 팀과의 협업을 원활하게 할 수 있습니다.
설치 및 기본 사용법
FluidVoice의 설치는 간단합니다. 아래의 단계에 따라 설치하세요.
기본 사용법
FluidVoice를 사용하여 음성을 텍스트로 변환하는 방법은 다음과 같습니다.
아래는 Swift로 간단한 음성 인식 모델을 설정하는 예제입니다.
import Speech
class VoiceRecognizer {
private let speechRecognizer = SFSpeechRecognizer(locale: Locale(identifier: "en-US"))
private var recognitionRequest: SFSpeechAudioBufferRecognitionRequest?
private var recognitionTask: SFSpeechRecognitionTask?
func startListening() {
recognitionRequest = SFSpeechAudioBufferRecognitionRequest()
guard let recognitionRequest = recognitionRequest else { return }
let audioSession = AVAudioSession.sharedInstance()
try? audioSession.setCategory(.record, mode: .default)
try? audioSession.setActive(true, options: .notifyOthersOnDeactivation)
let inputNode = audioSession.inputNode
recognitionRequest.shouldReportPartialResults = true
recognitionTask = speechRecognizer?.recognitionTask(with: recognitionRequest) { result, error in
if let result = result {
let spokenText = result.bestTranscription.formattedString
print("Recognized Text: \(spokenText)")
}
if error != nil || (result?.isFinal ?? false) {
inputNode.removeTap(onBus: 0)
audioSession.setActive(false, options: .notifyOthersOnDeactivation)
}
}
let recordingFormat = inputNode.outputFormat(forBus: 0)
inputNode.installTap(onBus: 0, bufferSize: 1024, format: recordingFormat) { buffer, when in
recognitionRequest.append(buffer)
}
inputNode.prepare()
try? inputNode.startRunning()
}
}
이 코드는 음성을 실시간으로 인식하고, 인식된 텍스트를 출력하는 간단한 음성 인식 기능을 구현합니다.
FluidVoice의 활용 시나리오
FluidVoice는 다양한 상황에서 유용하게 활용될 수 있습니다. 예를 들어,
비슷한 도구와 비교
FluidVoice는 여러 유사 도구와 비교했을 때 몇 가지 장점을 가지고 있습니다. 예를 들어, Google Speech-to-Text와 같은 클라우드 기반 서비스에 비해 FluidVoice는 오프라인에서 작동하므로 인터넷 연결이 필요 없습니다. 또한, 오픈소스이므로 개발자들이 직접 코드에 기여하거나 수정할 수 있는 유연성을 제공합니다.
마무리
FluidVoice는 macOS 사용자를 위한 강력한 음성 인식 도구로, 실시간 텍스트 변환과 효율적인 작업 흐름을 지원합니다. 이 애플리케이션은 기술이 필요한 모든 개발자와 사용자에게 유용할 것입니다. 음성 인식 기능을 필요로 하는 분들은 꼭 한번 사용해보시길 추천드립니다.
자세한 내용과 소스를 확인하고 싶으시다면 FluidVoice GitHub 페이지를 방문해 보세요.