Eli의 여백

바쁜 나날들 사이에서 생각났던 이런저런 것들을 적어봅니다.

IT/새로운 시도

NVIDIA 글카로 잡음 제거 NVIDIA RTX Voice (GTX도 됨)

Eli♪ 2020. 12. 6. 02:17

 

 

새로운 시도를 해본 계기

주말인데 학위 예비심사 (proposal) 준비를 하기 위해 연구실에 나와서 글을 쓰기로 했다. 그런데 근처 자리에 있는 동료의 말소리가 심히 거슬렸다. 차음이 좀 잘되는 슈어 이어폰을 끼고 겉에 헤드폰을 썼는데도 소리가 새어들어왔다. 안그래도 몇 년 전에 연구실에서 소음문제로 사람들이랑 몇번 싸운적도 있고 해서 이참에 노이즈캔슬링 헤드폰을 장만해야하나 라는 생각이 들었다. 

 

문득 생각이 든게 어차피 마이크도 샀고 한데 마이크로 음 잡아서 위상 180도로 헤드폰에 쏴버리거나 아니면 마이크로 잡은 소리를 노이즈캔슬링 해주는 소프트웨어가 있지 않을까? 였다. 찾아보니 나온게 RTX Voice 라는 것이 있었다. 내가 원하는 목소리 제거는 아니고 오히려 목소리를 살리고 나머지를 제거하는 소프트웨어지만 나중에 유용하게 쓸 일이 있을 것 같아서 글로 남겨 본다.

 

목소리만 남기고 주변 소음 제거하는 프로그램 NVIDIA RTX Voice

www.nvidia.com/en-us/geforce/guides/nvidia-rtx-voice-setup-guide/

 

NVIDIA RTX Voice: Setup Guide

A quick-start guide to installing and using RTX Voice beta, NVIDIA's background noise removal plugin.

www.nvidia.com

원래는 NVIDIA RTX GPU만 지원되었던 것 같은데 이 글을 쓰는 2020년 12월 시점에서는 GTX 그래픽카드도 지원하는 것 같다. 해당 페이지에 들어가서 내리다 보면 셋업 가이드에 GTX 그래픽카드용 다운받는 링크가 있다. (아래 사진 참고)

 

 

 

써있는 방법대로 그냥 설치파일 받아서 실행을 하면 아주 간단하게 설치가 된다. 세팅 방법도 해당 페이지에 매우 상세하게 나와 있어서 자세한 부분은 생략한다.

 

설치가 끝나면 시스템 트레이에 아래와 같이 초록 헤드폰 모양이 나온다.

 

 

 

우클릭해서 show를 눌러보면 설정창이 나온다.

 

 

그런데 갑자기 소리가 안나오기 시작해서 좀 당황스러웠다.

 

듣는 소리에서 목소리 빼고 잡음 제거 (설치 후 소리가 안날 때도 아래처럼 설정하면 됨)

이것저것 세팅을 건드려보다가 되는 조합을 찾았는데 알고보니 이것도 저번 글에서의 Equalizer APO처럼 가상의 드라이버를 만들고 라우팅하는 것이었다. 최종 output은 NVIDIA RTX Voice로 놓고, 트레이에서 RTX voice 설정창을 켜고 기존에 쓰던 스피커를 RTX Voice로 송출하게 설정하면 된다. 잘 모르겠는 사람들은 아래 그림을 참고하자

 

1. 스피커 선택: NVIDIA RTX Voice

 

 

 

2. RTX voice 설정: Output device에 원래 쓰던 스피커로 설정 (본인의 경우 Realtek(R) Audio 였음)

 

 

 

이렇게 하면 정상적으로 원래 쓰던 스피커의 소리를 RTX Voice에서 받고, 윈도우에서 RTX Voice로 재생하게 했으니 목소리 빼고 노캔된 소리가 들어간다. 

 

설정 확인

제대로 소리가 나려면 아래와 같이 원래 쓰던 재생장치는 기본 통신 장치 (소리를 실제로 듣는 장치) 로, NVIDIA RTX Voice는 기본 장치로 선택이 되어 있어야 한다.

 

 

 

