atarionline.pl MIDIcar czyli MIDI na Atari8 - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1:
         
        CommentAuthorAlex
      • CommentTime8 Jan 2017 19:01
       
      Tak, próbowałem. Miałem wiele urządzeń i interfaceów. MIDI to tylko kabel, który przesyła dane z ustaloną prędkością. Nie ma żadnego turbo itp. A dane lecą szeregowo w kolejce FIFO. Pitchbend, overdrive i tym podobne efekty w czasie rzeczywistym sieją i to bardzo, ale po to właśnie sotsuje się równoległe interfacey. W ten sposób dane do różnych instrumentów lecą fizycznie po różnych kablach równolegle co zmienjsza opóźnienia.
      • 2:
         
        CommentAuthorTheFender
      • CommentTime8 Jan 2017 20:01 zmieniony
       
      Nie pytałem o to, pytałem o współpracę jednego instrumentu z Atari, jeśli używa się nie tylko pitchbendu ale również przesyła inne komunikaty sterujące w trakcie odgrywania melodii.
      MIDI to nie kabel tylko standard przesyłu i jego realizacja. A skoro o realizacji mowa interfejsy są różne, lepsze i gorsze na pece. A ja powtórzę jeszcze raz - wątpię czy współpraca z małym Atari będzie odbywała się bez opóźnień z jednym instrumentem.

      Przepraszam Alex, nie potrafię się już jaśniej wyrazić. Jeśli nadal chcesz mi pisać że do wielu instrumentów lepiej używać wiele interfejsów midi (o czym zapewniałem Cię wcześniej, że wiem), pisać że midi to standard (o czym też wiem) lub o tym że nie ma tam kompresji danych (truizm) to uznaj tę dyskusję za zakończoną bo tracę na nią już siły.
      • 3:
         
        CommentAuthorjhusak
      • CommentTime8 Jan 2017 21:01 zmieniony
       
      Się wypowiem, bo się znam.

      Midi podczas grania nuty/cc wysyła 3 bajty. Daje to max 1000 z hakiem zdarzeń na sekundę. Midi podczas odgrywania nie potrzebuje przetwarzania, to po prostu kolejka eventów do wysłania teraz i oczekiwanie na następny event. Max przepustowość i minimalne opóźnienia są łatwiej osiągalne na sprzęcie typu Atari, niż na sprzęcie typu Amiga czy PC, gdzie mamy multitasking i kwanty czasu (stąd taka popularność MIDI na ST - tam nie było multitaskingu i nie było słyszalnych lagów)

      Max można 16 nut na raz (co się rzadko zdarza) wysłać w 1/64 sekundy.
      Żadne ucho tego nie usłyszy zwłaszcza, że perkę możemy przesyłać najpierw.

      Procek 6502 przy takiej przepustowości naprawdę się nuuudzi.

      Skupianie się na "sianiu" przez pitchbender czy inne control codes, gdzie te eventy są rozrzucone z reguły POMIĘDZY nutami wbitymi w takty, jest rozmydlaniem się.

      Oczywiście przy wypasionych 32 nutach na raz już będzie słychać lagi, o ile nuty nie będą odpowiednio spriorytetyzowane.

      Lagi midi to 1 ms przy jednej nucie; przy 16 to jak pisałem 16 ms. Przy najlepszych MIDI na USB mamy lagi kilka - kilkanaście ms na nutę (pozostałe w pakiecie grają natychmiast) + opóźnienie wewnętrzne systemu, gdzie event przechodzi przez kilka procesów, zanim dojdzie do syntezatora, co daje następne kilka - kilkanaście milisekund.

      Kiedyś z Candle siedzieliśmy przy jego midi i dziwił się on, że naciska klawisz, a dźwięk w programowym syntezatorze pod WIN pojawia się 0.2-0.3 sekundy później! Przy naciskaniu myszki na klawiszach wirtualnej klawiatury na ekranie czy klawiatury literkowej dźwięk był od razu. PC/Windows nie działa z midi i na ten temat nie ma dyskusji.
      • 4:
         
        CommentAuthorTheFender
      • CommentTime8 Jan 2017 21:01 zmieniony
       
      @jhusak: 1000 zdarzeń/s to inaczej 1ms rozdzielczość danych.Niby spoko i bajka ale z drugiej strony te 32 zdarzenia na raz to wbrew pozorom jest ilość jaką bardzo łatwo osiągnąć. Ale do prostych utworów, bez kilkuwarstwowych brzmień wyzwalanych osobnymi zdarzeniami i bez innych parametrów sterujących w locie (np. panorama,filtr,rezonans filtra,poziom pogłosu na kilku kanałach) jest to wartość aż nazbyt wysoka ;)

      Przepustowość midi szybko okazywała się niska do bardziej zaawansowanych klawiszy, czego dowodem jest opracowanie podłączenia TO HOST przez Yamahę już w latach 90. Później jak ktoś chciał cyfrowo przesyłać również dźwięk konieczne było wyposażenie klawiszy w firewire. Teraz popularne jest jak to wszystko goni po USB2.0 i daje radę + do tego jest stosunkowo tanie. Firewire jednak oczywiście lepsze bo pozwala na kilkukanałową obsługę audio w lepszych parametrach dźwięku. Po USB, oprócz midi leci "tylko" stereo - zazwyczaj cd quality 16bit/44100.
      • 5: CommentAuthorpin
      • CommentTime9 Jan 2017 00:01
       
      Indżoj!



      ;)
      • 6:
         
        CommentAuthorTheFender
      • CommentTime9 Jan 2017 17:01
       
      I gra gitara :)
      • 7:
         
        CommentAuthorjhusak
      • CommentTime10 Jan 2017 00:01
       
      To, co chciałem w swoim poście przekazać to to, że MIDI jest wąskim gardłem, a nie Atari. Można spokojnie dorzucić drugie midi na drugim pokeyu i dalej będzie śmigać. Wysyłanie eventów na oba midi nie dawało by praktycznie żadnego narzutu czasowego w porównaniu do pojedynczego midi.
      • 8:
         
        CommentAuthorAlex
      • CommentTime10 Jan 2017 02:01
       
      Kuba napisał to, o co mi chodziło :) To wąskie gardło powoduje, że im bardziej skomplikowany i/lub szybki utwór, tym więcej niedokładności jest przy odtwarzaniu i tyle. Można się spierać o milisekundy - jedny słyszą opóźnienia, inni nie, ale nie zmienia to faktu, że zabawa jest przednia :)
      • 9:
         
        CommentAuthorTheFender
      • CommentTime10 Jan 2017 07:01 zmieniony
       
      No dla mnie prostego muzyka taka argumentacja trafia.

      Z 2 strony mam klawisz, który komunikaty MIDI śle po USB1.0 (interface zabudowany w klawisz) i opóźnień słyszalnych nie mam. A słyszę różnicę pomiędzy 2ms a 7 ms. Mało tego, nawet gdy gram wtyczkami vsti z poziomu ASIO (sterownik audio niskopoziomowiec) mam latencję 2ms i jest to latencja ASIO. Nie stwierdziłem dodatkowego narzutu z tytułu sterownika klawiatury (tej muzycznej). Więc tak się zastanawiam Kuba, czy przypadkiem ten kolega Candle nie miał jakiegoś badziewnego interfejsu z kiepskim sterownikiem. Jest też możliwe, że zrobił się dziwny narzut z powodu czegoś innego. 200, 300 ms to jest naprawdę kosmiczne opóźnienie.
      • 10:
         
        CommentAuthorYosh
      • CommentTime12 Jan 2017 22:01
       
      dla mnie prostego kodera szybkość interfejsu tłumaczy sporo :D

      Właśnie szukam jakieś klawiatury midi, a nie midi-usb i ciężko jest (w rozsądnych pieniądzach do popykania...)

      no ale usb do atarki tak łatwo nie włożę..
      • 11:
         
        CommentAuthorTheFender
      • CommentTime13 Jan 2017 08:01
       
      Większość klawiatur MIDI, oprócz USB posiada MIDI IN/OUT na dinach.
      • 12: CommentAuthormakary
      • CommentTime13 Jan 2017 17:01
       
      Yosh: tak, ciężko jest teraz z tradycyjnymi złączami w segmencie "budżetowym", przerabiałem dokładnie to samo ostatnio. Kupiłem używaną.
      • 13:
         
        CommentAuthorTheFender
      • CommentTime13 Jan 2017 18:01
       
      Ale co wy opowiadacie koledzy, przykłady pierwsze z brzegu:
      ->link<-
      ->link<-
      ->link<-
      ->link<-
      (sorry za thomana, to nie jest reklama )
      • 14:
         
        CommentAuthorYosh
      • CommentTime13 Jan 2017 21:01
       
      Dzięki!

      sklep jak sklep ale ma wyszukiwarkę! to może jakiś model znajdę.

      wiesz.. ja wpisywałem MIDI i dostawałem midi usb :(
      • 15:
         
        CommentAuthorTheFender
      • CommentTime14 Jan 2017 09:01 zmieniony
       
      Yosh niemal KAŻDA klawiatura USB posiada, oprócz USB, "dinowskie" MIDI OUT i jackowy SUSTAIN. Piszę, że niemal każda, ponieważ teraz zrobiła się moda na mikrusy z mini klawiszami - wielkości notesika :) które posiadają tylko usb i to czasami nawet mini usb. Ale te standardowe kontrolery USB z dużymi klawiszami niemal każdy ma MIDI OUT - warto sprawdzić w specyfikacji przed kupnem.
      • 16: CommentAuthorszary
      • CommentTime14 Jan 2017 16:01
       
      A Roland A800PRO? Klawiatura bardzo fajna i jest tam midi "dinowskie". Mam i mogę polecić. Cenowo trochę poza budżetem tu omawianym ale moim zdaniem warta swojej ceny...
      • 17: CommentAuthorpin
      • CommentTime6 Feb 2017 23:02
       















      Jedyne chyba dwie sztuki w PL razem ;)
      • 18:
         
        CommentAuthorYosh
      • CommentTime7 Feb 2017 00:02
       
      :D
      • 19:
         
        CommentAuthorkris3d
      • CommentTime7 Feb 2017 23:02
       
      @pin, to Ty masz smartfon?:)
      • 20: CommentAuthorpin
      • CommentTime8 Feb 2017 00:02
       
      Nie. A do czego mi on? ;)
      • 21: CommentAuthorpin
      • CommentTime6 Jan 2018 16:01 zmieniony
       
      @Alex - zgrałeś ten soft o którym wspominałeś?

      Tak przy okazji, ukazała się właśnie poprawiona wersja MIDI Sequencera (Sygita), poprawki wniósł FOX. Z nowości - przy wpisywaniu nut w patternie mamy na bieżąco odsłuch, SEQ pobiera też parametr z linii poleceń, więc ładowanie danych do bufora można zautomatyzować pod Runextem SpartaDOS X. Czyli - RETURN na pliku *.SEQ i gotowe.
      • 22:
         
        CommentAuthorKaz
      • CommentTime11 Nov 2020 13:11
       
      Odnośnie tematu tworzenia coverów muzycznych z plików SAP konwertowanych do MIDI, który wisi chwilowo na głównej stronie:

      ->link<-

      to pojawił się komentarz autora programu POKEY2MIDI i myślę, że warty wyeksponowania, żeby nie przepadł:

      LucaVB:

      Hey, I'm the creator of POKEY2MIDI! Thanks for letting the word out about this, I'm happy to know others find it useful. :)

      A few remarks:

      - You don't really need to bzip2 the .txt dumps before conversion. I added that feature just to prevent the git repository from being huge with the sample dumps.

      - You can mak MIDIs with the notes aligned to the bars! Here's how:

      1) Run the script with the --findbpm option. It will convert to a MIDI file but in the process gives some estimated (super-precise) BPMs for the track.

      2) If you check them manually (using a BPM tapping tool, search online for one) you can usually find the correct one.

      3) Then you can run the script again with the --bpm option and specify the number it found previously (make sure to use the full precision!)

      4) The resulting MIDI file should have everything aligned to the bars!

      But this doesn't work if the track changes tempo throughout.

      Anyway, if you guys have suggestions feel free to send a push request on github or contact me through Twitter or Reddit. Cheers!
      • 23:
         
        CommentAuthorKaz
      • CommentTime12 Nov 2020 13:11
       
      Autor dodał jeszcze:

      LucaVB:

      Like I mentioned in that little comment, POKEY2MIDI can do some of the hard work of aligning things properly and such, but it takes some manual input. I also have a provisional algorithm for doing the vibratos better (using pitch bends, which I never liked anyway), but it seems spotty right now.

      Anyway, if you have any questions or suggestions please let me know! I'd love to help get more people adapting all this excellent POKEY music. It deserves to live on! :)


      Do apelu się przyłączam - jeśli ktoś sprawdza ten temat, niech autorowi daje znać, jakie wnioski, pomysły na poprawki, etc.
      • 24:
         
        CommentAuthorAlex
      • CommentTime13 Nov 2020 01:11 zmieniony
       
      Kaziu, konwersja POKEY-a do MIDI jest bardzo karkołomna i jestem pod wrażeniem :) Szczerze mówiąc te MID-y mi średnio brzmią, choć chylę czoła przed autorem. Pomijając, że jest to narzędzie pecetowe, ja też kiedyś myślałem nad stworzeniem konwertera, ale szybko zrezygnowałem. Dlatego ćwierć wieku temu (o żeż ty...) podjąłem decyzję, by skupić się na źródle dźwięku, a plik z muzyką (tudzież player) zostawić "as is". Dlatego Niezależnie od kierunku odtwarzania (POKEY -> MIDI czy MIDI -> POKEY) lepiej i prościej jest zająć się tzw. ostatnią milą czyli odtwarzaniem właściwego dźwięku na żądanie :)
      • 25:
         
        CommentAuthorAlex
      • CommentTime13 Nov 2020 02:11 zmieniony
       
      Jako ciekawostkę dodam, że w 1997 roku, gdy stworzyłem stronę Bit Busters, jako muzykę w tle (było to modne, a jak) dałem konwersję kawałka "Coco Jamboo" w formie MID-a z małego Atari i w sumie... z POKEY-a :D

      Oryginał napisałem korzystając ze słynnego MIDI Sequencera Macieja Sygita siedząc parę godzin ze słuchawkami na uszach wsłuchując się do znudzenia w nagranie z pirackiej kasety z tym nagraniem kupionej na wakacjach :)

      Tę wersję słyszeli wszyscy obecni na QuaST Party 97, ostatnim WAPNIAK-u oraz na ostatnim Silly Venture.

      Plik SEQ odtworzyłem na POKEY-u przez interface Rolanda i zgrałem na PC (jak leci) słynnym programem Cubase firmy Steinberg :) Następnie to, co udało się zgrać zapisałem jako plik MID. Niestety brak jest w nim synchronizacji, ale prawie nie słychać.

      Jeśli ktoś ma ochotę sprawdzić, to plik jest tutaj ->link<- - Ścieżki, tonacja i tempo identyczne z oryginałem :p

      Strona działa jako tako, ale muzyka gra tylko pod Internet Explorerem, bo HTML od tamtych lat się nieco zmienił, a IE jest zawsze "na czasie" :D Strona www.bitbusters.pl (wtedy nie "pl" tylko "friko.onet.pl") była pisana w 1997 roku, więc trochę czasu minęło...
      • 26:
         
        CommentAuthorKaz
      • CommentTime14 Nov 2020 10:11
       
      Alex - dobra historia, dzięki za podzielenie się, bo zbieram takie. Co do pliku MID, który podlinkowałeś - u mnie to jakaś kokofonia dźwięków. Podejrzewam, że ujawniła się podstawowa wada plików MID - to, co jest słyszane, zależy od urządzenia odtwarzającego, a nie od autora :)

      A przy okazji, jeśli ktoś nie zauważył, Gades zaktualizował sposób konwersji SAP do MID dzięki ostatnim uwagom autora konwertera:

      ->link<-
      • 27:
         
        CommentAuthorAlex
      • CommentTime14 Nov 2020 12:11
       
      Generalnie ten MID odtwarza się nawet na Windows Media Playerze u mnie na W7 ;)
      • 28:
         
        CommentAuthorAlex
      • CommentTime16 Nov 2020 00:11
       
      Poza tym to jest standard General MIDI (GM) bez udziwnień. Problemy byłyby, gdybym używał rozszerzenia standardu XG Yamahy :)
      • 29:
         
        CommentAuthorKaz
      • CommentTime17 Nov 2020 23:11
       
      Panowie, aktualizacja pliku z plikami MIDI! Gades napisał:

      Gades:

      Nie dawało mi spokoju to, co napisał autor konwertera POKEY2MIDI, więc najpierw napisałem posta z opisem, jak jego porady wykorzystać do pojedynczych plików, a potem - jako że nadal mi to nie dawało spokoju - skonwertowałem te 5000 plików jeszcze raz, z uwzględnieniem zdobytych informacji. Na dodatek udało mi się lepiej upakować te pliki, więc archiwum ma teraz 26MB


      Link tutaj, podmieniony również w nowince:

      ->link<-
      • 30: CommentAuthorpin
      • CommentTime1 Feb 2022 01:02
       
      ojej, jak mogłem to przegapić :) Już wiem co będę robił w najbliższych dniach ;)
    1.  
      Może mam pecha, ale pierwszy kawałek jaki wybrałem z katalogu MISC, utwór "What is Love" jest mocno nie teges (odtwarzam na windowsowym playerze). Kilka pozycji dalej, utwór "Year_198x" też coś nie halo.
      • 32: CommentAuthorpin
      • CommentTime1 Feb 2022 11:02
       
      Konwersje z automatu nigdy nie będą ok, ale może się coś ciekawego przytrafić. Muszę przesłuchać swoich kawałków z ciekawości. Na Atari oczywiście :P
      • 33: CommentAuthorpin
      • CommentTime1 Feb 2022 11:02
       
      Przydał by się też konwerter MID2SEQ
    2.  
      Przygotowałem zgraną próbkę z trzech syntezatorów - Roland MT-32, Korg NS5R oraz Yamaha DB51XG.

      Wbrew obawom - wariant XG zachował się najlepiej, Korg słabiutko (mimo standardu General MIDI - słychać błędy mapowania perkusja/klawisze - stąd "kakofonia"). Yamaha zachowała się na tyle dobrze, że algorytmy YouTube zgłosiły roszczenie dotyczące wykorzystania utworu :P

      Roland MT-32 zaskakująco - brzmi bardzo sztucznie, ale spodziewałem się błędów mapowania, a tu takie przyjemne brzmienie wyszło - @Alex - dodałeś w nagłówku instrukcje mapowania instrumentów?

      ps. tak słyszę, że tor audio MT-32 mam do poprawy, bo wyjątkowo płasko wyszło.

      • 35:
         
        CommentAuthorjhusak
      • CommentTime1 Feb 2022 15:02
       
      @pin, MID2SEQ - ossochozi?
      • 36:
         
        CommentAuthorpancio
      • CommentTime1 Feb 2022 15:02
       
      Jamaszka gra miodnie...
      • 37: CommentAuthorpin
      • CommentTime1 Feb 2022 19:02
       
      @jhusak - chodzi o konwerter formatu MID do SEQ, czyli jedynego trackera na Atari 8 bit który umożliwia pisanie muzaków w midi. Wówczas takie konwersje z chip do MID można by manualnie poprawiać. Aha - mam poprawioną wersję tego trackera (ten Sygita tracker) - przy wpisywaniu nuty w patternie słychać co się wpisuje, oraz program przyjmuje jako parametr spod dosa plik *.seq i automatem ładuje do edytora. Autorem poprawek jest Fox.
      • 38: CommentAuthorpin
      • CommentTime1 Feb 2022 19:02
       
      Aha - i jest jeszcze news. PokeyMAX nie dogaduje się z interfacem MIDIMATE po SIO. Domniemam, że ze wszystkim, co ma swój zegar na pokładzie.
      • 39:
         
        CommentAuthorAlex
      • CommentTime1 Feb 2022 19:02
       
      Z tego, co słyszę, jedynie Yamaha gra poprawnie. Pozostałe dwa mają skopane instrumenty.

      Jeśli korzystałeś z pliku "cj.mid" to ten plik jest po prostu streamem MIDI zgranym na PC chyba w Cubase prosto z Atari :)

      Wszystkie instrumenty są ustawiane przez MIDI Sequencer, więc trudno mi powiedzieć czy struktura jest poprawna. Najlepiej odpal bezpośrednio z Atari.
      • 40:
         
        CommentAuthorpirx
      • CommentTime2 Feb 2022 18:02
       
      @pin mi po włożeniu pokeymaxa do a800 + inkognito przestał działać fujinet, może ten sam problem. rozmawiałem z foftem, radził zmieniać kondzioły i diody (nie do końca wiem, ossochozi), ale może faktycznie problem jest większy :(
      • 41: CommentAuthorpin
      • CommentTime2 Feb 2022 21:02
       
      mi ten Zaxonowy właśnie przestał, a drugi - ten od Madrafi'ego działa.
    3.  
      @pirx, ale przestał działać, czy przestał włączać się konfig przy włączonej Sparcie w Incognito/U1MB? Na to rozwiązaniem jest:

      - w FujiNET kliknąć prawy przycisk (ten pojedynczy - RESET)
      - w SpartaDOS X wykonać polecenie COLD /N
      - można sflashować w Incognito Spartę, taką ze wszystkimi narzędziami dla FujiNET, korzystając z ATRa

      cały proces opisany tutaj:
      ->link<-
      • 43: CommentAuthorpin
      • CommentTime2 Feb 2022 22:02 zmieniony
       
      jakież to narzędzia dla FN zostały umieszczone w SDX że aż dosa trzeba flaszować? Pierwsze słyszę.

      Sprawa druga - przestrzegam przed flaszowaniem U1MB przez Fujinet chyba, że szukacie sobie problemów.
      • 44:
         
        CommentAuthorpirx
      • CommentTime2 Feb 2022 22:02
       
      @mkolodziejski
      niestety nie, nic się nie dzieje nawet po wyłączeniu wszystkiego (bez sparty, hdd, itp.)
      fujinet działa z innym kompem...
      • 45: CommentAuthorpin
      • CommentTime2 Feb 2022 23:02
       
      Pirx - a możesz testowo wrzucić zamiast max'a zwykłego Pokeya i sprawdzić czy FN wstanie?
    4.  
      @pin - dodane są narzędzia, które nie występują standardowo w SDX - FCONFIG, FMOUNT, FEJECT, FLH, FLD, FMALL, FNEW do wykonywania z poziomu SDX wszystkich czynności dostępnych normalnie z programu będącego interfejsem FUJINET.

      Czemu przestrzegasz przed flashowaniem U1MB z poziomu Fujinet?
      • 47: CommentAuthorpin
      • CommentTime3 Feb 2022 00:02
       
      Te narzędzia były dostępne od dawna w obrazie dysku ATR, nie ma to natomiast nic wspólnego z samym dosem w sensie jakiejś aktualizacji "rom".

      Przed aktualizacją przez FN przestrzegam dlatego, że często zdarzają się błędy transmisji co w połączeniu z flashowaniem urządzenia w skrajnym przepadku skończy się na programowaniu U1MB z zewnątrz programatorem.
      • 48:
         
        CommentAuthorpirx
      • CommentTime3 Feb 2022 16:02 zmieniony
       
      @pin @mkolodziejski - wczoraj rozkręciłem drania i wiecie co się okazało - pin (hehehe) w gnieździe SIO się ułamał... także wymianka gniazda póki co :]

      Nie chcę zaśmiecać bardziej wątku, thx Kuba, sprawdzę, czy dam radę coś zmajstrować we wtyczce, mam tu ograniczone zasoby narzędziowo drutowe, ale sąsiad ma kilka płyt z gniazdami SIO, więc coś się poradzi ;)))
      • 49:
         
        CommentAuthorjhusak
      • CommentTime3 Feb 2022 21:02
       
      Te piny się prostuje, lutuje do jakiegoś druta i dalej działają.
      • 50:
         
        CommentAuthorKaz
      • CommentTime4 Feb 2022 01:02
       
      Dreamblaster: