최근 수정 시각 : 2024-11-06 19:00:58

사운드폰트


1. 개요2. 역사3. 확장자4. 사용법5. 유명한 사운드폰트6. 사용하는 이유7. 관련 프로그램
7.1. 사운드폰트 출력7.2. 가상 포트7.3. VST7.4. 매퍼
8. 유의 사항

1. 개요

사운드폰트(Soundfont)는 E-MU에서 개발한 MIDI 가상 악기 규격이다. 사용하는 방식이 마치 글꼴비슷하다고 해서 '사운드폰트'라는 명칭이 붙여졌다.

2. 역사

본래 신디사이저에 쓰이는 기술이었으나, 사운드 블라스터를 개발한 Creative에서 해당 회사를 인수하면서 사운드 블라스터 계열 사운드 카드에서 MIDI 음원을 출력하는데 사용되기 시작하였다. 그러나 MIDI 파일이 그다지 쓰이지 않게 되자 은근슬쩍 사운드 카드에 MIDI 칩셋과 사운드폰트 관련 지원을 두지 않기에 이르렀다. 참고로 사운드폰트를 마지막으로 지원하는 사운드 블라스터는 2014년 출시된 Audigy 5/Rx이다. Windows XP 시절에는 Virtual Sound Canvas나 YAMAHA S-YXG50 SoftSynthesizer와 같은 소프트웨어 신시사이저를 사운드폰트 대용으로 사용할 수도 있었으나, Windows Vista 이후로는 정상적인 사용이 불가능해졌다.

3. 확장자

사운드폰트에서 사용하는 확장자는 다음과 같다.
  • E-MU SoundBank v1(*.sbk): 초창기에 사용되었던 사운드폰트 포맷으로, 현재는 거의 안 쓰인다.
  • Creative Soundfont v2(*.sf2): 사운드 블라스터 Live!와 함께 등장한 사운드폰트 포맷으로, 현재 사용되는 거의 모든 사운드폰트는 이 확장자를 사용한다.
  • SFPack(*.sfpack): SFPack으로 압축된 사운드폰트이다. 압축을 풀 때 확장자 이름인 'SFPack'이라는 프로그램을 사용한다.
  • SFArk(*.sfark): SFArk로 압축된 사운드폰트이다. 압축을 풀 때 확장자 이름인 'SFArk'라는 프로그램을 사용한다.

4. 사용법

용량이 비교적 작고 소프트웨어 사운드폰트 프로그램이 개발되어서 인터넷에서 널리 배포된다. 물론 개중에는 100MB를 넘는 대용량(고음질) 사운드폰트도 많이 있지만, 적어도 GB 단위로 많이 잡아먹는 VST보다는 훨씬 작은 용량이다. 그래도 용량을 더 줄이고자 만든 SFPack, SFArk와 같은 압축 포맷도 있는데, 바로 사용할 수는 없고, 전용 프로그램을 사용해서 압축을 풀어야 한다.

사운드 블라스터 계열 사운드 카드로 사운드폰트를 직접 설정해서 하드웨어 사운드모듈로 가동하는 것이 원래 사용 방법이다. 드라이버 자체에도 음원이 내장되어 있기 때문에 별다른 설정을 하지 않으면 해당 사운드폰트가 자동적으로 로드된다. 그러나 사운드폰트를 지원하지 않는 메인보드 내장 사운드나 저가형 사운드 카드 등에서는 사운드폰트를 사용할 방법이 없었으며, 이 경우 Windows 내장 사운드폰트(Microsoft GS Wavetable Synth)가 자동으로 로드되어 재생되지만 음질이 매우 낮은데다가 레이턴시도 매우 높기 때문에 여러모로 부적합했다. 현재는 사운드폰트를 사용할 수 있게 해주는 여러 프로그램들이 등장했는데, 대부분 BASSMIDI 기반 라이브러리를 사용한다. 요즘 돌아다니는 대용량 사운드폰트들은 소프트웨어 사운드폰트 프로그램용일 가능성이 아주 높아 하드웨어 사운드 카드에 탑재 자체가 되지 않는 경우가 대부분이며, 탑재가 되더라도 소리가 깨져서 나오거나 블루스크린이 발생할 수 있다. 간단하게 듣기만 하는 용도로는 미디어 플레이어중에 사운드폰트를 플러그인으로 불러올수 있게 지원하는 물건 (예:PC판 AIMP) 에서 사운드폰트를 지정해서 쓰는방법이 있다.(AIMP의 경우 플러그인 중에 MIDI Codec(BASSMIDI 라이브러리를 가져왔다)의 설정에서 사용할 사운드 폰트를 지정하고서 원하는 미디를 재생하면 된다.)

사운드폰트를 만들거나 편집할 수 있는 프로그램도 있다. Vienna나 Polyphone 등으로 WAV 파일을 불러와 편집하고, 하나의 악기를 만드는 방식이다. 그래서 인터넷에서 다양한 사운드폰트가 배포된다. 특히 패밀리컴퓨터(NES), 슈퍼 패미컴(SNES), 포켓몬스터, 언더테일, 동방 프로젝트 등의 게임 소리를 흉내낸 사운드폰트도 많다.

5. 유명한 사운드폰트

  • SGM V2.01
    이름인 'SGM'은 'Shan's GM Soundfont'의 약자이다.[1] 최고의 사운드폰트로 평가되며 Homestuck, 게임 언더테일에도 사용되었으며, BOF2012 참가곡 Xhroria에도 사용되었다. 메이플스토리2에서 악기 연주를 재생할 때도 쓰이지만, 메이플스토리2는 악기가 제한적이라서[2] 유저가 직접 이 사운드폰트를 편집해서 사용한다.
    본래 공식 홈페이지가 따로 존재하지만, 야후 재팬의 개인 홈페이지 서비스인 GeoCities JP가 2019년에 서비스를 종료하면서 현재는 다운로드가 불가능하다. 대신 여기에서 다운로드가 가능하다.
  • kgs88
    Roland사의 사운드모듈사운드 캔버스 SC-88Pro를 흉내내기 위해 만들어진 사운드폰트이며, 반주기 프로그램[3]에 사용되는 용도로 제작되었다. 사운드 캔버스의 샘플을 사용하지 않았으므로 사운드 캔버스 실기와 똑같은 소리는 낼 수 없지만 본 용도로는 상당히 쓸만하다는 평가를 받는다.
  • GeneralUser GS
    일부 프로그램의 번들 사운드폰트로 사용되기도 한다. 2024년 10월 2일 오래간만에 신버전인 2.0이 릴리즈되었다.
  • FatBoy SoundFont
    비교적 근래(2019년)에 나온 사운드폰트. 1980~1990년대에 나온 MIDI 지원 게임에 특화되었다는 사운드폰트이다. 공식 사이트가 있었다. 그나마 'xproot's Midi Stuff Mirror'라고 하는 사이트에 보존되어 있다.[4]
  • Musyng Kite (페이지 내의 다운로드 링크 깨짐. 다운로드 가능한 아카이브)
    990 MB라는 초 거대 용량을 자랑하는 사운드폰트.[5] 용량을 깡패같이 써서 사운드폰트 중에서는 음질이 좋지만, 사운드폰트이니만큼 너무 많은 것을 기대하진 말 것. 너무 큰 용량 때문에 일부 프로그램에서는 제대로 읽지 못한다.
    .sfpack 확장자로 다운로드되는데, SFPack을 내려받아 압축을 해제해야 한다.
  • fluid-soundfont-gm
    오픈소스 진영에서 사용하는 사운드폰트.
  • gm.dls REMASTERED soundfont
    Microsoft GS Wavetable Synth의 음질을 개선시키련 프로젝트. 2.1까지 나왔으며, 2021년에 중단된 듯하다.

이 밖에도 다양한 사운드폰트들이 존재한다.

6. 사용하는 이유

