Subtitle Edit – Audio to text 오류 해결 방법 (5000번대 GPU 문제)

얼마 전에 RTX 5080을 탑재한 새 PC를 구입했습니다. 그리고 며칠 후 자막을 만들 일이 생겨서 Subtitle Edit을 실행했는데 Audio to text 오류가 발생했습니다. 기존 구형 PC에서는 없었던 문제입니다.

다행히 간단한 해결책이 있었습니다. 혹여나 RTX 5080 GPU의 드라이버 문제라고 생각해서 같은 문제를 방치해 두신 분이 있다면 이 방법을 적용해보세요.

제가 경험한 현상은 다음과 같습니다.

  • Generate 버튼을 누른 후 예상 시간보다 훨씬 빨리 작업이 종료됨
  • 생성된 .srt 파일을 확인해보면 파일에 아무것도 작성되어 있지 않음
Subtitle Edit 오류 현상 설명을 위한 스크린샷. Audio to text 변환 완료 알림 대화상자가 표시돼 있다.
Subtitle Edit의 Audio to text 변환 완료 알림 대화상자
Subtitle Test.srt 파일의 속성 대화상자를 캡쳐한 이미지. 크기가 7바이트, 디스크 할당 크기가 0바이트로 표시되고 있다.
.srt 파일의 디스크 할당 크기가 0이다.

동작 환경은 다음과 같습니다.

  • Engine: Purfview’s Faster-Whisper-XXL
  • GPU: NVIDIA RTX 5080
  • 시스템: Windows 11 Home, NVIDIA 그래픽 드라이버 576.88, CUDA Toolkit 12.9, CUDNN 9.10
Windows11 설정의 '설치된 앱' 화면에서 'cu'를 입력해서 검색한 상황을 보여주는 스크린샷. NVIDIA CUDNN 및 CUDA Toolkit  설치 상황을 보여준다.
동작 환경: NVIDIA CUDA Toolkit 12.9, CUDNN 9.10

먼저 해결 방법을 알려드립니다. 방법은 간단합니다. Audio to text 화면에서 Advanced를 누르면 나오는 입력줄에 옵션 하나를 추가하면 됩니다.

  1. Advanced 버튼 클릭
  2. Line arguments 입력줄에 --compute_type float32 옵션 추가

배경 지식이 없는 분들을 위해 부연 설명을 드립니다. 기존에 직접 아무것도 작성한 적이 없다면 디폴트 옵션으로 --standard--beep_off 정도만 입력되어 있을 것입니다. 이 항목들은 오류 현상과는 관련이 없어서 있어도 되고 없어도 되는 옵션입니다. 입력하는 순서도 중요하지 않습니다. 새로운 옵션을 입력할 때는 스페이스 바를 눌러서 한 칸 떨어뜨린 후 입력하면 됩니다.

이제 Generate를 하면 정상적으로 .srt 파일이 생성될 겁니다.

PC 프로그램 Subtitle Edit의 Audio to text 창에서 Advanced 버튼을 빨간색 박스와 화살표로 표시한 이미지이다.
Audio to text 창의 Advanced 버튼을 클릭한다
Whisper의 line argument 설정 줄에 --compute_type float32를 입력한 상태를 캡쳐한 이미지
--compute_type float32 입력

문제가 발생하는 이유는 RTX 5080처럼 5000번대 NVIDIA GPU를 사용하는 경우에 cuBLAS(GPU 가속용 선형대수 연산 라이브러리)가 기본적인 연산 타입을 지원하지 않기 때문입니다. 사용자가 별도의 옵션을 지정하지 않을 경우 Faster-Whisper는 자동으로 int8_float16 연산 타입을 적용합니다. 원래대로라면 이 타입에서도 문제 없이 동작해야 하는데 cuBLAS 라이브리가 아직 5000번대 GPU에 대해서는 안정적으로 지원을 못하고 있습니다.

궁금하신 분들을 위해 하나씩 자세히 살펴보겠습니다.

3.1 문제 발생시 작업이 빨리 끝나는 이유

