XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004

Podobne dokumenty
Elektroniczne instrumenty muzyczne MIDI. w elektronicznych instrumentach muzycznych

Elektroniczne instrumenty muzyczne MIDI. w elektronicznych instrumentach muzycznych

Universal MIDI controller. Uniwersalny sterownik MIDI

MIDI. w syntezie dźwięku

Opisy i instrukcje popularnych keyboardów

MIDI cyfrowy interfejs instrumentów muzycznych,

1.1 Współpraca Modułu Dźwiękowego z jednostka

Dell Display Manager - przewodnik użytkownika

Wykorzystanie kontrolera Behringer X-Touch w Presonus Studio One Adam Pietruszko

Dell P2018H Dell Display Manager Instrukcja użytkownika

Spis Treści. Co to jest? Budowa Próbkowanie Synteza FM Synteza WT MIDI

Przełącznik KVM USB. Przełącznik KVM USB z obsługą sygnału audio i 2 portami. Przełącznik KVM USB z obsługą sygnału audio i 4 portami

Cechy karty dzwiękowej

Ustawienia ogólne. Ustawienia okólne są dostępne w panelu głównym programu System Sensor, po kliknięciu ikony

instrumentów muzycznych.

Mac i MIDI. profesjonalne studio w Twoim domu. Michał Podpora Apple Distinguished Educator

Przemysłowy odtwarzacz plików MP3

Instrukcja użytkownika Dell Display Manager

24-kanałowy mikser do efektów świetlnych DMX. Nr art Opis urządzenia

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

Instrukcja do oprogramowania ENAP DEC-1

DVD MAKER USB2.0 Instrukcja instalacji

Instrukcja instalacji

Evolution MK-461C Klawiatura sterująca

Opis / Połączenia STR. 1

Standard transmisji równoległej LPT Centronics

Platforma e-learningowa

INSTRUKCJA OBSŁUGI PILOTA COSMO G3 +

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

Instrukcja obsługi programu. BlazeVideo HDTV Player v6

Urządzenia zewnętrzne

ROZDZIAŁ 1 Instrukcja obsługi Grand Video Console

Skrócona instrukcja obsługi

Laboratorium Komputerowe Systemy Pomiarowe

Przemysłowy odtwarzacz plików MP3 SD

Ministerstwo Finansów

Wersja polska. Wstęp. Zawartość opakowania. IP004 Sweex Wireless Internet Phone

Smart Pianist podręcznik

POLITECHNIKA WROCŁAWSKA WYDZIAŁ ELEKTRYCZNY KATEDRA ENERGOELEKTRYKI LABORATORIUM INTELIGENTNYCH INSTALACJI ELEKTRYCZNYCH

8. MAGISTRALE I GNIAZDA ROZSZERZEŃ. INTERFEJSY ZEWNĘTRZNE.

Dell UltraSharp UP3017 Dell Display Manager Instrukcja użytkownika

rh-serwer 2.0 LR Sterownik główny (serwer) systemu F&Home RADIO. Wersja LR powiększony zasięg.

Tablet graficzny XP-Pen

Instrukcja obsługi. Rozdział I. Wprowadzenie. 1.1 Wstęp. Techtop USB-P1 Telefon VoIP na USB. 1.2 Specyfikacja:

OPIS PROGRAMU USTAWIANIA NADAJNIKA TA105

MIDI2DMX. sprzętowy konwerter sygnałów MIDI na DMX. wwww.midi2dmx.eu

PROBLEMY TECHNICZNE. Co zrobić, gdy natrafię na problemy związane z użytkowaniem programu DYSONANS

TRX API opis funkcji interfejsu

Referat pracy dyplomowej

M-Audio Axiom 49 Klawiatura sterująca MIDI

Miditech MidiStart-2 ProKeys MidiStudio-2 ProKeys Klawiatury sterujące MIDI

Przemysłowy odtwarzacz plików MP3 SD ze wzmacniaczem 2x10 Watt

Następnie uruchom b-link z Menu Start lub ponownie uruchom komputer.

DOUBLEPHONE. Instrukcja obsługi. Dwie komórki w jednej MT847

interfejs szeregowy wyświetlaczy do systemów PLC

1. Opis. 2. Wymagania sprzętowe:

Telefon głośnomówiący HP UC Speaker Phone. Instrukcja obsługi

Dziękujemy za wybór pianina cyfrowego Artesia DP-7 +

