Kod

Max: Czy da się napisać symfonię w języku programowania?

Max: Czy da się napisać symfonię w języku programowania?

Bezpłatny kurs: „Szybki start w Python"

Dowiedz się więcej

Niektórzy programiści twierdzą, że programowanie nie jest kreatywne, ale muzycy znaleźli sposoby na integrację kodu ze swoją sztuką. W tym kontekście przyjrzymy się Maxowi — innowacyjnemu instrumentowi muzycznemu, który pozwala tworzyć muzykę nie poprzez tradycyjne granie, ale poprzez programowanie. Max otwiera nowe horyzonty dla muzycznej kreatywności, łącząc technologię ze sztuką, co czyni go wyjątkowym narzędziem dla współczesnych kompozytorów i muzyków.

Grafika: World's Finest comic / Dave Gibbons / DC Comics, 1993

Czym jest Max i kto go używa?

Max to wizualny język programowania i środowisko przeznaczone do tworzenia aplikacji muzycznych i multimedialnych. W przeciwieństwie do tradycyjnych języków programowania, takich jak Java czy Ruby, programy w Max nie są pisane w tekście, lecz tworzone w interfejsie wizualnym. Użytkownicy mogą przeciągać i upuszczać różne obiekty, aby tworzyć unikalne aplikacje. Dzięki takiemu podejściu Max zapewnia intuicyjny sposób pracy z elementami audio i multimedialnymi, co czyni go idealnym narzędziem dla kompozytorów, inżynierów dźwięku i artystów.

Łączenie efektów w Max/MSP. Zrzut ekranu: Oficjalna strona internetowa Max

Max oferuje intuicyjny interfejs, który ułatwia testowanie modyfikacji w czasie rzeczywistym. Na przykład dodanie efektu echa do odtwarzanej ścieżki pozwala natychmiast usłyszeć rezultat, bez konieczności ponownego uruchamiania programu. Dzięki temu przepływ pracy jest bardziej wydajny i wygodny dla użytkowników poszukujących maksymalnej elastyczności w swoich projektach muzycznych.

Max oferuje dwa kluczowe rozszerzenia: MSP, przeznaczone do pracy z dźwiękiem w czasie rzeczywistym, oraz Jitter, które koncentruje się na treściach wizualnych. W rezultacie język ten jest często określany w społecznościach kreatywnych jako Max/MSP lub w pełnej wersji Max/MSP/Jitter. Narzędzia te pozwalają użytkownikom tworzyć złożone projekty audiowizualne, dzięki czemu Max jest popularnym wyborem wśród muzyków i artystów cyfrowych.

Platforma przyciągnęła znaczną uwagę dzięki niskiej barierze wejścia i bogactwu funkcjonalności, co przyczyniło się do powstania dedykowanej społeczności wśród entuzjastów IT i muzyki. Jednym z najsłynniejszych użytkowników jest gitarzysta Radiohead, Jonny Greenwood, który aktywnie wykorzystuje unikalne cechy Maxa w kompozycjach swojego kultowego brytyjskiego zespołu.

Zrozumienie terminów: „język” lub „wizualne środowisko programistyczne”

Max to wizualne środowisko programistyczne i framework przeznaczony dla programistów i inżynierów. W tym środowisku programiści pracują nie z poleceniami tekstowymi, ale z gotowymi obiektami. Na przykład obiekt seq~ działa jak sekwencer, a delay~ tworzy efekt echa z zanikaniem. Pakiety obiektów w Maxie można ponownie wykorzystać w innych projektach, co znacznie upraszcza proces rozwoju. Ponadto Maxa można porównać do interpretowanego języka programowania, ponieważ pozwala na wizualizację kodu jako obiektów, upraszczając zrozumienie i korzystanie z funkcjonalności.

Cycling ’74, twórca Maxa, zazwyczaj nazywa swój produkt oprogramowaniem. Z tego powodu nie ma jednej definicji: niektórzy użytkownicy nazywają Maxa językiem programowania, podczas gdy inni postrzegają go jako środowisko programistyczne lub aplikację. W tym artykule rozważymy Maxa jako platformę z własnym językiem programowania i dla wygody będziemy używać obu terminów.

Przewróć Beethovena, czyli jak narodził się Max

Pod koniec lat 80. matematyk i programista Miller Puckett opracował unikalny język, który znalazł zastosowanie w tworzeniu muzyki elektronicznej. W latach 1985–1987 był członkiem MIT Media Lab, laboratorium badawczego znanego z innowacji w medycynie, technologii, sztuce, muzyce i projektowaniu. Praca Pucketta w tym laboratorium przyczyniła się do rozwoju nowych podejść do integracji muzyki i programowania, dzięki czemu jego wkład w obie dziedziny był znaczący.

