2014년 7월 5일 토요일

Soundflower 사용법​

사운드플라워(Soundflower)를 사용하는 방법을 용도 위주로 설명하는 글입니다.

Soundflower

사운드플라워(Soundflower)는 OS X 용 소프트웨어 라우팅 드라이버입니다. 소프트웨어 방식으로 마치 하드웨어 사운드 입출력 장치 같은걸 만들어 줍니다.

http://cycling74.com/products/soundflower/

사운드플라워는 오픈소스이기 때문에 일반 사용자는 무료로 이용 할 수 있고 개발자는 소스를 받아서 볼 수도 있고 패치를 통해 기여(Contribution) 할 수도 있습니다.

다운로드는 위 홈페이지 링크를 통해 가거나 https://code.google.com/p/soundflower/downloads/list 에서 할 수 있습니다.

설치는 일반적인 .dmg 파일이니 마운트(더블클릭) 시켜서 안에 포함된 .pkg 파일을 실행시키면 됩니다. 설치가 완료되면 시스템 환경설정에서 사운드플라워가 출력 및 입력 장치로 등록되는 것을 확인 할 수 있고, 애플리케이션 폴더에 Soundflowerbed 라는 앱이 설치됩니다.

참고로 일반 앱이 아닌 드라이버 형태이기 때문에 리부팅을 요구 할 수도 있습니다.

맥의 소리를 모두 녹음하기

일반적으로 사운드플라워가 가장 자주 쓰이는 부분은 바로 이 용도일 것입니다. 쉽게 말해서, 스크린캐스트 녹화 시 맥에서 나오는 모든 소리를 녹음해 보고 싶다면 별도의 레코딩 하드웨어 없이 사운드플라워를 이용해 할 수 있습니다.

우선 ‘시스템 환경설정’을 열어서 ‘사운드’ 항목을 선택합니다. 그리고 출력 탭에서 Soundflower (2ch)를 선택합니다.  입력 탭에서는 해도 되고 안해도 관계는 없습니다.
참고로 별 다른 이유가 없다면 64ch는 쓸 일이 없습니다.

다음은 Soundflowerbed 를 실행시킵니다. 설치가 제대로 되었다면 응용 프로그램(Applications) 폴더의 Soundflower 폴더에서 찾을 수 있습니다.
Soundflowerbed가 실행되면 메뉴표시줄에 꽃 아이콘이 표시됩니다. 이 아이콘을 눌러서 Soundflower (2ch)의 출력 장치(사운드디바이스)를 설정해 줍니다.


출력 장치는 별도의 오디오 인터페이스가 없다면 Built-in Output 을 선택합니다. 이 장치는 맥의 기본 사운드 출력장치입니다.

Soundflowerbed는 스크린캐스트 녹화 시 사운드를 녹음하기 위한 필수적인 설정은 아닙니다만, 이걸 설정하지 않으면 소리가 스피커를 통해 나오지 않기 때문에 설정 해 주는 것이 꼭 필요하겠지요?

여기까지 세팅하면 이제 준비는 된 상태입니다.

이제 스크린캐스트 녹화 프로그램을 이용해 사운드 입력을 Soundflower (2ch) 를 선택하고 녹화를 시작하면 됩니다. 퀵타임 플레이어를 이용한다면 파일 메뉴의 ‘새로운 화면 기록’을 선택 한 후 오른쪽 삼각형 아이콘을 눌러서 입력을 Soundflower (2ch)를 선택하면 됩니다.


이제 녹화만 하면 됩니다.

여기까지 세팅된 사항을 그림으로 그려보면 이렇습니다.


위 그림에서 사운드플라워가 없는 것이 일반적인 사용 단계입니다. 즉, 스크린캐스트 녹화 프로그램에서 데스크탑의 소리 출력을 입력으로 받올 수가 없습니다.

사운드플라워는 입력으로 들어온 소리를 다시 사운드디바이스로 보내서 출력시키고 동시에 들어온 소리를 다시 입력으로 보내주는 역활을 합니다. 그래서 데스크탑 사운드 녹음이 가능해집니다.

시험삼아 사운드플라워 설정을 하고 iTunes를 켜고 음악을 플레이 시킨 상태에서 퀵타임 플레이어로 화면기록 기능을 사용해서 테스트 해 보세요~

로직 등의 DAW 소리를 녹음하기