일반적으로 Audio to text 창에서 영상 파일을 추가하고 Generate 버튼을 누르면 다음과 같은 순서로 작업이 진행됩니다.

  1. Subtitle Edit이 Faster-Whisper-XXL.exe를 호출
  2. 영상 파일에서 음성 데이터를 추출 (임시 .wav 파일 생성)
  3. Transcribe 사전 작업 실행 (ex: 라이브러리 로드, VAD Filter 적용)
  4. Transcribe 진행
  5. 파일 저장. 임시 파일 삭제.

본래대로라면 1~5를 모두 수행해야 합니다. 우리가 해결하려는 문제가 발생할 때는 1, 2번 단계만 진행하고 끝납니다. Transcribe 작업을 진행하지 않았기 때문에 새로 생긴 .srt 파일에도 아무 내용이 없는 상태로 생성됩니다.

이건 어떻게 알 수 있을까요? 그리고 왜 3번 부터는 진행하지 못할까요?

※ Generate를 실행하기 전 선택한 엔진에 따라 Faster-Whisper-XXL.exe 대신 다른 이름의 프로세스가 실행될 수도 있습니다. 저는 Purfview’s Faster-Whisper-XXL 엔진을 기준으로 설명하고 있으니 참고 부탁드립니다. 작업 관리자에서 프로세스 실행 여부를 확인할 수 있습니다.

작업 관리자에서 Faster-Whisper-XXL 프로세스를 빨간색 박스로 표시한 스크린샷
Windows 작업 관리자의 Standalone Faster-Whisper-XXL 프로세스

3.2 F2 키를 이용해서 디버그 메시지 확인하기

Audio to text 창에서 F2 키를 눌러보시기 바랍니다. 그러면 UI가 바뀌면서 빈 회색 화면만 남고 버튼들이 사라집니다. Generate 버튼을 누르고 작업이 진행되고 있을 때 F2 키를 누르면 Audio to text 기능의 세부 진행 사항을 알 수 있습니다.

앞서 Subtitle Edit이 Faster-Whipser-XXL.exe를 호출한다고 한 점 기억하시나요? Audio to text를 실제로 수행하는 건 Subtitle Edit이 아니라 Faster-Whisper-XXL.exe입니다. Subtitle Edit은 단지 사용자가 편리하게 쓸 수 있도록 UI만 제공하는 셈이죠.

F2키를 눌렀을 때 나오는 텍스트는 Faster-Whisper-XXL.exe가 작업을 할 때 출력하는 디버그 메시지입니다. Subtitle Edit이 이를 회색 화면에 뿌려주는 것이죠.

Subtitle Edit의 Audio to text 기능 창에서 F2를 누르면 버튼과 입력줄이 사라지고 빈 회색 화면으로 바뀐다. 이 화면을 찍은 스크린샷.
Audio to text 창에서 F2를 누르면 빈 회색 화면으로 바뀐다.

3.3 오류 문구 “RuntimeError: CUBLAS_STATUS_NOT_SUPPORTED

오류가 발생할 때 어떤 로그가 출력되는지 확인해봅시다.

Subtitle Edit의 Whisper 오류 메시지 스크린샷. CUBLAS_STATUS_NOT_SUPPORTED 오류가 표시되어 있다.
Faster-Whisper-XXL 실행 중 발생한 cuBLAS 지원 오류

cuBLAS는 NVIDIA가 제공하는 GPU 가속을 위한 선형대수 연산 라이브러리 입니다. BLAS는 Basic Linear Algebra Subprograms로 풀어쓸 수 있고, CUDA 환경에서 동작해서 앞에 “cu”가 붙습니다.

로그를 보니 이 라이브러리가 문제의 원인인 듯합니다.

3.4 cuBLAS 호환성 이슈

원인 검색을 해보다가 다음 글을 찾았습니다.

GitHub faster-whisper CUDA 호환성 이슈 토론글 스크린샷
GeForce RTX 50XX GPU에서 발생하는 cuBLAS 오류 관련 GitHub 이슈
https://github.com/OpenNMT/CTranslate2/issues/1865

