본문 바로가기
AI Project/Edge AI Agent - 음성처리(연구,분석,검증))

[비교/검증-1] #3. Edge Agent AI 음성처리 : STT + 화자분리 경량엔진 3종 비교 + Pyannote 모델

by 으노으뇨 2026. 4. 29.
728x90
SMALL

제 포스팅은 AI가 작성한게 아닌 한글자 한글자 타자를 쳐서 작성한 포스팅입니다. 구독 좋아요 댓글은 힘이됩니다.

이번에 포스팅을 할 주제는!

STT 화자분리입니다!!!

화자분리란 

단순히 "무슨 말을 했는지(STT)"를 넘어 "누가 언제 말했는지"를 알아내는 기술입니다.

AMEVA 프로젝트가 진정한 비서로 거듭나려면 회의록에서

"A: 밥 먹었어? B: 응"을 구분해야 하니까 필수적인 관문입니다.

화자 분리는 STT처럼 단순히 소리를 텍스트로 바꾸는 원스텝(One-step) 공정이 아닙니다. 보통 3단계 파이프라인을 거칩니다.

  1. VAD (Voice Activity Detection): 어디서부터 어디까지가 사람 목소리인지 자른다.
  2. Embedding (Voiceprint Extraction): 잘라낸 목소리에서 사람의 '성대 지문(특징 벡터)'을 수치화해서 뽑아낸다.
  3. Clustering: "어? 이 1번 지문이랑 5번 지문 수치가 비슷하네? 둘 다 화자 A로 묶자!" 하고 수학적으로 군집화한다.

우선 지금 초경량 생태계를 먼저 보겠습니다.!!

엔진
이름
화자 분리 방식 램 점유율 구동
가능성
AMEVA 프로젝트 타당성
Sherpa-ONNX 내장 알고리즘
(C++)
~100MB 🟢 매우 높음 파이썬 의존성이 전혀 없고, C++로 모든 것이 컴파일되어 메모리와 속도 밸런스가 모바일 환경에 가장 최적화되어 있습니다.
Whisper.cpp 내장 옵션
(tinydiarize/stereo)
~300MB
(tiny/base)
🟢 높음 설치가 가장 간편하고 빠릅니다. 단, 화자 분리 기능이 완벽하지 않고 특정 언어(영어)에 특화된 경향이 있어 보조 도구로 적합합니다.
Vosk (Kaldi) 내장
(Speaker Identification)
~50MB 🟢 매우 높음 구형 기술이지만 안드로이드 최적화는 타의 추종을 불허합니다. 배터리와 메모리를 극도로 아껴야 할 때 훌륭한 대안입니다.
MediaPipe 모델 튜닝 필요 ~150MB 🟡 보통 STT 기능보다는 명령어 인식에 가깝고, 긴 회의록이나 대화를 텍스트로 변환하기에는 한계가 큽니다.
Faster-Whisper Pyannote / Silero 연동 ~1.5GB
(small)
🔺 낮음
(OOM 위험)
아무리 줄여도 파이썬 환경(Termux+PRoot)에서 파이토치 생태계를 불러와야 하므로, 2GB 가용 램에서는 수시로 강제 종료(Killed)될 확률이 높습니다.
NVIDIA NeMo MarbleNet / Tiamat 2GB 초과 ❌ 불가능 전문 서버용 모델입니다. 엑시노스에서 ONNX/TFLite로 변환해 돌리더라도 메모리 한계를 극복하기 불가능에 가깝습니다.
PicoVoice Falcon
(Diarization)
~50MB 🟢 매우 높음 성능은 압도적이나 완전 오프라인/무료/오픈소스라는 AMEVA 프로젝트의 철학과 맞지 않습니다.

이렇게 총 3개의 분리엔진으로 비교해보겠습니다!!

Sherpa-ONNX, Whisper.cpp + tinydiarize/stereo + Vosk (Kaldi)

그리고 추가로 핫했던 Pyannote 모델까지!!!

앞으로 이렇게 3가지 엔진+ 1개 모델을 직접 돌려보면서 중간중간 트러블 슈팅도 하면서 포스팅하겠습니다. 


화자가 많은 영상준비

저는 머니코믹스의 영상을 이용해서 진행해보곘습니다.

https://www.youtube.com/watch?v=E-lbWMQmOBo

yt-dlp -x --audio-format wav \
  --download-sections "*00:01:00-00:02:00" \
  --postprocessor-args "ffmpeg:-ar 16000 -ac 1" \
  "https://www.youtube.com/watch?v=E-lbWMQmOBo" -o samples/test_cut_2.wav

비교할 스크립트! 약 1분대의 3명의 화자가 있으며 (남2, 여1) 남자는 각각 목소리톤이 다르다. 그리고 적당히 오디오도 물리면서 빠르고 느리고 혼자말하는 구간도 조금은 있고 해서 딱 좋을것 같아서 선정했습니다.

0:4747초아니요. 주식 투자가 단순히 돈을 벌기 위함은 아니라고 생각해요. 이제는. 그냥 취미 생활인 거지.
챕터 2: 전남친 같은 존재들, 잘 지내?
0:5555초오늘 드디어 이게 얼마만이야.
0:5959초우리 구광고주님 오늘은 민간이신 분으로 오셨죠? 맞습니다. 맞습니다.
1:031분 3초그러면은 일단은 신비주의에 휩사인 한 분은 우선은 나중에 소개해 드리기로 하고 오늘 롱쇼 증권 특집 자 두 분 소개부터 한번 부탁드리겠습니다.
1:121분 12초안녕하세요 여러분. LS 증권 팀 이름이 바뀌었습니다. 멀티 솔루션 팀의 정상민 선임 매니저입니다. 반갑습니다.
1:211분 21초잠깐 뭐 뭐 뭐 뭐라고요? 멀티 멀티 에셋 솔루션 멀 멀 머레솔 팀 멀 어 이름 괜찮은데 줄이니까 그죠
1:291분 29초머레솔 팀은 어떤 걸 하시죠 그 많이 하겠다는 야망을 좀 담아 가지고 저희가 점점 늘어나거든요.
1:341분 34초처음에 해외 선물이었다가 해외 파장 상품이었다가 글로벌 상품이었다가 이제 뭐 할까 하다가 머솔로 정착하기를 했습니다.
1:421분 42초아 축하드립니다. 머레솔의 매니저님 정상민 매니저님 우리 모그누라는 별명이 있었는데 이제 그 별명을 사용을 할 수 없게 되거든요.
1:501분 50초그러니까 목보 예 목보금으로 해 주십시오. 우리 티커자 님 어서 오세요.
1:561분 56초안녕하세요. 글로벌 마켓 영업팀 김기현 선임 매니저입니다. 반갑습니다.

감사합니다.

728x90
LIST

댓글