Archive for the ‘midi’ Category

Konwerter Music-X to SMF – Standard Midi File

Thursday, June 17th, 2010

Translate original post with Google Translate

Wielu zajmujących się muzyką w latach 90 tworzyło przy pomocy Atari ST (wbudowane midi) czy też Commodore Amiga (prosta przejściówka Midi). Na Atari ST królował Cubase, na Amidze m. in. Music-X.

Music-X jest dla mnie jedynym sekwencerem midi, który ma odtwarzanie sekwencji. To są takie podślady (subtracks) odpalane ze ścieżki głównej. Wystarczy sobie zaprogramować bas, chórki, perkusję i szaleć, bo każdą taką sekwencję można odtwarzać w innej wysokości (transpozycja), np. 0 – to główne C, +7 to G, a -7 to F oktawę niżej. Bardzo szybko się tworzy aranżacje na zasadzie: nie powtarzaj się.

Ja używałem Amigi do komponowania, zebrało się kilkanaście kawałków, jednak nie za bardzo było co z tym dalej robić. Miałem 2 możliwości, z czego przez obie przeszedłem.

  1. zmuszenie Music-X pod emulatorem, by dał strumień midi. Napisałem łatkę pod emulator i konwerter strumienia midi do SMF. Działało, ale dużo zachodu z tym było.
  2. napisanie konwertera Music-X to SMF.

Oba podejścia zakończyły się sukcesem, jednak drugie podejście jest bardziej uniwersalne.
Konwerter v0.5 500-linijkowy napisany w pythonie 2.5.1 do pobrania tutaj

Powinno działać nawet na niższych (>=2.4) wersjach pythona.

Dla tych, co są ciekawi zastosowanych rozwiązań:

  • ten programik celowo – dla wygody użytkownika – jest w jednym pliku.
  • jest pisany “na kolanie” – ważne, żeby działał, rozwijanie nie jest planowane :), chociaż jest bardzo elastyczny.

CHANGELOG:

Fixed from 0.4: (2010-06-18)
– Fixed sequence length setting (when sequence offset is not 0)
– changed ‘len’ variables to ‘length’ not to be in potential conflict with func
– added reverse sorting of events by event type before write;
now pgmchg, ctrlchg always before note on; note on before note off. good

Fixed from 0.3: (2010-06-13)
– file format checking added

Fixed from 0.2: (2010-06-10)
– unroll sequences now works ok. (not only first unroll)

Fixed from 0.1: (2010-06-08)
– The code has a little problems with unrolling sequences, sometimes the last note is fired but not finished, this leads to endless notes playing. I have met this problem once or twice, it is easy to remove the notes manually.
– Code cleanup

Initial version: 0.1: (2010-06-08)

Music-X

Saturday, June 12th, 2010

Translate original post with Google Translate

Music-X edytor / sequencer Midi niemal idealny (dla mnie).

Być może jego możliwości wykraczają poza standardowe (a nawet na pewno), jednak pozostałe dodatki (Librarian, Protocols) sprawiają wrażenie niedorobionych.

Jednak Core – czyli sam sequencer – Miodzio. Ja chcę taki GNU! Dokładnie taki! I kompatybilny!


Ekran główny

Ekran główny


Ekran edycji sekwencji

Ekran edycji sekwencji

Żeby samemu zrobić taki, a w ogóle zacząć, muszę mieć dostęp do Core Midi MacOSX w postaci wygodnej biblioteki, aby nie wyważać otwartych drzwi. Poza tym, jeśli użyję wxWidgets albo innych tego typu narzędzi, to aplikacja mogłaby być przenośna.
A może w Javie …

Pozostaje w sferze marzeń.

Robocza wersja nazwy: Music-XXL, albo Music-Y :)

Free Playery i Sekwencery MIDI na MacOS X

Saturday, June 12th, 2010

Translate original post with Google Translate

Niestety – posucha. Dobrych darmowych playerów midi jak na lekarstwo. Oto jest efekt kilkudniowych poszukiwań i testów, który skończył się wyborem również programów shareware.

Dobrze działające playery midi to:

  1. timdity++ – ale nie gra przez zewnętrzne interfejsy midi. GPL.
  2. QMidi – shareware, ale ten gra dobrze i jest dobrze oceniany. Odtwarza Karaoke. Może grać przez zewnętrzny interfejs midi.
  3. Mighty Midi – jest free i wygląda ok, ale nie radzi sobie z PitchBenderem!. Może grać przez zewnętrzny interfejs midi.
  4. MidiPipe – to taki procesor midi – ustalamy ścieżkę przekształceń zdarzeń midi i… pełna wolna amerykanka! Ma wbudowany player midi (także przez zewnętrzny interfejs), chyba najlepszy, bo darmowy :) Dodatkowo można sterować komunikatami midi i uruchamiać pliki SMF przez komunikaty midi!

Sekwencery, które mi odpowiadają:

  1. MidiSwing 0.3.5b – napisany w Javie, mi się uruchamia z jakimiś wyjątkami, nie da się nic zrobić. Pewnie byłby fajny, bo ludzie chwalą za prostotę a ganią za stabilność.
  2. MU.LAB 3 – wersja free jest ok, wszyscy się rozpływają, że szybki i taki “gładki” w obsłudze, ale tylko 4 traki grają. Świetnie przemyślany, szybko się tworzy. Można kupić wersję XT, w której gra 8 traków za 25 euro, lub Unlimited za 75 euro.
  3. Easy Beat 2.2.1 – ten jest fajny i stabilny, 50 dolarów, niestety nie potrafi zmienić instrumentu w środku ścieżki, a także obsługuje kilka głównych kontrolerów, pozostałe ignoruje. Eksportuje do GarageBand.
  4. Apple GarageBand – ten to jest strasznie powolna kobyła, kłopoty w ustawieniu midi out (uciążliwe, dla każdego tracka trzeba wykonać dobre kilka kliknięć myszką i przejść przez 2 listy wyboru, żeby przypisać wyjście midi i kanału do jednej ścieżki). Poza tym ma jakieś deadlocki, trzeba force quit. Z midi nie polecam do pracy.

Ze wszystkich testowanych kupiłbym easy beat lub MU.LAB 3; GarageBand mam. No i jeszcze będę męczył midi Swing.

Z ostatniej chwili. Znalazłem buga w MU.LAB 3. Napisałem o tym na forum. Odpowiedź i potwierdzenie natychmiastowa. Za 2 dni info o znalezieniu w kodzie odpowiedzialnych fragmentów a także informacja, że w następnej wersji będzie to poprawione. Następna wersja pojawiła się w ciągu tygodnia.

Wielkie brawa dla twórców MU.LAB!

Zakupiłem MU.LAB 3. Jest świetny.

Midi

Tuesday, June 8th, 2010

Here’s a link to the POTEM Cabaret webpage with the midi files we wrote with my sister Paulina.

ttp://www.kabaretpotem.art.pl/midi/midi.html

Unfortunately, it does not work since May 2009.