Jednym z najbardziej ekscytujących projektów MIT Media Lab jest program Hyperscore. Ten intuicyjny interfejs aplikacji pozwala osobom bez doświadczenia muzycznego tworzyć muzykę. Użytkownicy rysują linie, które następnie przekształcają się w melodie. Laboratorium opracowało również presety Max, które rozwijają kreatywność muzyczną i uczą podstaw kompozycji. Hyperscore udostępnia tworzenie muzyki każdemu, stymulując kreatywność i samodoskonalenie.

Inicjatorem powstania języka był IRCAM, francuski instytut specjalizujący się w badaniach muzycznych. IRCAM został założony w 1977 roku na polecenie prezydenta Francji Georges'a Pompidou w celu prowadzenia badań nad muzyką awangardową i elektroakustyczną, które były głównymi dziedzinami akademickimi tamtych czasów. Instytut odegrał znaczącą rolę w rozwoju nowoczesnych technologii muzycznych i metod komponowania, wspierając innowacje w tej dziedzinie.

W tamtym czasie IRCAM nie dysponował rozwiązaniem umożliwiającym tworzenie programów, które umożliwiałyby muzykom wykonywanie awangardowych kompozycji elektronicznych w czasie rzeczywistym. W rezultacie konieczne było opracowywanie oddzielnych programów dla każdego nowego utworu muzycznego, co było niezwykle uciążliwe i wymagało znacznych nakładów czasu i zasobów. W związku z tym Paquette został zaproszony do pracy nad jednym z tych programów, który otworzył nowe możliwości dla kreatywności muzycznej i zwiększył wydajność muzyków.

Cały rozwój został sfinansowany przez IRCAM, który nie miał problemów ze swoim sprzętem, ale potrzebował programu do występów na żywo. W lipcu 1988 roku odbyła się premiera utworu „Pluton” Philippe’a Manoury’ego. Do tego utworu potrzebny był nowy program, ale już wtedy zdecydowałem się na opracowanie programu, który mógłby być ponownie wykorzystany w różnych utworach muzycznych. Tak narodziło się środowisko programowe Max, pozwalające muzykom i kompozytorom w pełni dostosować je do swoich potrzeb. Program ten stał się niezbędnym narzędziem we współczesnej twórczości muzycznej, zapewniając elastyczność i innowacyjność w występach na żywo.

Miller Paquette jest znanym twórcą platformy Max. Jego praca i innowacje technologiczne sprawiły, że Max stał się popularnym narzędziem wśród użytkowników. Paquette aktywnie rozwija projekt, wprowadzając nowe funkcje i ulepszając interfejs użytkownika, co przyczynia się do rosnącego zainteresowania platformą Max. Dzięki jego staraniom platforma staje się coraz bardziej dostępna i wygodna w użyciu w różnych dziedzinach. Puckett nadal pracuje nad rozszerzeniem możliwości Maxa, co czyni go znaczącą postacią w świecie technologii.

Pakiet z powodzeniem osiągnął swój cel, ale sukces komercyjny Maxa przyszedł dopiero 10 lat później. W połowie lat 90. projekt został przeniesiony do Cycling ’74, który wydał rozszerzenie MSP. Na początku XXI wieku opracowano dodatek Jitter. W ten sposób język Max stał się pełnoprawną platformą multimedialną Max/MSP/Jitter, oferującą użytkownikom szeroki wachlarz możliwości tworzenia interaktywnych treści oraz przetwarzania danych audio i wideo.

Jitter to rozszerzenie Max do tworzenia i pracy z treściami wizualnymi. Łączenie efektów w Max/MSP. Zrzut ekranu: oficjalna strona internetowa Maxa

Max został nazwany na cześć Maxa Matthewsa, pioniera muzyki komputerowej, który pracował w IRCAM w latach 70. Pod koniec lat 50. Matthews opracował program MUSIC, pierwszy program do syntezy i reprodukcji instrumentów muzycznych na komputerze, co doprowadziło do jego powszechnego zastosowania poza laboratorium. Jego algorytm planowania w czasie rzeczywistym, RTSKED, stał się później podstawą prac Paquette'a, otwierając nowe możliwości w programowaniu muzyki.

