Быстрый ответ - взгляните на FluidSynth. Это программный синтезатор, который использует звуковые банки в формате SoundFont. Он также имеет свою библиотеку, которую можно использовать для «рендеринга» MIDI-файла.
Банк с установленным звуком General MIDI можно найти, например, на http://www.hammersound.com,, например, http://www.hammersound.com/cgi-bin/soundlink.pl?action=view_download_page;ID=407;SoundFont_Location_Selected=Download;SoundFont_Filename_Selected=http://www.jchyun.com/~sonic/sf2/hubbe/Hubbe64%20GM%20v2.50.zip.
Вы можете сделать это по-другому - вы можете просто воспроизвести их на своем устройстве, запустить программное обеспечение для записи звука, установить для входа значение «то, что вы слышите», записать его и затем вырезать.
Более длинный ответ - Вопрос в том, каковы ваши потребности и цель этой процедуры?
Если вы предпочитаете один и тот же звук из файлов MIDI на разных компьютерах, у вас есть следующие опции:
- Используйте только MIDI. Звуки MIDI стандартизированы, хотя могут быть отличия по сэмплам вашей звуковой карты. У вас есть какие-то особенные хорошие звуки, которые вы хотите использовать?
- Используйте карту, поддерживающую SoundFonts - например, SoundBlaster AWE 32 и выше, установите для входа записи значение «Что вы слышите» и запишите звуки.
- Конвертирует MIDI-файлы в какой-либо формат трекера. Этот формат сохраняет ноты как midi, но позволяет также сохранять звуковые сэмплы в одном файле. Хотя преобразование займет некоторое количество работы. Файлы модуля содержат так называемые паттерны, которые можно воспроизводить в требуемом порядке. Это было бы идеальным примером для игр, где вы можете легко зациклить одну песню. Преимущество - одинаковый звук на каждом компьютере и небольшой размер. Недостатком может быть потеря качества, потому что высота сэмплов смещается вверх и вниз для создания различных тонов. Если вы используете мультисэмплированные инструменты, это вас не беспокоит. Если вы предпочитаете этот способ, я предлагаю вам взглянуть на форматы IT (ImpulseTracker) и mo3. В качестве редактора трекеров можно использовать OpenMPT. Это также позволяет импортировать и экспортировать файлы MIDI. Для воспроизведения этих файлов вы можете использовать библиотеку MikMod или библиотеку FMOD (коммерческую).
- Используйте программный синтезатор, который использует звуковые банки. Примером такого синтезатора является FluidSynth. Если эта музыка должна быть встроена в какую-то программу, это может быть хорошей альтернативой.
- Используйте внешний MIDI-звуковой модуль, такой как Roland SonicCell или любую хорошую звучащую клавиатуру, в качестве моего любимого Korg M50, вставьте выход этого модуля в звуковую карту, установите список воспроизведения в каком-либо MIDI-плеере, выберите это устройство, запустите программу записи с звуковой ввод, запись и обрезка.
P.S. Извините за отсутствие ссылок, так как я здесь новичок, в моем ответе могут быть только две ссылки.