소리 테스트 영상

테스트 영상으로는 대충 아래의 링크들을 눌러서 들어보면 된다. 재생 중에 RTX voice 설정창에서 Remove background noise 체크를 풀었다 체크했다 해보면 차이를 느낄 수 있다. 

 

예시 1: 일반적인 영상

목소리만 나오고 배경 음악들을 다 지워버린다. 틱틱거리는 하이햇 소리까지는 못지우는듯

 

예시 2: 피아노 연주 영상

피아노소리가 중간 이하는 다 지워버릴정도. 큰 소리는 못지우는거같다.

 

예시 3: 목소리 위주의 인터뷰 영상

배경에 있는 지직거리는 전기노이즈나 부스럭거리는 소리들, 동굴소리들을 다 지워버린다. 물론 목소리에 왜곡이 없을 순 없지만 잡음이 많은 환경에서는 충분히 쓸만하다고 생각했다.

 

예시 4: 랩+ 음악 영상

모든 음악을 빼고 사람 목소리만 틀어주는 느낌이다. 물론 음악소리가 클 때는 사람 목소리도 지워버리지만 원본이랑 노캔된 소리랑 비교하면 이건뭐... 미쳤다고 할 수밖에.. 응용을 하면 음악에서 보컬만 추출해서 샘플링으로 만드는 용도로 써도 나쁘지 않을 것 같다.

 

 

 

마이크 소리에서 잡음 제거

마이크 설정은 RTX voice 홈페이지에 있는 설명을 보고 하면 각자의 앱에 따라 종류별로 잘 설명이 써 있어서 어렵지 않게 할 수 있다. 지원하는 앱들에 OBS, Xsplit, Twitch studio, Discord, Skype, Zoom 등의 이것저것들이 나와 있는데, 원리만 알면 임의의 프로그램에 적용이 가능하다.

 

마이크 소리를 잡아서 넣는 경우에는 우선 다음과 같이 RTX Voice 설정 창에서 사용하려는 마이크(본인의 경우 슈어 마이크다)를 선택한다. 한개밖에 안되는건 마이크 여러 개 쓰는 사람에게는 단점으로 보일수도 있겠다.

 

 

 

 

그리고 원하는 프로그램에서 RTX voice를 골라 주면 된다. 디코를 예로 들면 다음과 같다.

 

 

윈도우 소리 설정에 들어가서 보면 기본 장치는 슈어 마이크로 되어 있지만 아까 소리설정에서 RTX Voice의 input에 원래 쓰던 슈어 마이크를 넣어놨기 때문에 노이즈 제거된 소리가 RTX voice로 복제되어 들어간다.

 

 

만약에 RTX Voice를 기본 장치로 설정하게 되면 다른 마이크를 사용하는 프로그램들에서 기본값으로 잡아도 알아서 잡음 제거된 소리가 들어가게 된다. 주의사항은 목소리는 살리고 나머지는 지우는 기능이 탑재된거라 말소리가 위주인 컨텐츠가 아니라면 위의 듣는소리 잡음제거에서처럼 음악소리같은것들을 지워버리니 조심해야 한다.

 

결론

사람 목소리를 지우려고 찾아보다가 사람 목소리만 살리고 나머지를 다 지워버리는 RTX Voice 라는 프로그램을 찾았다. 막상 써보니 이전 글에서 사용했던의 RNNoise의 목소리 타겟 버전같은 느낌이었다. 그래픽카드도 GTX까지 지원되게 바뀌어서 별다른 무리 없이 금방 적용 가능했다. NVIDIA에서 만든거라 향후 유지보수도 잘 될 것으로 생각한다.

 

인터넷에 다른 글들을 보면 그래픽카드의 자원을 사용하기 때문에 게임하면서 같이 쓰는 경우 프레임이 약간 떨어진다고 하는데, 나는 연구실 컴퓨터에서 게임같은건 안하기 때문에 문제는 없었다. RNNoise의 경우 CPU를 사용하기 때문에 글카 성능하락이 우려되는 상황이고 CPU는 성능이 남아돈다면 RNNoise + Equalizer APO를 써보는걸 추천한다. 끝.