Inżynierowie Paquette i IRCAM nie mogli zintegrować środowiska programistycznego Matthewsa ze swoim projektem, ponieważ oprogramowanie i sprzęt, na których działało, należały do ​​Bell Labs. W rezultacie Paquette musiał przeprojektować koncepcję, aby umożliwić muzykom pracę z Maxem bez konieczności uzależniania się od konkretnego sprzętu lub złożoności kompozycji. To rozwiązanie otworzyło nowe możliwości tworzenia i wykonywania muzyki, czyniąc ten proces bardziej przystępnym i elastycznym dla artystów.

Platforma została nazwana na cześć Maxa Matthewsa, w hołdzie dla jego rewolucyjnych osiągnięć w technologii audio. Nazwisko Puckette'a znajduje również odzwierciedlenie w nazwie MSP (Miller Smith Puckette) z Cycling ’74, która docenia jego wkład w rozwój oprogramowania do tworzenia i przetwarzania dźwięku.

Dźwięk w Maxie: Jak to działa

W Maxie istnieje kilka podstawowych koncepcji.

  • Obiekty stanowią podstawę języka. Za ich pomocą można generować dźwięk, emulować sprzęt muzyczny oraz tworzyć efekty wizualne i dźwiękowe. Grupa połączonych obiektów nazywana jest modułem.
  • Wirtualne przewody (kable krosowe) łączą obiekty i moduły za pomocą złączy wejściowych i wyjściowych.
  • Patch to pełnoprawny program napisany w programie Max. Patche są zapisywane w formatach .maxpatch, .maxhelp lub .json.
  • Podpatch to element podrzędny patcha. Podłatka może znajdować się w łatce lub być przechowywana jako osobny plik.
  • Patcher to okno, w którym tworzona jest łatka.
Kontroler MIDI MAX. Podobnie jak w innych językach programowania, pod każdą funkcją można dodać komentarz. Łączenie efektów w Max/MSP. Zrzut ekranu: oficjalna strona internetowa Maxa

Praca w Maxie jest podobna do programowania obiektowego (OOP). Użytkownicy mogą tworzyć własne obiekty lub dostosowywać istniejące, łącząc je w moduły. Moduły te są następnie wykorzystywane do tworzenia kompletnych programów, co czyni proces tworzenia intuicyjnym i elastycznym.

Aby utworzyć blok efektów dla gitary elektrycznej, można złożyć każdy efekt osobno i połączyć je w jeden pedał. Taki pedał można zintegrować z innymi programami Maxa, co pozwala na zmianę jego ustawień lub tworzenie nowych „potomnych” wersji o unikalnych cechach. Zapewnia to elastyczność i różnorodność w korzystaniu z efektów, co jest szczególnie ważne dla muzyków dążących do stworzenia unikalnego brzmienia.

Łatki Maxa integrują programy stworzone od podstaw w różnych językach programowania. Oficjalna dokumentacja zawiera liczne przykłady i samouczki, znacznie upraszczając proces nauki. Dodatkowo, dzięki otwartemu API, użytkownicy mogą łatwo integrować aplikacje innych firm, rozszerzając funkcjonalność platformy.

Max oferuje unikalną możliwość przekształcania obiektów wizualnych w kod, co znacznie upraszcza proces tworzenia oprogramowania. Aby to zrobić, wystarczy zaznaczyć obiekt w łatce i skopiować go do edytora tekstu. Jest to szczególnie wygodne dla osób, które preferują tradycyjne programowanie i nie chcą pracować z interfejsami wizualnymi. Programowanie w Max najlepiej wykonywać w JavaScript, ponieważ posiada on oficjalną dokumentację. Warto zauważyć, że programy w Max to w zasadzie dane JSON, co czyni je bardziej elastycznymi i łatwiejszymi w obsłudze.

Jeśli jesteś zainteresowany przetestowaniem możliwości Maxa, zalecamy rozpoczęcie od wymienionych zasobów. Materiały te pomogą Ci lepiej zrozumieć funkcjonalność i zalety Maxa, a także pozwolą Ci ocenić jego skuteczność w rozwiązywaniu Twoich problemów.

Drobiazg dla geeków czy naprawdę fajne narzędzie

Zawsze nie lubiłem korzystać z cudzych programów muzycznych. Pomimo licznych funkcji oferowanych przez edytory audio i wtyczki, ograniczają one potencjał twórczy artysty i zmuszają go do dostosowania się do oprogramowania. Dzięki Maxowi mam wreszcie pełną swobodę w pracy z dźwiękiem i bezpośredni dostęp do możliwości mojego komputera. Ten program pozwala mi realizować moje pomysły bez żadnych ograniczeń, co znacząco poprawia jakość i oryginalność moich projektów muzycznych.

