LINUX.ORG.RU

Выход программного синтезатора WildMidi 0.4.0

 ,


0

1

Вышла новая версия программного проигрывателя MIDI-файлов и библиотеки WildMidi. Релиз примечателен добавлением поддержки следующих типов файлов:

  • MUS-файлы (формат из старых игр от Id Software);
  • XMI-файлы (формат XMIDI);
  • HMP/HMI-файлы;
  • KAR-файлы (MIDI с текстом песни).

Следует также отметить, что API библиотеки WildMidi несколько изменился, что, возможно, потребует доработки (или только пересборки) всех зависимых программ.

>>> Проект на GitHub

>>> Подробности

А есть хоть какие-то преимущества по сравнению с TiMidity / Fluidsynth / LinuxSampler?

GreyCat ★★ ()
Ответ на: комментарий от GreyCat

Миша, ты часто поёшь караоке под LinuxSampler? :)

AP ★★★★★ ()

А как его например c vmpk соеденить?

Dron ★★★★★ ()
Ответ на: комментарий от curufinwe

А какая разница миди файл или миди поток?

Dron ★★★★★ ()
Ответ на: комментарий от Dron

ну ты можешь записать миди поток из vmpk в файл, любым midi-секвенсором, и проиграть его через wildmidi :)

сомневаюсь, что wildmidi умеет поток принимать откуда либо кроме как из файлов.

mid-файлы (и другие форматы) не хранят midi-поток в чистом виде - там дополнительные метаданные, несколько треков, и т.п.

waker ★★★★★ ()
Ответ на: комментарий от waker

сомневаюсь, что wildmidi умеет поток принимать откуда либо кроме как из файлов.

Из буфера умеет забирать: WM_SYMBOL midi * WildMidi_OpenBuffer (uint8_t *midibuffer, uint32_t size);

Благо, файлы не большие. Впрочем, я бы callback api прикрутил, но не факт, что это что-то улучшит.

anonymous ()
Ответ на: комментарий от GreyCat

А есть хоть какие-то преимущества по сравнению с TiMidity / Fluidsynth / LinuxSampler?

У TiMidity нет рабочей либы, только готовая программа, да и не поддерживается оно. Fluidsynth не умеет определять длину файла. Из минусов сабжа я бы назвал отсутствие поддержки sf2: https://github.com/Mindwerks/wildmidi/issues/8 Но пока можно перегнать вот этой тулзой: https://github.com/psi29a/unsf Правда объём инструментов после этого у меня вырос раз в 10.

anonymous ()

Оно, похоже, только с гусиными патчами работает.

Rupricht ()
Ответ на: комментарий от Rupricht

Проблема решается с помощью unsf. Даже готовый конфиг генерит.

anonymous ()
Ответ на: комментарий от waker

Меня просто подкупило что он программный, а не на sf банках, думал может как его + vmpk в замен pianoteq присобачить ::)

Dron ★★★★★ ()
Ответ на: комментарий от Dron

ты так говоришь, как будто fluidsynth и sf-банки работают не программно...

waker ★★★★★ ()
Ответ на: комментарий от anonymous

Из буфера умеет забирать

а в этом буфере он разве не ожидает содержимое поддерживаемых файлов? по-моему, эта функция сырой миди поток откажется жрать.

waker ★★★★★ ()

Так а в чем его киллерфичи? Мне, когда нужно было, пользовался fluidsynth или аппаратный синтезатор через usb переходник

sehellion ★★★★★ ()

Если не умеет саундфонты и эффекты, то не нужно.

Skullnet ★★ ()
Ответ на: комментарий от waker

а в этом буфере он разве не ожидает содержимое поддерживаемых файлов? по-моему, эта функция сырой миди поток откажется жрать.

Так это пока-что просто плеер. И что значит «сырой поток»? В начале каждого файла лежит magic bytes, чтобы плеер мог определить формат. Если эти байты убрать, то непонятно, какой из этой кучи форматов считать «сырым»?

anonymous ()
Ответ на: комментарий от sehellion

Так а в чем его киллерфичи? Мне, когда нужно было, пользовался fluidsynth или аппаратный синтезатор через usb переходник

Проигрывает midi-файлы без всяких извращений. Это его основная фича. Увы, но других подобных библиотек практически не осталось под линукс. А fluidsynth это ниже уровнем, имхо. Файлы он тоже играет, но с крайне ограниченной функциональностью. Нет быстрого перехода и длина не определяется.

