Help

0. OPIS OGÓLNY

Maszyna koncertowa to interaktywne środowisko umożliwiające tworzenie autorskich wydarzeń telematycznych. Jest to otwarte, uniwersalne narzędzie do projektowania interaktywności między twórcą a publicznością.

Za pomocą kreatora UTWORU możliwe jest zbudowanie prostego interaktywnego interfejsu. Interfejs taki można porównać do sieciowego kontrolera midi dostępnego dla wielu użytkowników poprzez internet. Decyzje użytkowników są uśrednione. Utwór/interfejs może zostać opublikowany i udostępniony dowolnej grupie odbiorców.

Obsługa stworzonego interfejsu jest możliwa z dwóch poziomów:
1) Twórcy – za pośrednictwem środowiska Max/MSP*(5). Wymiana danych pomiędzy utworem/interfejsem a patchem Max/MSP jest dynamiczna oraz obustronna. Aby w pełni korzystać z portalu jako Twórca należy założyć konto.
2) Publiczności – za pośrednictwem dowolnej przeglądarki internetowej . Ilość odbiorców wydarzenia nieograniczona**.

Maszyna koncertowa jest również czymś więcej niż wirtualny kontroler midi. Otóż za pomocą okien wideo możliwe jest odtwarzanie dowolnych treści audiowizualnych linkowanych z portalu youtube (wideo lub streaming).

Powstałe utwory można łączyć w koncerty czyli dynamiczne playlisty pozwalające na zmianę utworu w trakcie trwania wydarzenia.

* Maszyna Koncertowa oraz przygotowany help patch współpracuje wyłącznie z MAX/MSP 8
** Tak naprawdę nigdy tego nie przetestowaliśmy ale szczerze w to wierzymy

I. UTWÓR

Przez “UTWÓR” rozumiemy internetowy interfejs do interakcji publiczności z Twórcą (patchem Max/MSP twórcy, z muzykiem bądź zespołem grającym na żywo itp ).

Po zalogowaniu wejdź w zakładkę 01 utwory.

Po prawej stronie zobaczysz biały panel z listą Utworów, na której znajdziesz przykładowy utwór: “01_Your First Track” (jeśli jesteś tu po raz pierwszy) lub listę Twoich poprzednich utworów.

Z tego miejsca możesz:
– dodać nowy utwór [Dodaj] – patrz I.1
– wyświetlić podgląd już stworzonego utworów (klikając na nazwę z listy) (patrz I.1)
– wejść do edycji utworu [edytuj]
– usunąć utwór z listy [usuń]

I.1.TWORZENIE UTWORU

Z menu 01 utwory w panelu Utwory wybierz przycisk [Dodaj]

Zobaczysz  siatkę na której możesz umieszczać OBIEKTY.

Dwuklik na siatce otwiera pływające menu, z którego wybierasz dostępne OBIEKTY

I.2. OPIS OBIEKTÓW

GUZIK: przycisk przesyłający dwie wartości. W stanie spoczynku 0 w momencie kliknięcia 1. Użytkownik ma możliwość kliknięcia w przycisk dowolną liczbę razy lecz nie może go przytrzymać. Do patcha Max/MSP Twórcy trafia informacja o każdym pojedynczym kliknięciu guzika od wszystkich użytkowników.

SUWAK: Składa się z dwóch elementów: interaktywnego suwak (poruszanego przez użytkownika) oraz  wskaźnika danych zwrotnych z max/MSP. Suwak przesyła wartości od 0 do 1 z krokiem 0.01. Uśrednione wartości od wszystkich użytkowników są przekazywane do Max/MSP twórcy.

GAŁKA: Analogicznie jak w przypadku suwaka składa się również z dwóch elementów: interaktywnej gałki oraz wskaźnika danych zwrotnych. Zakres danych oraz zasada działania identyczna jak w przypadku suwaka.

TEKST: Dynamicznie przekazuje informacje tekstowe z Max/MSP do interfejsu Obiekt występuje w dwóch wersjach wizualnych (czarnej i białej). 

WIDEO: Element multimedialny. Pozwala na odtwarzanie treści audio/wideo w utworze. Okno wideo wyświetla treści bezpośrednio z portalu youtube. 

I.3. PANEL "PARAMETRY UTWORU"

Biały zwijalny panel [PARAMETRY UTWORU] po lewej stronie umożliwia:
– nadanie tytułu
– wpisanie autora
– opisu utworu
– inspektor obiektów – umożliwia edycję nazwy i wielkości podświetlonego na siatce obiektu

– w oknie: Udostępnione możesz udostępnić utwór osobie organizującej Koncert (patrz II.).

I.4. PODGLĄD GOTOWEGO UTWORU

Z menu 01 utwory w panelu Utwory kliknij na nazwę wybranego utworu. Tutaj możesz sprawdzić funkcjonalność i wygląd  twojego utworu/interfejsu, 