사운드폰트를 사용하는 대부분의 이유는 Windows 내장 MIDI 음원인 GS Wavetable Synth 음질이 별로인데 VST 사용 방법을 잘 모르기 때문이다. 그래서 NoteWorthy Composer 사용자들이 사용하기도 하지만 물론 MIDI 파일을 재생할 수도 있다. 따라서 자신이 좋아하는 샘플이 있거나 비디오 게임에 사용된 샘플을 쓰고 싶으면 사운드폰트를 쓰는 것도 좋다. 다만 사운드폰트 대다수는 General MIDI 또는 롤랜드 GS 사운드 캔버스 SC-55 호환 규격으로 나오니 SC-55의 이펙터 기능을 최대한 활용하거나 SC-88 이상을 사용하는 일부 일본 게임과 MIDI 파일이면 주의가 필요하다. FL Studio도 사운드폰트를 지원하지만, 대부분이 VST를 사용하기 때문에 이쪽에서는 그다지 사용되지 않는다.[6] Studio One의 경우, 기본 샘플러인 Presence XT에서 자체 포맷 외에도 사운드폰트를 사용할 수 있다.[7]

또한 메가 드라이브/슈퍼패미컴 게임의 음색이 들어있는 사운드폰트가 제법 있기 때문에 간단하게 레트로 게임 스타일 곡을 작곡할 때도 종종 쓰인다.

SAVIHost나 Cantabile와 loopMIDI를 사용하여 VST를 사운드폰트처럼 사용하는 방법도 있긴 한데, 대부분의 VST는 작곡용으로 제작되었기 때문에 MIDI의 모든 악기가 한 VST에 구현되어 있는 경우는 드물고, 이 때문에 사운드폰트 대용으로 사용하기에는 부적합하다. 물론 Sound Canvas VA같은 예외도 있긴 하다.

7. 관련 프로그램

7.1. 사운드폰트 출력

대부분 BASSMIDI 기반 라이브러리를 사용한다.
  • BMsynth: 국내에서 만들어진 프로그램으로, 설정도 간편한 편이고 가벼워서 많이 쓰인다. 다만 2015년 이후로 업데이트되지 않는다.
  • SyFonOne
  • VirtualMidiSynth: CoolSoft에서 만든 프로그램. 단순히 사운드폰트 출력만 아니라 자체 포트 역할도 지원하기 때문에 별도의 가상 포트를 설치하지 않아도 바로 소리가 나온다. Windows XP/Vista/7에서는 기본 MIDI 출력도 변경할 수 있으나[8], Windows 8부터는 후술하였듯이 매퍼가 없기 때문에 전용 매퍼 없이는 변경할 수 없다. 다만 Windows Media Player에 사용되는 MIDI는 바꿀 수 있다.
  • 곰오디오: 과거에는 윈도우 내장 출력을 사용했으나, 업데이트를 통해 자체로 사운드폰트를 지원한다. 윈도우 자체 출력과는 별개이기 때문에 곰오디오에서 사운드폰트를 적용해도 다른 프로그램에서는 적용되지 않는다. 만약 사운드폰트를 바꾸고 싶다고 하면 단축키 alt + shift + m을 눌러서 사운드폰트를 변경할 수 있다.
  • AIMP: 곰오디오처럼 자체로 지원한다.
  • KQ Sampei: iOS용 MIDI 모듈 앱으로, 사운드폰트에 대응한다. MIDI 파일을 재생하거나 iPad용 DAW인 Cubasis 등에서 플러그인으로 사용하거나, 아니면 PC나 맥의 오디오 인터페이스를 이 앱이 설치된 iPhone이나 iPad에 연결해서 하드웨어 MIDI 모듈 쓰듯이 쓸 수 있다. 가격은 730엔. 기본적으로 GeneralUser GS가 번들되어 있다.

7.2. 가상 포트

사운드폰트를 출력하는 데 필수적으로 요구되는 프로그램. 가상 포트 프로그램이 없으면 사운드폰트를 프로그램에 연결할 수 없다. 사운드폰트 밖에도 VST[9]나 MIDI 키보드 등도 연결된다.
  • MidiYoke: 2007년 이후로 업데이트되지 않지만, 호환성 설정을 하고 설치하면[10] 최신 윈도우에서도 이상 없이 작동한다.
  • loopMIDI: 가장 흔히 쓰이는 프로그램. 2019년 이후로 업데이트되지 않는다.
  • rtpMIDI: 위 loopMIDI와 비슷해 보이는데, 네트워크 연결을 지원한다.

