
VoxScribe는 윈도우와 안드로이드에서 음성을 기기 안에서 문자로 바꾸는 무료 오픈소스 받아쓰기 앱이다. 윈도우에서는 단축키를 누른 채 말하면 현재 사용 중인 앱에 글자가 입력되고, 안드로이드에서는 키보드 위에 뜨는 버튼으로 받아쓸 수 있다. 음성은 서버로 전송되지 않으며, MIT 라이선스로 제공된다.
윈도우에서 사용하기
윈도우에서는 기본 단축키 F9를 누른 채 말하고 손을 떼면, 변환하고 정리한 문장이 현재 포커스된 창에 직접 입력된다. 트레이 메뉴의 Change Hotkey...에서 단축키를 바꿀 수 있으며, 클립보드에 붙여넣는 방식이 아니어서 기존에 복사한 내용을 덮어쓰지 않는다. 앱은 시스템 트레이에서 실행되고, 녹음 중인지 변환 중인지를 작은 상태 표시기로 보여준다.
최신 설치 파일은 Releases 페이지에서 받을 수 있다. 패키지 관리자를 이용하려면 Windows 10·11에 포함된 winget에서 winget install ahmedhmam1994.VoxScribe를 실행한다. Scoop으로 설치할 때는 Scoop을 이용해 다음 명령을 실행한다.
scoop bucket add voxscribe https://github.com/ahmedhmam1994/scoop-voxscribe scoop install voxscribe
설치 프로그램은 관리자 권한 없이 현재 사용자 계정에 설치된다. 처음 실행할 때 Hugging Face에서 수백 MB 크기의 Whisper 음성 모델을 내려받으므로 인터넷 연결이 한 번 필요하다. 이후에는 오프라인으로 받아쓸 수 있다. 요구 사항은 Windows 10 또는 11, 작동하는 마이크, 앱과 내려받은 모델을 위한 약 1GB의 여유 디스크 공간이다.
VoxScribe는 키보드 단축키 입력을 감지하고 글자를 입력하는 서명되지 않은 새 앱이므로, 첫 실행 때 Windows SmartScreen이 “Windows에서 PC를 보호했습니다”라는 경고를 표시할 수 있다. 안내에 따라 More info를 누른 뒤 Run anyway를 선택하면 실행할 수 있다고 프로젝트는 설명한다. 현재 설치 프로그램은 서명되지 않았으며, VoxScribe는 SignPath Foundation의 오픈소스 프로그램을 통해 무료 인증서를 신청하고 있다. 관련 정책은 CODE_SIGNING.md에서 확인할 수 있다. 유료 대안으로는 CA에서 발급하는 OV/EV 인증서(SSL.com, Sectigo 등, 연간 약 70~400달러)와 하드웨어 토큰이 필요 없는 사용량 기반 Azure용 Microsoft Trusted Signing이 소개돼 있다. 빌드 후 scripts\sign_release.ps1을 실행하며, 구체적인 사용법은 스크립트 머리말에 적혀 있다.
안드로이드에서 사용하기
안드로이드 앱은 텍스트 입력란을 누르면 키보드 위에 작은 플로팅 버튼을 표시한다. 버튼을 길게 누르거나 눌러 녹음한 뒤 말하면 입력란에 글자가 들어간다. 기존에 사용하는 키보드와 함께 쓸 수 있고, 비행기 모드에서도 작동한다.
현재 앱은 플레이스토어가 아닌 APK로 제공된다. Android 1.1.1 릴리스에서 VoxScribe-Android-1.1.1.apk를 내려받아 열면 된다. 안드로이드는 브라우저나 파일 관리자에서 설치하는 것을 허용할지 묻는다. 자동 업데이트를 받으려면 Obtainium에 저장소를 추가하고, Add App에서 저장소 URL을 붙여 넣은 뒤 Filter release titles by regular expression을 Android로 설정한다. 그러면 윈도우 릴리스는 건너뛴다.
지원 조건은 Android 8 이상인 64비트 휴대전화다. 음성 모델이 앱에 포함돼 있어 내려받는 파일 크기는 약 115MB이며, 설치 후 비행기 모드에서도 사용할 수 있다. 앱은 마이크, 접근성 서비스, 다른 앱 위에 표시하는 권한을 요청하고 설정을 안내한다. 다른 앱에 글자를 입력하려면 접근성 서비스가 필요하다고 설명한다. 플로팅 버튼을 눌러 녹음을 시작·중지하거나 버튼을 누른 채 말할 수 있다. 버튼을 화면 아래쪽으로 끌어 놓으면 10분 동안 숨길 수 있으며, 비밀번호나 PIN 입력란에는 나타나지 않는다.
안드로이드에서도 음성 명령, 단어 수정, 단어 대체와 내보내기·가져오기를 사용할 수 있다. 이메일·웹 주소·숫자 입력란에 맞춘 변환도 지원한다. 예를 들어 “sam at gmail dot com”은 sam@gmail.com으로 입력된다. 새로운 안드로이드 버전이 공개되면 앱에 업데이트 배너와 다운로드 버튼이 표시된다. 안드로이드 소스는 android/voxscribe_app에 있으며, 앱 화면에는 Flutter, 플로팅 버튼과 입력 서비스 및 음성 엔진에는 Kotlin을 사용한다.
받아쓰기·정리 기능
VoxScribe는 CPU에서 faster-whisper를 실행해 음성을 로컬에서 변환한다. “um”, “uh”, “like”, “you know” 같은 군더더기 말은 유료 AI API를 호출하지 않고 규칙 기반으로 정리한다. “period”, “new line”, “question mark” 같은 음성 명령으로 문장부호를 입력할 수 있고, “scratch that”이나 “delete last word”로 방금 입력한 내용을 되돌릴 수 있다. “capitalize that”, “all caps”, “replace X with Y”로 대소문자나 단어를 바꾸며, 선택 기능인 “send it”은 Enter 키를 누른다.
이름이나 전문용어를 위한 사용자 지정 어휘 목록과, 반복해서 잘못 인식하는 말을 고치는 단어 대체 목록도 제공한다. 변환 기록에서 단어를 마우스 오른쪽 버튼으로 눌러 항상 바꾸도록 설정할 수 있다. 두 목록은 파일 하나로 내보내거나 가져올 수 있고, 안드로이드 앱에서도 읽을 수 있다.
음성 모델은 속도에 따라 Fast와 기본값인 Balanced를 제공한다. Pro에서는 Large turbo를 포함해 정확도가 더 높은 모델 세 가지를 추가로 쓸 수 있다. 설정의 Test speed on this PC를 누르면 자신의 음성으로 각 모델의 처리 속도를 측정한다. 단어가 잘못 변환됐을 때는 2분 안에 F8을 눌러 같은 녹음을 다시 처리할 수 있다. 보유한 모델에 따라 무료 Small 또는 Pro의 Medium·Large를 사용하거나, 같은 모델에 더 신중하게 다시 처리할 수 있으며, 달라진 부분만 다시 입력된다.
Chat, Email, Code, Notes 받아쓰기 모드는 글의 종류에 맞춰 문장을 정리한다. Pro에서는 사용 중인 앱에 따라 모드를 자동으로 바꾼다. 예를 들어 채팅 앱에는 Chat, 메일 앱에는 Email을 적용한다. 비밀번호 입력란에서는 글자를 입력하지 않으며, 그곳에서 말한 내용은 기록에도 남기지 않는다.
오디오·영상 자막 만들기
오디오나 영상 파일을 하나씩 또는 폴더째 불러오면 각 파일 옆에 .srt 자막을 만든다. 폴더의 에피소드를 한 번에 처리할 수 있고, 이미 있는 자막 파일은 덮어쓰지 않는다. 처리 보고서에는 저장·건너뜀·실패한 파일이 표시되며, 실패한 파일은 한 번 눌러 재시도할 수 있다. 자막은 단어별 타임스탬프를 기준으로 시간을 맞추고, 일시 정지 구간에서 자르며, 읽기 쉬운 짧은 두 줄을 넘지 않도록 한다. 너무 빨리 읽어야 하거나 긴 침묵을 따르는 자막 구간도 표시한다. 폴더 가져오기는 처음 두 번 무료이며, 이후에는 Pro 기능이다.
안드로이드에서도 오디오와 영상 파일을 변환해 텍스트나 .srt 자막으로 저장할 수 있다. 폴더 전체 처리에는 동일하게 두 번의 무료 실행 제한이 적용된다.
개인정보와 네트워크 연결
프로젝트 설명에 따르면 음성은 기기에서 녹음·변환된 뒤 폐기되며, 음성과 텍스트는 서버로 전송되지 않는다. 텍스트 정리는 기기에서 실행되는 정규식 기반 처리로 이뤄져 AI API를 호출하지 않는다.
네트워크 연결은 첫 실행 때 Whisper 모델을 내려받는 경우, GitHub에서 새 버전을 확인하는 경우, 익명 사용 정보를 보내는 경우, Pro를 구매했을 때 최초로 활성화 요청을 보내는 경우에 사용된다. 익명 사용 정보에는 앱 버전, 운영체제 버전, 무작위 ID가 포함된다. 윈도우에서는 실행할 때마다 전송되고, 안드로이드에서는 하루 최대 한 번 전송된다. 설정에서 이를 끌 수 있다. 자세한 내용은 개인정보 처리방침에 있다.
명령줄·소스 빌드
소스 저장소에서 같은 로컬 엔진을 스크립트로 호출할 수 있다. 명령줄 출력은 표준 출력으로 보내거나 --output 폴더에 저장하며, 이미 있는 파일은 교체하지 않는다. 일반 텍스트는 받아쓰기와 같은 방식으로 정리되고 사용자 지정 단어 대체가 적용된다. --raw를 지정하면 들린 그대로 출력한다. 일반 텍스트와 .srt는 무료이며, .vtt, .md와 정확도가 가장 높은 모델 세 가지는 앱과 마찬가지로 Pro가 필요하다. 전체 옵션은 cli.py --help에서 확인할 수 있다.
소스에서 빌드할 때는 다음 명령을 사용한다.
python -m venv venv venv\Scripts\pip install -r requirements.txt venv\Scripts\python.exe main.py
구조와 PyInstaller·Inno Setup을 이용한 빌드 및 패키징 명령은 CLAUDE.md에 정리돼 있다. 코드 서명 정책은 CODE_SIGNING.md에서 볼 수 있다. 라이선스는 MIT다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요