Możesz też:
– wygenerować i skopiować link do udostępniania utworu publiczności
– wygenerować i skopiować link komunikacji utworu z patchem Max/MSP

I.5. UDOSTĘPNIANIE UTWORU W podglądzie utworu kliknij w sekcji Udostępnianie [Nowy link] następnie skopiuj jego zawartość. Udostępnianie utworu odbywa się za pomocą rozpowszechniania tego linku.

II. Koncert

Przez “KONCERT” rozumiemy dynamiczną playlistę składającą się z wybranych UTWORÓW. Tworzy go zalogowany użytkownik, wybierając z listy udostępnionych utworów swoich i  innych  twórców. Funkcja ta pozwala na prezentację kilku utworów w ramach jednego linku dostępu (wirtualny koncert).

Koncert pozwala również na zamieszczenie jednego niezmiennego okna streamingu (np. zespołu grającego na żywo w kolejnych utworach…) z serwisu youtube/twitch. Okno to wyświetla się powyżej utworów. Zmiana utworów nie wpływa na streaming.

II.1.TWORZENIE KONCERTU

Z menu 02 koncerty w panelu Koncerty wybierz przycisk [Dodaj]

Zobaczysz panel PARAMETRY KONCERTU

II.2. PANEL "PARAMETRY KONCERTU"

Biały zwijalny panel [PARAMETRY KONCERTU] po lewej stronie umożliwia:
– nadanie tytułu
– opisu utworu
– wybór utworów z listy: utwory te mogą być naszymi prywatnymi bądź udostępnionymi nam przez innych twórców
– przycisk UTWÓRZ zatwierdza stworzenie KONCERTU

II.3. PODGLĄD GOTOWEGO KONCERTU (OBSŁUGA KONCERTU)

Z menu 02 koncerty w menu Koncerty kliknij w nazwę wybranego koncertu. Wyświetli ci się po prawej stronie panel w którym znajdziesz:
– tytuł koncertu
– opis koncertu
[Nowy link], generuje link dostępu dla Publiczności
[Kopiuj Link], kopiuje do schowka link dostępu dla Publiczności
– panel “Kontrola koncertu”, możesz w nim:

  • włączyć/wyłączyć przepływ danych z Max/MSP [przycisk play]
  • przełączać utwory z listy [<<] lub [>>]
  • wkleić i załadować {ikona dyskietki] link do streamu

– lista utworów koncertu wraz z opisami 

II.4. UDOSTĘPNIANIE KONCERTU 

Koncert udostępniany jest w sposób analogiczny do utworu poprzez wygenerowany link dostępu.

III. machine client helpatch

Kontrolowanie oraz obsługa utworów odbywa się za pośrednictwem programu max/MSP poprzez dedykowaną paczkę pobierz tu.

III.1 opis maxa

zdjęcie 4.1.1
zdjęcie 4.1.1

Dedykowany patch składa się z trzech sekcji: Connection, Sending Data, Receiving Data. Każdy z wymienionych elementów odpowiada za możliwość zewnętrznej kontroli oraz obsługi danych w docelowym utworze. Podstawowym obiektem helpatcha jest music-machine-client za pomocą, którego możliwe jest połączenie z interfejsem, obsługa oraz wymiana danych pomiędzy narzędziami. Komunikacja oparta jest o obustronną translacje danych JSON co wymaga wykorzystania dodatkowego obiektu dict.pack zarówno przy wysyłaniu jak i odbieraniu informacji. 

Przygotowany help patch dedykowany jest interface’owi, którego układ generuje się automatycznie podczas dodawania utworu. W panelu edycji wystarczy wygenerować MaxKey i zapisać utwór do listy swoich pilotów.

zdjęcie defaultowego interface

Connection:

Podstawowa sekcja zapewniająca prawidłowe łączenie oraz wymianę danych pomiędzy max/MSP a Maszyna koncertowa. Oparty o obiekt machine-client 

Sending Data:

Sekcja dzięki, której przesyłane są dane z max/msp do Maszyny Koncertowej. Dane generowane w tej sekcji muszą zostać przetłumaczone za pomocą obiektu dict.pack

III.2 używanie patcha:

komunikacja:

W celu skomunikowania Konkretnego utworu z Max/MSP należy w pierwszej kolejności umieścić dedykowaną paczkę w folderze packages Max/msp. Po otwarciu helpatch machine-client w sekcji Connection należy w pierwszej kolejności zainstalować paczkę Node.JS. Krok 0. w helpatch. Czynność tą wykonuje się tylko podczas pierwszego użycia patcha. W kroku 1. należy włączyć skrypt Node.JS powinno spowodować to zaświecenie się leda zjadującego się po prawo od przełącznika. W korku 2. Należy wkleić dedykowany link interface’ owi wygenerowany na poziomie kreatora znajdującego się na stronie www. W kroku 3 po klikninięciu w przucisk na panelu kontrolnym znajdującym się poniżej powinna pokazać się trzy informacje: activePilot: “Nazwa połączonego utworu”, connected: 1 (w przypadku prawidłowego połączenia), clientCount: liczba aktualnych użytkowników naszego interface’u od strony publiczności. W kroku 4 należy włączyć przekazywanie danych z Max/MSP do docelowego interfacu. Za pomocą obiektu float znajdującego się po prawo możliwa jest zmiana prędkości odświeżania danych. Domyślna wartość to 100 ms w przypadku problemów z wydajnością patcha pomocne może być zwiększenie tej wartości.