글의 작성자는 Subtitle Edit과 연결되어 호출되는 Standalone Faster-Whisper-XXL 프로그램의 개발자입니다. 그에 따르면 Faster-Whisper 모델은 compute_type을 자동으로 int8_float16으로 지정한다고 합니다. 원래대로라면 정상 동작해야 하는데 5000번대 GPU에서는 오류가 발생합니다. 그리고 본래 compute_type으로 지정할 수 있는 형식은 7가지인데 5000번대 GPU는 세 개의 타입에서만 제대로 동작한다고 합니다.

위 글은 2025년 3월에 작성된 글입니다. 이후 4월에 작성한 다른 글에서 개발자는 compute_type이 기본으로 float16이 적용되도록 수정하겠다는 글을 남겼습니다. 하지만 해당 변경은 아직 반영이 안 된 듯 최신 버젼에서도 여전히 int8_float16이 기본으로 적용되고 있습니다.

faster-whisper RTX 50XX GPU compute type 호환성 이슈 GitHub 댓글 스크린샷
RTX 50XX 시리즈 GPU 호환성 문제 해결 방안에 대한 개발자 답변
https://github.com/Purfview/whisper-standalone-win/issues/403

참고로 compute_type은 모델이 연산을 할 때 숫자 데이터의 형태와 정밀도를 어떻게 정할지 선택하는 옵션입니다. 이 값은 결과의 정밀도, 메모리 효율, 연산 속도와 관련이 있습니다.

compute_type 옵션 설정값5000번대 GPU 동작 여부
int8X
int8_float16 (auto)X
int8_float32X
int8_bfloat16X
float16정상 동작
float32정상 동작
bfloat16정상 동작

3.5 –verbose 옵션 지정 / compute_type 적용 값 확인

현재 작업에 어느 compute_type이 적용되었는지 확인하려면 어떻게 하면 될까요? 디버그 메시지를 보면 됩니다.

Faster-Whisper-XXL.exe가 출력하는 디버그 메시지는 옵션을 이용해서 얼마나 자세히 출력할 지 정할 수 있습니다. 이를 위해 –verbose 옵션을 사용합니다.

  • Audio to text 창에서 Advanced 버튼을 누르고 입력줄에 --verbose true를 추가합니다.
Whisper Advanced line arguments 입력중에 verbose 옵션을 설정하고 빨간색 박스로 표시한 스크린샷
--verbose true 파라미터 입력

–verbose 옵션은 true 또는 false로 지정합니다. 입력줄에 –verbose 항목이 없다면 default로 false가 지정됩니다. 더 세부적인 내용까지 출력하려면 true로 지정해야 합니다.

옵션 값의미 및 출력 내용
–verbose false간결한 출력
전체적인 진행 상황만 표시
–verbose true세부 정보 출력
인식된 전체 텍스트, 각 세그먼트별 결과, 세부 상태 표시

이제 다시 로그를 확인해보면 전보다 더 많은 내용이 출력되는 것을 확인할 수 있습니다. 초반부에 GPU 환경과 관련된 내용이 출력되는데 이 중 “Selected compute type: int8_float16″이라는 문구가 있습니다.

Faster-Whisper-XXL 디버그 메시지 중 compute type 관련 사항을 빨간색 박스로 표시한 이미지
compute_type으로 int8_float16 타입이 선택되어 있다.

3.6 compute_type 값 변경

해결 방법은 앞서 알려드렸죠? compute type을 float16, float32, bfloat16 중 하나로 선택하면 됩니다. 저는 float32를 지정해놓고 사용하는 중입니다.

처음에는 당황스러웠지만 막상 해결 방법은 간단한 사례였습니다. 솔루션이 간단함에도 경우에 따라서는 문제의 단서를 찾지 못해서 검색을 해볼 수 없었던 분들도 계실 것입니다. 예를 들어 단순히 F2 키로 로그 확인을 하는 방법을 몰랐다면 cuBLAS 라이브러리가 문제인지 알 수 없었겠죠. 저도 처음에는 Subtitle Edit에서 F2 키를 눌러서 확인하지 않고 터미널을 통해 Faster-Whisper-XXL을 직접 실행해서 확인했답니다. 아무쪼록 이 포스트가 도움이 되었기를 바랍니다.

Scroll to Top