7.3. VST

  • BassMidi VSTi: 위의 BASSMIDI 라이브러리를 통해서 사운드폰트를 DAW에서 쓸 수 있게 하는 프로그램. 무료 사운드폰트 플레이어 중에서는 몇 안되게 64비트를 지원하며, 라이브러리 특성상 사운드폰트 재현률이 높다는 게 장점.
  • sfz soundfont player: 과거 rgcaudio(이후 케이크워크사에 인수)에서 만든 사운드폰트 플레이어로, 무료라서 파라메터 조절이 자유롭지는 않지만 용량이 큰 사운드폰트도 DFD 기능으로 안정적으로 불러들일 수 있다. 하지만 64비트를 지원하지 않으며, 멀티코어 환경에 대비되지 않은 VST이기 때문에 여러 개의 sfz를 읽을 때라던가 멀티코어 CPU 환경에서 사용할 때에 문제가 있다. 혹시라도 이 VST를 쓰는 유저라면 멀티코어 대응 수정판을 사용하도록 하자.
  • XS-1: 또 다른 무료 사운드폰트 플레이어로, 이쪽 역시 64비트가 없고 멀티코어 대응이 제대로 되지 않았다는 문제가 있다. 다만 조절할 수 있는 파라메터는 sfz보다 많다. 이쪽 역시 멀티코어 대응 수정판이 존재한다. XS-1_VSTi_2015.zip가 그것.
  • sforzando: 본래 sfz 형식의 사운드 라이브러리를 부를 수 있는 샘플러지만 SF2 사운드폰트 역시 부를 수 있다. 64비트도 대응한다. 다만 사운드폰트를 그대로 부르지는 않고, sfz 형태로 변환 후 저장해서 다시 불러들이게 된다. 위의 BassMidi VSTi와 아래의 Utsbox SF2 Player가 나오기 전에는 64비트 환경에서는 사실상 최고의 수단이었다.
  • TX16Wx: 야마하 TX16W 샘플러를 흉내낸 인터페이스. 이쪽도 64비트를 지원하지만, 이걸 사용해서 사운드폰트를 불렀을 경우 BassMidi VSTi나 sforzando보다는 재현률이 떨어지는 편.
  • bs-1/bs-16: 일본 bismark에서 나온 사운드폰트 플레이어 VST. 유료다. bs-1은 싱글채널, bs-16은 멀티채널 대응. 당연히 bs-16이 더 비싸다. 현재는 VST 버전은 단종돼 있고, 'bs-16i'라는 iOS용 버전만 발매되어 있다. 그 밖로 대한민국의 일부 금영 노래방 기기와 금영 노래방 서비스에서 사용되는 금영 라이븐이 바로 해당 플레이어와 비슷한 기능을 가진 bismark에서 만든 유료 라이브러리 프로그램 bssynth를 사용한다.
  • juicysfplugin: FluidSynth 기반으로 2019년에 새로 나온 사운드폰트 VST. 64비트를 지원하며, 윈도우와 맥 양쪽에서 쓸 수 있다. (지금 이 목록에서 sforzando, TX16Wx와 함께 맥을 지원하는 3종류의 VST 중 하나이다) 다만 사운드폰트 파일을 통째로 로딩하기 때문에 여러 악기가 같이 들어있는 사운드폰트의 경우 불필요한 악기까지 로드되어서 메모리를 쓸데없이 많이 차지한다는게 단점. (특히 위에 언급한 Musyng Kite를 쓸 때)
  • Utsbox SF2 Player: 2019년에 일본에서 새로 나온 사운드폰트 플레이어 가상악기. BASSMIDI나 FluidSynth 등의 외부 라이브러리를 사용하지 않으며, 위의 VST들과는 달리 VST3 형태고, 64비트 전용이다. 다만 윈도우에서만 쓸 수 있고 맥에서는 사용 불가. 단, 음질이 살짝 날카롭게 들릴 수도 있으니 주의.[11]
  • Gotcha: 이펙터 기능을 포함하고 있는, 무난하게 사운드폰트를 플레이하는 64비트 지원 사운드폰트 플레이어. 사용 시는 마이크로소프트 비주얼 C++ 2015/2017 재배포 프로그램이 필요하다. 그러나 ADSR 재현률이 잘 안 좋다. 아쉽게도 윈도우 전용이다.