anonymous ()
Ответ на: комментарий от anonymous

Если эти байты убрать, то непонятно, какой из этой кучи форматов считать «сырым»?

формат mid почти таковой, если type 0.

в type 1 уже идет разбивка на треки, каждый трек — отдельный midi-поток.

waker ★★★★★ ()
Ответ на: комментарий от waker

Тогда можно подставить в начало буфера «MThd» и кормить его этими кусками. Только вот это уже out of scope имхо.

anonymous ()
Ответ на: комментарий от waker

Хехе, я имел в виду что сам звук генерируется программно на основе всяких там физ. вычислений, а не сляпывается из сэмплов, я не говорю что fs банки это плохо, чисто оценить/сравнить разницу хотелось.

Dron ★★★★★ ()
Ответ на: комментарий от Dron

wildmidi тоже сляпывает из сэмплов, только формат другой.

waker ★★★★★ ()
Ответ на: комментарий от anonymous

Тогда можно подставить в начало буфера «MThd» и кормить его этими кусками. Только вот это уже out of scope имхо.

да я не отрицаю, что к wildmidi можно прикрутить real-time обработку миди-потока, но уж точно не через этот API. он же каждый кусок будет с нуля играть. представь себе что у тебя в первом куске note-on, а во втором note-off. через этот WildMidi_OpenBuffer они проиграются как два независимых файла.

waker ★★★★★ ()
Ответ на: комментарий от waker

Тогда надо смотреть на fluidsynth. Там вроде можно каждый инструмент отдельно функцией дёрнуть. Если я правильно понял, конечно.

anonymous ()
Ответ на: комментарий от waker

Он про то, что в пианотеке нет сэмплов, а в sf2 — есть.

AP ★★★★★ ()
Ответ на: комментарий от anonymous

Тогда надо смотреть на fluidsynth. Там вроде можно каждый инструмент отдельно функцией дёрнуть. Если я правильно понял, конечно.

его же можно просто в JACK воткнуть, не?

waker ★★★★★ ()

KAR-файлы (MIDI с текстом песни).

Эх, помню, лет 15 назад проигрыватель такого активно искал...

hobbit ★★★★★ ()
Ответ на: комментарий от hobbit

15 лет назад KMid свободно их играл (с текстами).

без текстов — любым проигрывателем .mid файлов, просто переименовать достаточно.

waker ★★★★★ ()

KAR-файлы (MIDI с текстом песни)

Вот это первый раз вижу такой формат.

Gamebot ()
Ответ на: комментарий от AP

А почему нет-то? Если б я пел караоке, то брал бы какой-нибудь красивый плеер (KMid, PyKaraoke, Plarpebu), а выводил бы MIDI через какой-нибудь приличного размера банк GigaSampler'а. И, да, рендерил бы MIDI вполне себе LinuxSampler, если система бы смогла его запустить.

GreyCat ★★ ()

Побольше софтов хороших и разных. Щас как раз во всю tuxguitar использую, чтобы впоследствии Editor On Fire и уже закинуть в (к сожалению) проприетарный Rocksmith. Но главное что в ряду инструментария потенциальное пополнение, а конечный результат - повышение гитарных скиллов.

DiversantBivnev ()
Последнее исправление: DiversantBivnev (всего исправлений: 1)

Оно понимает русский язык ?

kto_tama ★★★★★ ()
Ответ на: комментарий от GreyCat

А у тебя есть такой .gig, в котором полный набор инструментов GM?

AP ★★★★★ ()
Ответ на: комментарий от AP

Конечно. У меня вообще немаленькая коллекция всяких сэмплов :)

Я в свое время собирал по кусочкам из всяких источников несколько патчсетов, «как в SC номер такой-то, но лучше» или «как в XG номер такой-то, но лучше».

GreyCat ★★ ()

XMF сабж когда играть научится? И вообще хоть что-нибудь под десктоп?

anonymous ()
Ответ на: комментарий от GreyCat

Да хоть что подключай --- без ручной обработки будет суровый техничный саунд а-ля украинский дубляж Союзмультфильмовских мультов. Хотя это лучше, чем сделанный на коленке говноминус с недоподавленным вокалом. А какой-нибудь бростеп и вовсе в MIDI не запихнёшь.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.