프로그램이야기

Foobar2000 음질 향상 몇가지 팁 모음..

미나리나물 2012. 11. 25. 04:18

먼저 나는 좋은 스피커를 쓰지 않는다. 그냥 3만원짜리 2.1ch 브리츠 스피커를 쓴다.

지금 퍼온 글들 중 어느 블로거님은 그러셨다. 음질 차이를 뚜렷하게 느끼고 싶다면 10만원 이상 투자하라고...

지금 글을 쓰는 이 시점에 사실 약간은 느끼지만 지금은 잘 모르는..나중에 혹시 스피커를 바꾼다면 해보고 싶은 설정을 여기 모아둔다.

그리고 Foobar2000이 가벼운 음악재생 프로그램인건 맞습니다만, 여기 설정처럼 DSP가 많아 질 수록 점점 무거워집니다. 이점 명심해주세요~!!


1. 일단 Windows Vista/7 이상이라면 WASAPI(Windows Audio Session API)를 쓸 수 있겠다. 물론 사운드 칩셋에 따라서 안될 수도 있다.

기본적으로 foobar2000은 DirectSound 방식으로 음악을 출력한다. [Ctrl+P]를 눌러서 [Preference] - [Playback] - [Output] - [Output Device]를 확인하면 DS라는 항목을 확인할 수 있는데 이 DS가 DirectSound다. DirectSound는 KMixer 드라이버를 거쳐서 소리를 재생하는데 이 과정에서 샘플링 비율을 변경하고 지연이 생기며 약간의 손실이 생길 수 있다고 한다.

WASAPI는 두 가지 방식이 있는데, 하나는 여러 오디오 스트림이 섞이고 효과가 적용된 상태로 사운드 장치로 전송되는 공유 방식(Shared Mode)이고 다른 하나는 미디어 재생기의 오디오 스트림이 직접 사운드 장치로 전송되는 단독 방식(Exclusive Mode)이다. WASAPI의 단독 방식을 사용하면 원음의 개차적인 수정 없이 재생할 수 있다는 이야기다.

-출처:http://circlash.tistory.com/309

라고 써있는데 어려워서 자세히 알긴 어렵고 단순하게 말하면 원래 Windows에서 음원을 재생하면 사운드를 믹싱해주는 KMixer를 거치는데 

WASAPI 방식을 사용하게되면 음원이 Windows 내부에 KMixer에서 믹싱하지 않으므로 음원의 손실 또는 변형이 되지 않는다는 말이다.

가장 큰 단점은 역시 소리를 한개 - Foobar2000이 재생될 때 - 만 들을 수 있다는 점이다. 한마디로 게임하면서 음악을 들을 수 없다는 것이다.

그래도 음원이 훌륭하고 소리에 민감한 분이라면 시도해 볼만 하다. 실제로 해보면 음질 좋아진다(느낌상..???).


설정 해보자.

foobar홈피에 WASAPI컴포넌트 에서 download 를 눌러 받은 파일을 foobar2000 설치 폴더안에 components 폴더가 있다.

빨간 네모쳐진 이름의 폴더 안에 다운받은 파일을 넣어준다.

그러면 다음처럼 보일 것이다. 여기서 WASAPI 를 선택해서 들어주면 된다.

이상으로 WASAPI 설정을 마치겠다.


2. 그럼 Windows XP 유저들은 WASAPI를 못쓰나요?

넵. 안됨. 대신 ASIO(Audio Stream Input/Output) 를 쓰면 되는데, ASIO라는 놈은 WASAPI처럼 사운드 장치에 바로 음원을 쏴주는 프로토콜이다.

문제는 사운드카드가 좋은게 아니라면 사운드 칩셋이 지원을 안하는 경우가 많은데, 그럴땐 3th party 프로그램을 이용하면 된다.

일단 foobar홈피에 ASIO컴포넌트 여기서 download 한 컴포넌트를 위에 그림처럼 foobar2000 설치폴더 안에 components 폴더에 넣어준다.

그리고 ASIO4ALL 라는 프로그램을 이용해서 연결 할것이므로 ASIO4ALL홈피로 가서 영국 국기 옆에 파일을 다운로드 해준다.

현재(2012-11-25) 최신 버전은 2.10 이고, 한글은 애석하게 지원하지 않는다(영어를 다운받아도 볼게없으므로 괜찮음).

혹시 모르니 다운 을 누르면 파일이 바로 다운되게 해놨으니, 2.10을 받으시려면 눌러라.

다운받은 파일을 설치 한 뒤 foobar2000을 실행하고 [Ctrl+P] - [Playback] - [Output] - [ASIO Virtual Devices]로 이동한 다음 [Add New]를 클릭하면

 ASIO4ALL을 선택할 수 있다. Driver에서 ASIO4ALL v2를 선택하고 [Configure] 단추를 누른다.


ASIO4ALL 설정 화면 왼쪽에 자신이 사용하는 사운드 장치 종류가 표시된다. 다음 그림은 내장 사운드 카드만 사용하는 빈곤한 환경이다.

[ASIO Buffer Size]를 내릴 수 있는 데까지 낮게 설정한다. 만약 낮게 설정해서 음이 끊기거나 틱틱 하는 소리가 들리면 좀 더 높게 설정한다.

[Allow Pull Mode (WaveRT)]는 Vista 이상의 WaveRT 장치 동작 방식을 설정하는 부분인데 Pull Mode를 사용하면 기본 방식인 Push Mode보다 타이밍이

정확하고 기술적으로 뛰어나다고 한다. 항목을 선택하면 사용할 수 있을 때 Pull Mode를 사용한다. XP는 WaveRT 장치가 없으므로 [Hardware Buffer]