7.4. 매퍼

  • Microsoft MIDI Mapper: Windows 7까지에 탑재된 매퍼.
  • MIDIMapper: CoolSoft에서 만든 프로그램.

8. 유의 사항

사운드폰트를 재생하는 프로그램만 가지고는 MIDI 프로그램에 적용할 수 없다. loopMIDI와 같은 가상 포트 프로그램을 별도로 설치해서 연결해줘야 MIDI 프로그램에 적용할 수 있다.

모든 프로그램에 동일한 출력 장치를 설정하려면 MIDI Mapper라고 하는 것이 필요하다.[12] MIDI가 처음 등장한 Windows 3.x에서는 아예 'MIDI Mapper'라고 하는 시스템 프로그램이 별개로 있으며, Windows 95부터 Windows XP까지는 오디오 설정에서 바로 선택할 수 있다. 그러나 Windows VistaWindows 7에는 MIDI Mapper 자체는 남아있지만, MIDI 출력 장치를 선택하는 인터페이스가 없기 때문에 별도의 프로그램을 사용해야 한다. 그러지 않으면 기본 설정인 'Microsoft GS Wavetable Synth'로 나온다.

그러다가 Windows 8부터는 MIDI Mapper가 아예 삭제되었다.[13] 이 때문에 프로그램마다 악기가 제멋대로 선택되거나, 기본 설정인 'Microsoft GS Wavetable Synth'로 고정되어서 애먹는 경우도 생긴다. 이 경우는 'CoolSoft MIDIMapper'[14]라는 프로그램을 사용하면 Windows 8 이상에서도 기본 악기를 선택할 수 있다.[15]


[1] 그리고 'GM'은 'General MIDI'의 약자로, MIDI 표준 규격을 가리킨다.[2] 특히 드럼 연주. 메이플스토리2는 드럼이 완벽히 구현되어 있지 않아서 탐탐을 쓴다.[3] 일반 PC를 노래방 기기처럼 구동할 수 있게 만든 프로그램. 대부분 패키지 내지 정액제로 판매되는 등은 유료이다.[4] mirror와 soundfonts를 차례로 클릭하고 FatBoy-0.790.7z를 클릭하면 내려받을 수 있다.[5] 그나마 이것도 원본인 Musyng Original의 1.62 GB에서 약간 줄인 용량이다.[6] 예외적으로 위에 제시된 SGM을 사용하는 언더테일 제작자 토비 폭스는 FL Studio로 작곡하는데, FL에도 32비트 버전에는 사운드폰트 플레이어가 제공되었고, 20.9부터 새로운 엔진으로 사운드폰트 플레이어를 64비트에도 제공하기 시작했다.[7] 프로페셔널 버전의 경우 추가로, 기가샘플러 및 EXS24 포맷도 지원한다.[8] VirtualMidiSynth를 사용하지 않는다고 하면 midi_setup.exe 파일을 내려받아서 설정하면 된다.[9] SAVIhost나 Cantabile을 통해 VST를 실행하면 가능함.[10] 우클릭→속성→'호환성' 탭→'이 프로그램을 실행할 호환 모드'에 체크하기[11] 음원 보간법이 적용 안 된 걸로 추정[12] Windows에는 'Microsoft MIDI Mapper'라는 이름의 매퍼가 존재한다. 이를 선택하면 Windows에서 지정한 출력 장치로 재생된다.[13] 일부 프로그램에서 여전히 Microsoft MIDI Mapper가 있어도, 하위 호환을 위해 남긴 것일 뿐, 실제로는 Microsoft GS Wavetable Synth로 연결하는 기능만 있다. 또한 Microsoft MIDI Mapper가 아예 나타나지 않는 프로그램도 있다.[14] VirtualMIDISynth를 만든 그곳 맞다.[15] 다만 해당 프로그램이 시스템 파일에 관여한다는 특성상은 Malware ZeroAppCheck 등의 일부 안티 바이러스 프로그램이 악성코드로 오진하는 경우가 잦다. #

분류