Tablet Graficzny Star 03 Windows 1 O, 8, 7 i Mac 10.8 lub nowszy

Budowa 0. Schemat i opis toru sygnałowego 0. Ręczne przełączanie pętli 0. Ustawianie kanału MIDI 0. Sterowanie za pomocą rozkazów MIDI 0

MAC DVB-T STICK. Instrukcja obsługi. Watch & record Digital TV programs on Your Mac! MT4170

Spis treści. Co można zrobić po podłączeniu instrumentu do komputera?... str. 2. Podłączanie do komputera: którego złącza użyć?... str.

Kod produktu: MP01105

K2 XVR-04, K2 XVR-08, K2 XVR-16, K2 XVR-24. Rejestrator Cyfrowy S E R I E: K2 XVR. DVR klient. Instrukcja użytkownika

Urządzenia zewnętrzne

Licznik rewersyjny MD100 rev. 2.48

PROJECT OF FM TUNER WITH GESTURE CONTROL PROJEKT TUNERA FM STEROWANEGO GESTAMI

Tablet Graficzny. oraz

Instrukcja obsługi. Karta video USB + program DVR-USB/8F. Dane techniczne oraz treść poniższej instrukcji mogą ulec zmianie bez uprzedzenia.

KONWERTER DVB IP -> DVB ASI DELTA-2

Złącza stosowane w systemach audio

Windows 10 - Jak uruchomić system w trybie

OS 4.0. Revolution goes-on. Nowy system dla instrumentów: VIVO S7, S3, S1, SX7, VIVO P7, P3, VIVO H7, H3, H1, COMBO J7

QUERY język zapytań do tworzenia raportów w AS/400

Jeśli używasz ustawienia głośników 5.1: - Zamiana głośnika środkowego z niskotonowym

KORG EK-50 + POKROWIEC

Moduł DEIMIC IR Spis treści

TWIN PHONE MT843. Instrukcja obsługi

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Akai MPD24 Sterownik MIDI

_PL_ PA16000D INSTRUKCJA OBSŁUGI

Instrukcja instalacji

UNIFON podręcznik użytkownika

Opis konfiguracji ST do współpracy z kolektorem DENSO BHT 8000

STEROWNIK TUBY LED STM-64

Spis treści. Co można zrobić po podłączeniu instrumentu do komputera?... str. 2. Podłączanie do komputera: którego złącza użyć?... str.

Instrukcja obsługi Czytnika RFID-DESK

Nagrywarka DVD/VHS COMBO HDMI Skrócona instrukcja obsługi.

IMP Tester v 1.1. Dokumentacja Techniczno Ruchowa

Jak odbierać sygnały radioamatorskie z Międzynarodowej Stacji Kosmicznej (ISS) przy

Magistrale i gniazda rozszerzeń

PX 151. DMX-RS232 Interface INSTRUKCJA OBSŁUGI

Notepad++ / PuTTY. Interaktywne środowisko programowania w języku ForthLogic. Wersja dokumentu P.1. Wersja dokumentu NP1.

Program V-SIM tworzenie plików video z przebiegu symulacji

Instrukcja obsługi przełącznika KVM ATEN CS661. Opis urządzenia. Instalacja urządzenia

2 portowy przełącznik KVM USB z wbudowanymi przewodami KVM U202 Skrócona instrukcja obsługi

Ciśnieniomierz typ AL154AG08.P

Instrukcja obsługi rejestratorów XVR. Zapoznaj się przed użyciem

Opis Ogólny OPIS INTERFEJSU POMIAROWEGO AL154SAV5.

SIECI KOMPUTEROWE I TECHNOLOGIE INTERNETOWE

Transkrypt:

XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004 DOMINIK KŁYS WOJCIECH ZABIEROWSKI ANDRZEJ NAPIERALSKI Katedra Mikroelektroniki i Technik Informatycznych Politechniki Łódzkiej APLIKACJA WYKORZYSTUJĄCA KOMUNIKATY MIDI, ODZWIERCIEDLENIE DA- NYCH W POSTACI PROSTEGO ZAPISU NUTOWEGO Streszczenie W artykule przedstawiono podział i strukturę komunikatów MIDI, dzięki którym urządzenia pracujące w tym standardzie mogą się ze sobą komunikować. Opisano także podstawowe założenia, które muszą spełniać dane urządzenia, aby komunikacja mogła mieć miejsce. W celu zaprezentowania efektu komunikacji, zaprezentowana została prosta aplikacja realizująca komunikację między komputerem, a zewnętrznym urządzeniem MIDI (syntezatorem). Pozwala ona na analizę struktury odebranych danych, jak również na wysyłanie wybranych komunikatów na zewnętrzny syntezator. Główny obszar roboczy przedstawia także reprezentację odbieranych danych w postaci prostej notacji nutowej, w celu weryfikacji poprawności transmisji. Celem artykułu jest zapoznanie czytelnika z założeniami standardu General MIDI Level 1 oraz zwrócenie uwagi, że komunikacja między komputerem, a syntezatorem to tylko przykład połączenia. Zamiast zewnętrznego syntezatora może pojawić się inne urządzenie posiadające kontroler MIDI i wykonujące zupełnie inne operacje od tych, wykonywanych przez urządzenia muzyczne. 1. Trochę historii MIDI (Musical Instrument Digital Interface) definiuje jednocześnie cały zbiór zasad komunikowania się urządzeń MIDI, włączając w to specyfikację odpowiedniego interfejsu, dzięki któremu urządzenia są połączone ze sobą. MIDI jest przede wszystkim kojarzone z urządzeniami muzycznymi. Już od kilkudziesięciu lat na rynku światowym są obecne elektroniczne instrumenty muzyczne, ale można by powiedzieć, że ilu producentów, tyle różnych rozwiązań, niestety często niekompatybilnych ze sobą. Dlatego też na początku lat 80-tych postanowiono wprowadzić jeden podstawowy standard, który miał definiować jednoznacznie sposób połączeń urządzeń pracujących w systemie MIDI oraz język komunikacji. Ze swoją propozycją wystąpiła firma ROLAND i na konferencji w 1991 roku został przyjęty podstawowy standard MIDI (General MIDI Level 1). 2. Założenia standardu General MIDI Level 1: urządzenie udostępnia przynajmniej 24 głosową polifonię dynamicznie rozmieszczaną na wszystkie kanały: polega to na tym, że każdy kanał MIDI może grać innym brzmieniem i odbierać informacje dotyczące wartości siły uderzenia w klawisze, urządzenie udostępnia 16 kanałów MIDI, przy czym kanał o numerze 10 jest zarezerwowany dla instrumentów perkusyjnych, teoretycznie dziewięć numerów kanałów poniżej perku-

D. Kłys, W. Zabierowski, A. Napieralski APLIKACJA WYKORZYSTUJĄCA KOMUNIKATY MIDI, ODZWIERCIEDLENIE... syjnego jest przeznaczonych dla instrumentów melodycznych, jednak standard GM wymaga, aby urządzenie udostępniało wszystkie 16 kanałów, urządzenie obsługuje następujące komunikaty: MODULATION WHEEL - modulacja dźwięku, AFTERTOUCH informacje dotyczące wartości dociskania klawisza, EXPRESSION PEDAL - kontroler pedału ekspresji, ALL NOTES OFF - wyłączenie wszystkich nut, RESET ALL CONTROLERS - przywracanie fabrycznych wartości wszystkim kontrolerom, PITCH BEND - płynna zmiana wysokości dźwięku, PITCH BEND SENSITIVITY - czułość pitch-bendera, MAIN VOLUME poziom głośności, PAN umiejscowienie dźwięku w panoramie stereo, SUSTAIN podtrzymanie dźwięku, możliwość zmiany parametrów Coarse Tuning i Pitch Bend Range za pomocą kontrolerów RPN, standardowy zakres wysokości sterowanej komunikatem PITCH BEND powinien wynosić +/- 2 półtony, istnieje specjalny komunikat SYSTEM EXCLUSIVE umożliwiający włączenie i wyłączenie standardu GM w danym instrumencie, dźwięk C razkreślne powinien odpowiadać nucie o numerze 60, minimum 128 brzmień podstawowych instrumentów ułożonych w odpowiedniej kolejności, brzmienia podzielone są na 16 grup tematycznych, każda zawiera po 8 różnych brzmień (bank brzmień), minimum 47 brzmień perkusyjnych przypisanych do właściwych klawiszy nut. Jeśli chodzi o sam interfejs, czyli sposób połączenia ze sobą urządzeń, konsekwencją wprowadzenia MIDI było pojawienie się w każdym urządzeniu (zgodnym z tym standardem) odpowiednich gniazd o znajomym skądinąd kształcie - złącze DIN-5 wykorzystywane było bowiem wcześniej m.in. do łączenia sprzętu muzycznego. Do poprawnego funkcjonowania urządzeń połączonych w systemie MIDI potrzebne są trzy typy gniazd [1]: MIDI IN wejście MIDI, MIDI OUT wyjście MIDI, MIDI THRU wyjście, przejmujące dane bezpośrednio z wejścia, tzw. przelotka (nie jest montowane we wszystkich urządzeniach).

XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004 Rys. 1. Gniazda MIDI IN i MIDI OUT w instrumencie klawiszowym Z biegiem lat rozszerzano możliwości MIDI. Dzięki niemu można było przesyłać coraz więcej informacji. Wyposażono również komputery w odpowiedni port MIDI, co pociągnęło za sobą rozwój przemysłu informatycznego w dziedzinie tworzenia aplikacji pozwalających komunikować się komputerom z innymi urządzeniami pracującymi w systemie MIDI. Rys. 2. Standardowy kabel MIDI (dwa wtyki DIN-5 oraz wtyk do portu gier w karcie muzycznej komputera)

D. Kłys, W. Zabierowski, A. Napieralski APLIKACJA WYKORZYSTUJĄCA KOMUNIKATY MIDI, ODZWIERCIEDLENIE... 3. Wybrane sposoby połączeń urządzeń pracujących w systemie MIDI Poniższy rysunek przedstawia tzw. połączenie handshake, dzięki któremu urządzenia mogą sterować się nawzajem. Rys. 3. Połączenie handshake Select Instrument: 000 Acoustic Grand Piano In Out Thru Select Instrument: 000 Acoustic Grand Piano In Out Thru A B Select Instrument: 000 Acoustic Grand Piano In Out Thru Poniżej przedstawione jest połączenie instrumentu MIDI z komputerem. Aby skomunikować ze sobą oba urządzenia potrzebny jest jeszcze program sekwenserowy, który będzie miał możliwość odbierania i wysyłania komunikatów MIDI. 4. Klasyfikacja komunikatów MIDI Rys. 4. Połączenie instrumentu MIDI z komputerem Podziału dokonano w zależności od tego, jakiej sfery systemu MIDI komunikat dotyczył. W związku z tym wyodrębniono dwie główne grupy komunikatów MIDI: komunikaty kanałowe (ang. Channel Messages): komunikaty głosowe (ang. Voice Messages), komunikaty trybu pracy (ang. Mode Messages), komunikaty systemowe (ang. System Messages): komunikaty niestandardowe (ang. System Exclusive Messages), komunikaty wspólne dla wszystkich kanałów (ang. System Common Messages), komunikaty w czasie rzeczywistym (ang. System Real Time Messages). Poniżej została przedstawiona tabela ze strukturą komunikatów kanałowych. TABELA 1 Struktura komunikatów kanałowych Bajt statusu Pierwszy bajt danych Drugi bajt danych Nazwa komunikatu

XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004 Hex Binary 8n 1010nnnn 9n 1010nnnn An 1010nnnn Bn 1010nnnn Cn 1010nnnn Dn 1010nnnn En 1010nnnn nr dźwięku nr dźwięku nr dźwięku nr kontrolera nr programu intensywność wybrzmiewania Pitch Bend MSB siła siła intensywność wybrzmiewania 0 lub 127, wartość parametru Note Off Note On Polyphonic Key Pressure (Aftertouch) Control Change - Program Change - Pitch Bend LSB n/nnnn nr kanału MIDI heksadecymalnie/binarnie 5. Aplikacja Channel Pressure (Aftertouch) Pitch Bend (Pitch Wheel) Głównym celem aplikacji był odczyt danych z zewnętrznego syntezatora i reprezentacja ich w postaci notacji nutowej na ekranie monitora. Rys. 5 Fragment zapisu nutowego wygenerowanego przez aplikację W przypadku zapisu nutowego zostały obsługiwane tylko dwa komunikaty: Note On oraz Note Off. W przypadku syntezatora z klawiaturą dynamiczną rejestrowana jest także siła wciśnięcia klawisza. Całość mamy możliwość zapisania w formacie pliku MIDI na dysku komputera i odtworzenia sekwencji. Aplikacja posiada także możliwość rejestrowania większej gamy komunikatów MIDI. Są to komunikaty należące do każdej z wymienionych grup. Aplikacja rozpoznaje rodzaj komunikatu na podstawie jego bajtu lub bajtów statusowych oraz prezentuje poszczególne składowe stanowiące strukturę komunikatu. Istnieje także możliwość wyfiltrowania określonych komunikatów z otrzymanej sekwencji (Rys. 7)