music-machine-client jest subpatchem zawierającym w sobie skrypt js obsługujący komunikację z API strony www.maszynakoncertowa.pl. Zalecamy korzystanie z przygotowanego obiektu z zachowanie układu w helpatch aczkolwiek:

Inlety (od lewej)

  1. Instalacja paczki Node.JS. Obsługuje bang.
  2. Włączenie skryptu js. Obsługuje Toggle.
  3. Wejście linku maxKey
  4. przetłumaczone dane wejściowe

Outlety (od lewej)

  1. Status działania skryptu. Obsługuje Led
  2. Status połączenia. Obsługuje dict.viewer
  3. Dane przychodzocę z web interface’ u. Wymaga translacji za pomocą dict.pack

Odbieranie Danych:Stream danych przekazywany z maszyny koncertowej jest uśrednionymi wartościami aktywności wszystkich użytkowników dla poszczególnych obiektów. Dane z trzeciego wyjścia machine-client należy przetłumaczyć dla max/MSP za pomocą obiektu dict.unpack. Parsowanie danych polega na wpisaniu nazw adresacji poszczególnych obiektów ustalonych wcześniej w edytorze obiektu(2.3). Nazwy te należy wpisywać przy zachowaniu składni wymaganej dla obiektu dict.pack Zachowując składnie obiektu. Przykład:

W powyższym przypadku następuje rozseparowanie danych z trzech obiektów o nazwach: Slider, Knob, Bang. Aby pobierać dane na temat większej ilości obiektów bądź o tych z innymi nazwami. Obiekt ten należy edytować adekwatnie do indywidualnej sytuacji. Odebrane dane mogą być zbiorczo obserwowane poprzez obiekt dict.view.

Wysyłanie danych:

Przekazywanie danych z Max/MSP do docelowego pilota opiera się o podobny schemat jak w przypadku ich odbierania. W przypadku kontroli interfacu poza obiektami suwak, gałka, przycisk występują dwa dodatkowe: Obiekt kontroli wideo oraz obiekt kontroli dynamicznych komunikatów tekstowych. 

Suwak, Gałka, Bang:

Trzy podstawowe obiekty. Slider i suwak przyjmują wartości od 0 do 1 z krokiem 0.01. przycisk w momencie kliknięcia przesyła wartość 1. 

kontrola wideo:

Obiekt służący do kontroli wideo składa się z: pola pozwalającego umieścić link do youtube, przełącznika odpalającego wideo, przełącznika wyciszającego oraz kontrolera głośności. Aby obiekt funckcjonował prawidłowo połączony jest on na stałe z dedykowanym subpatchem.

kontrola wiadomości tekstowych:

Obiekt do obsługi pól tekstowych w inteface’ie utworu. Pozwala na dynaczmiczne wysylalnie komunikatów tekstowych. Aby przesłać taki komunikat we wskazanym polu w Max/MSP należy wpisać tekst oraz kliknąć w dowolne miejsce poza obiektem. Aby obiekt funckcjonował prawidłowo połączony jest on na stałe z dedykowanym subpatchem.

Dane z poszczególnych obiektów zanim zostaną przesłane do interface’ u maszyny wymagają translacji przy pomocy obiektu dict.pack. Podobnie jak w przypadku odbierania danych w ramach tego obiektu wymagana jest prawidłowa adresacja nazw sterowanych kontrolek w maszynie. Dodatkowo pierwszym elementem argumentów obiektu powinno metro: natomiast po wszystkich argumentach ‘@triggers 0’ Obiekty: suwak oraz gałka z racji tego iż w interface’ie składają się z dwóch animowanych elementów. wskaźnika danych zwrotnych oraz elementu interaktywnego w przypadku wysyłania danych wymagają tego aby po nazwie adresowanego obiektu występował dopisek ‘nazwa_FB’. Prawidłowy sposób adresaci obiektów w dick.pack występuje w przykładzie:

W powyższym przykładzie dane zostaną zaadresowane do 5 różnych obiektów: o nazwach Slider, Knob, Bang, Video. 

Wszystkie wysyłane wartości są wyświetlane za pomocą obiektu dict.view Wartości danych z dict.pack mogą zostać przekazane bezpośredniego do 4. inletu obiektu: machine-client.