앞의 데스크탑 스크린캐스트 녹화와 거의 비슷합니다만, 이번에는 로직 같이 특정 DAW의 소리만을 녹화할 때의 설정 방법입니다.

이번에는 시스템 환경설정까지 갈 필요가 없습니다. 그저 Soundflowerbed를 이용해 출력만 설정해 둡시다.

그리고 이번에는 DAW에서 오디오 설정을 열어서 출력(Output)을 Soundflower (2ch) 로 잡아줘야 합니다.


위 스크린샷은 로직에서 환경설정(Preferences)의 Audio 항목에서 출력 장치를 Soundflower (2ch) 로 선택하는 화면입니다. 이렇게 하면 로직은 입출력 장치 모두 Soundflower 로 바껴 버립니다. 물론 이는 로직의 예이고, 실제로 사용하시는 DAW에 맞게 설정하시면 됩니다.

이제 스크린캐스트 녹화 설정에서 사운드 입력장치를 Soundflower (2ch) 로 설정 한 후 녹화하면 됩니다. 앞서 예제로 든 퀵타임의 경우 동일한 설정을 이용하면 됩니다.

이렇게 하면 DAW를 통해 나오는 소리가 몽땅 녹음됩니다. 여기서 사용한 설정은 앞서 본 데스크탑과는 약간 다르지만 원리는 동일합니다.


이번에도 사운드플라워를 특수한 사운드 입출력 장치로 사용합니다. DAW의 출력은 Soundflower로 가고 스크린캐스트 녹화 프로그램에서는 Soundflower를 입력으로 녹화가 됩니다. 즉 DAW에서 나오는 소리를 모두 캡쳐하는 것이 가능해집니다. 대신 데스크탑의 사운드는 Soundflower를 통과하지 않으니 녹음이 되지 않고 스피커로 바로 출력됩니다.

기타 응용 분야

여기까지의 설정이 이해가 되신다면 이제 사운드플라워를 이용해 마음껏 사운드 라우팅을 사용 할 수 있다고 생각됩니다만 그래도 간략하게 응용 할 수 있는 방법을 써 봅니다.

컴퓨터 사운드를 DAW에서 녹음하기:
  1. 시스템 출력을 Soundflower 로 설정
  2. DAW의 출력장치를 별도의 오디오인터페이스 혹은 Built-in Output으로 설정
  3. DAW에서 입력을 Soundflower로 설정 한 후 녹음
DAW에서 플러그인 지원이 되지 않는 가상악기 녹음하기:
  1. 가상악기의 출력 장치를 Soundflower 로 설정
  2. DAW에서 입력을 Soundflower로 설정 한 후 녹음
사실 무궁무진한 예가 있습니다만 딱히 생각나는건 이 정도 뿐이네요.

팁. 사운드플라워 버퍼사이즈 설정

필요하다면 Soundflower의 버퍼 사이즈(Buffer Size)를 바꿔 줄 수도 있습니다. 버퍼 사이즈를 바꿔주면 레이턴시가 줄어들게 됩니다. 만약 스크린캐스트 녹화 시 사운드 동기화가 맞지 않는 경우, 즉 소리가 밀려서 들린다면 이 버퍼사이즈를 좀 더 작게 줄여주면 해결 될 수도 있습니다.


하지만 버퍼를 줄이면 줄일수록 CPU 부하도 올라가기 때문에 다른 문제가 생길수도 있습니다. 무조건 작게 줄이지 말고 적당히 설정하는 것이 좋습니다. 대체로 256 정도면 큰 문제 없이 사용이 가능합니다.

주의사항

사운드플라워는 사운드 입출력 장치를 만들어 주지만 소프트웨어로 만들어진 장치, 즉 프로그램입니다. 사운드 플라워를 통과하는 소리는 프로그램을 통과하는 시간 만큼 느려집니다. 즉 레이턴시(Latency)가 발생됩니다. 또한 CPU 부하도 증가되는 등 일반적인 사용 시에는 가급적 사용하지 않는 것이 현명합니다.

UR28M의 루프백과 비슷한 증상이지요? 이건 당연한 것입니다. 지원되지 않는 기능을 소프트웨어로 구현한 것이니깐요.

[관련글] UR28M 루프백(Loopback) 사용법

댓글 없음:

댓글 쓰기