D. Kłys, W. Zabierowski, A. Napieralski APLIKACJA WYKORZYSTUJĄCA KOMUNIKATY MIDI, ODZWIERCIEDLENIE... Rys. 6 Fragment sekwencji komunikatów MIDI wraz z ich strukturą Rys. 7 Filtrowanie komunikatów Należałoby przedstawić w tej chwili moduł realizujący transmisję w drugą stronę, czyli z komputera na zewnętrzny syntezator. Aby móc zaobserwować efekt, wybrane zostały proste, ale zarazem łatwe do oceny ich roli, komunikaty. Mianowicie wysyłany jest komunikat Note On

XII Konferencja Sieci i Systemy Informatyczne Łódź, październik 2004 i w trakcie wybrzmiewania dźwięku, możemy regulować jego modulacją, położeniem w panoramie stereo, a także odchyleniem od ustalonej wysokości w górę i w dół. Rys. 8 Wysyłanie komunikatów MIDI na zewnętrzny syntezator Oczywiście wybrany przez użytkownika dźwięk wybrzmiewa na jednym z 16 kanałów MIDI, również przez niego określonym, z ustawioną głośnością oraz barwą. Wszystkie wartości parametrów są jasno określone w standardzie General MIDI Level 1. Aplikacja daje także możliwość graficznej reprezentacji wciskanych klawiszy na zewnętrznym syntezatorze w postaci wirtualnej klawiatury. Rys. 9 Wirtualna klawiatura Wciśnięcie odpowiednich klawiszy jest ilustrowane na ekranie monitora w postaci czerwonej kropki na danym klawiszu oraz odpowiednio umieszczonych nut na pięciolinii. Wciskając lewy klawisz myszy na odpowiednim klawiszu, wysyłam także komunikat w drugą stronę na wybrany wcześniej port MIDI Out.

D. Kłys, W. Zabierowski, A. Napieralski APLIKACJA WYKORZYSTUJĄCA KOMUNIKATY MIDI, ODZWIERCIEDLENIE... 6. Podsumowanie W artykule zaprezentowana została aplikacja realizująca połączenie dwukierunkowe komputera z zewnętrznym urządzeniem. Językiem komunikacji był język MIDI. Mimo tego, iż standard MIDI jest kojarzony z instrumentami muzycznymi i innymi wykorzystywanymi w tej dziedzinie, to jednak podłączenie do niego komputera może otwierać nowe możliwości zastosowania języka komunikacji, jakim jest języki MIDI. Na pewno zaletą jest prostota budowy komunikatów. Wykorzystując kartę dźwiękową komputera, możemy sterować zewnętrznym urządzeniem, którym zamiast instrumentu muzycznego może stać się każde inne. Wystarczy zaimplementować w nim własny kontroler MIDI, czyli moduł, który odbierałby komunikaty od komputera. Poza prostotą samego języka, należy również zwrócić uwagę na to, że aplikacja taka nie musi angażować dużych zasobów komputera i nie jest konieczne instalowanie w nim dodatkowych urządzeń, np. kart sterujących. W dzisiejszych komputerach karta dźwiękowa zgodna ze standardem MIDI jest częścią integralną, co eliminuje zbędne koszty. Nasze dalsze badania będą miały na celu usprawnienie samych algorytmów odbioru danych przez komputer, a w dalszym etapie podjęcie próby zastąpienia instrumentu muzycznego własnym urządzeniem. Literatura [1] F. Rumsey, MIDI Systems and Control, Focal Press 1990 [2] The Downloadable Sounds Level 1 Specification, version 97.1, MIDI Manufactures Association, 1997 [3] The Complete MIDI 1.0 Detailed Specification, version 96.1, MIDI Manufactures Association, 1996 [4] The Complete MIDI 1.0 Detailed Specification, Japanese version 98.1, Association of Musical Electronics Industry, 1998 [5] Microsoft Windows Multimedia Programmers Reference, Microsoft Press, 1991 [6] http://www.midi.org/ - specification of MIDI Level 1 DOMINIK KŁYS dklys@dmcs.p.lodz.pl WOJCIECH ZABIEROWSKI wojtekz@dmcs.p.lodz.pl ANDRZEJ NAPIERALSKI napier@dmcs.p.lodz.pl Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka 93-590 Łódź, Al. Politechniki 11 tel. (42) 631 26 45, fax. (42) 636 03 27