Jonny Greenwood to utalentowany gitarzysta i kompozytor, najbardziej znany ze współpracy z kultowym brytyjskim zespołem rockowym Radiohead. Od momentu dołączenia do zespołu w 1995 roku odegrał kluczową rolę w kształtowaniu ich unikalnego brzmienia, łącząc elementy rocka alternatywnego, muzyki elektronicznej i brzmień eksperymentalnych. Greenwood jest nie tylko wirtuozem gitary, ale także aktywnie uczestniczy w tworzeniu aranżacji i kompozycji, co czyni go jednym z najbardziej wpływowych muzyków swojego pokolenia. Jego innowacyjne podejście do muzyki i wykorzystanie niekonwencjonalnych instrumentów, takich jak instrumenty smyczkowe i urządzenia elektroniczne, pomogły Radiohead zdobyć uznanie krytyków i rzeszę oddanych fanów na całym świecie.

Radiohead po raz pierwszy użył Maxa na swoim szóstym albumie, „Hail To The Thief”. Podczas gdy Jonny Greenwood nadzoruje głównie kwestie techniczne na żywo, cały zespół korzysta z Maxa w studiu. Na przykład, nagrywając ósmy album studyjny, „The King Of Limbs”, Radiohead opracował pełnoprawną cyfrową stację roboczą opartą na Maxie. Pozwoliło to muzykom eksperymentować z nowymi teksturami dźwiękowymi i poszerzać ich możliwości twórcze.

W kompozycjach Radiohead brzmienie Maxa jest najbardziej wyczuwalne w utworze „The Gloaming”. Niemal całe muzyczne tło tego utworu zostało stworzone za pomocą tej platformy. Jednak Greenwood wykorzystuje w pełni potencjał Maxa podczas eksperymentalnych solówek gitarowych podczas występów na żywo. Dźwięk generowany przez gitarzystę Radiohead został nazwany „efektem zająknięcia Jonny'ego Greenwooda”. Nazwa ta odzwierciedla jego charakter, który można zilustrować za pomocą odpowiedniego filmu.

Na tym kończy się lista znanych muzyków współpracujących z Maxem. Wielu kultowych i popularnych artystów woli tworzyć aranżacje na żywo lub korzystać z tradycyjnych programów muzycznych, takich jak FL Studio, Steinberg Cubase i Ableton Live. Warto zauważyć, że chociaż Ableton Live jest napisany w C++, zawiera urządzenia audio zaprojektowane z wykorzystaniem Maxa. Podkreśla to znaczenie języka Max we współczesnej produkcji muzycznej i jego wpływ na twórczość znanych artystów.

Chociaż wielu znanych muzyków nie dąży do samodzielnego tworzenia oprogramowania muzycznego, Max to nie tylko narzędzie dla inżynierów i programistów. Ten język programowania jest aktywnie wykorzystywany do tworzenia instalacji multimedialnych, tworzenia oprogramowania muzycznego i głębokich badań nad dźwiękiem. Służy również jako platforma do eksperymentów dla kompozytorów undergroundowych i artystów glitch. Projekty stworzone przez fanów Maxa można znaleźć na oficjalnej stronie platformy, gdzie prezentują różnorodność i innowacyjność w sztuce dźwiękowej.

Kadr z teledysku do utworu Facelyzer tokijskiej grupy artystycznej BRIDGE, stworzonego przy użyciu Max/MSP/Jitter

Max może mieć tylko jednego znanego ambasadora, ale to nie znaczy, że nie jest w stanie tworzyć wybitnej muzyki. W przeciwieństwie do wielu innych cyfrowych instrumentów muzycznych, Max oferuje nieograniczone możliwości twórcze. Jednak pełne opanowanie tych możliwości wymaga nie tylko talentu na miarę Kanye Westa, ale także umiejętności programistycznych. Max pozwala użytkownikom tworzyć unikalne brzmienia i kompozycje, otwierając nowe horyzonty w świecie muzyki.

Zostań programistą dzięki Skillbox w zaledwie trzech prostych krokach. Przejdź do sekcji „Programowanie”, wybierz odpowiedni dla siebie kurs i ucz się od doświadczonych programistów z firm takich jak Yandex, Mail.ru, Tinkoff i innych wiodących organizacji IT. Skillbox oferuje wysokiej jakości edukację, która pomoże Ci opanować poszukiwane umiejętności i rozpocząć karierę w programowaniu.