항목으로 표시된다. [Buffer Offset] 역시 ASIO Buffer Size와 마찬가지로 최대한 낮게 설정한다. 낮을수록 지연이 줄어들지만, 안정성에 문제가 있을 수 있다.

틱틱 소리가 들리거나 음이 끊기는 느낌이 있으면 더 높게 설정한다. 기본 사운드 카드를 사용하지 않고 외부 장치를 사용하려면 왼쪽의 장치 목록에서

기본 장치 아이콘을 클릭해서 비활성화하고 사용할 장치 아이콘을 클릭해서 활성화한다.


이제 설정 화면에서 [Playback] - [Output] - [Output Device]에서 [ASIO : ASIO4ALL v2]를 선택한다. [Apply] - [OK]를 누르면 변경 사항이 적용된다.

역시 DirectSound보다 깨끗한 느낌이다.

WASAPI와 약간 다른 느낌이니 Windows Vista/7 사용자는 WASAPI와 ASIO 중 취향에 맞는 방식을 사용한다.


3. 이제 기본적인 설정은 끝났고 DSP를 설정해보자.

DSP는 내맘대로 해도 된다. 단 Resampler → 다른 DSP → Advanced Limiter의 순서를 지키자.

난 현재 convolve / ssrcX / wasapi / equalizer/ Bauer stereophonic-to-binaural DSP 이렇게만 사용하고 있다.

순서는 다음 그림과 같다.


일단 아래 파일을 다운받아 압축해제해서 나온 파일들을 몽조리 components 폴더 안에 넣어준다.


components.zip


그리고 foobar를 실행 해서 File -> Preferences (Ctrl + P) 로 들어간다. 그러면 좌측 메뉴에 Playback 이라는 메뉴가 있고 확장해보면(빈삼각형클릭)

그 아래 DSP Manager가 있다. 눌러보면 위 사진처럼은 아니고 Active DSPs 가 빈채로 있을 것이다. 이제 좌측으로 옮겨보자.



빨간 네모 친 이름을 클릭 하면 가운데 화살표가 활성화 된다. 그러면 <- 화살표를 눌러 좌측으로 옮겨준다.

좌측으로 옮기게되면 맨 위에서부터 적용되서 아래쪽으로 내려오는데 처음에도 말했다시피 Resampler → 다른 DSP → Advanced Limiter의 순서를 지키자.

여기서 각각의 설정은 Active DSPs에서 하나를 클릭하면 바로 위 Configure selected 가 활성화 된다. 그 단추를 눌러주면 된다.

이퀄라이저는 뭐 딱히 볼건 없고 아래 이퀄라이저 프리셋 파일을 올려둘테니 다운받은 뒤 적당한폴더(주로 foobar설치폴더)에 푼 뒤 불러오면 된다.


Equalizer Presets.zip


그 다음으로 Resampler는 여러가지가 있지만 난 SSRC X 를 쓴다. 설정은

이렇게 해서 쓰고있다.

그 다음 Bauer stereophonic-to-binaural DSP의 설정은 

난 C. Moy를 눌러 설정되는 설정을 쓰는데, 사람에 따라서 J. Meier의 셋팅을 쓰는사람도 있다.

아참 이 DSP의 설명은..

 Bauer stereophonic-to-binaural DSP는 이어폰이나 헤드폰으로 음악을 들을 때 양쪽의 소리가 지나치게 뚜렷하게 구분되는 현상을 조정하는 DSP다. 우리가 듣는 스테레오 음악은 스피커로 듣는다는 것을 전제로 제작된다. 스피커로 들으면 양쪽 채널에서 나오는 각기 다른 소리를 섞어서 양쪽 귀로 듣는다. 그러나 헤드폰이나 이어폰으로 들으면 서로 다른 소리가 나뉘어서 귀에 전달되고 다른 쪽 귀가 머리를 통해 이 소리를 인식하기까지 시간의 간격이 생긴다. 이렇게 분리된 느낌을 줄이고 더 자연스러운 공간감을 느낄 수 있도록 돕는 것이 bs2b DSP다.

-출처:http://circlash.tistory.com/309

라고 한다. 글 맨 처음에 링크도 걸려있으니 생각있으신 분은 들어가봐도 된다.

그리고 마지막 convolver 설정은

이렇게 쓰고있다. 맨 위에 Impulse file은 반드시 아까 풀어준 


 components.zip

이 안에 wav 파일을 지정해 줘야 한다. 나머지는 편한대로 구성하는데 Level막대기를 너무 올리면 음이 이상해진다니 적당히 조절해주자.


추가로 혹시 진공관 음색을 맛보고 싶다면

foo_dsp_tube.dll

를 다운받아

components폴더에 넣은 뒤 모든 DSP를 다 없애고 Tube Sound 한개만 Active 하면 된다. 셋팅은 일단 기본셋팅으로 들어도 된다.


메모리가 차고 넘치는 분들은 이 방법을 쓰는것도 음질 향상에 도움이 된다고 한다.

이 사진처럼 File -> Preferences (Ctrl + P) -> Advenced -> Playback 에서 Full file buffering up to (kB) 를 눌러서 자신의 환경에 맞는 숫자를 넣어준다.

메모리가 512mb 이실때 65536 를 입력 (총64MB 할당)

메모리가 1GB 이상일때 131072 를 입력 (총128MB 할당)

메모리가 2GB 이상일떄 262144 를 입력 (총256MB 할당)

메모리가 4GB 이상일때 524288 를 입력 (총512MB 할당)

이 팁은 메모리를 많이 잡아먹는 작업이고 또한 사용하는 스피커가 성능이 낮을수록 효과를 보기 힘든 팁이란다. 이점 유의해서 설정해준다.