Muzykant S - subiektywny wirtualny analog

Jeśli chcesz zasięgnąć rady, podzielić się doświadczeniem w trudnej sztuce samodzielnego programowania - to tu jest miejsce, aby tego dokonać.
Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » czwartek 24 maja 2012, 00:39

Witam i zapraszam chętnych do zapoznania się z moim pierwszym syntezatorem VST zbudowanym w darmowej wersji środowiska SynthMaker.

http://as.elte-s.com/zrob/muzykant_s.htm

Czy warto składać własny instrument VST w epoce, kiedy podobnych rozwiązań są setki jak nie tysiące? Otóż chyba tak, ponieważ do tej pory nie znalazłem takiego, który by mi w stu procentach odpowiadał (co nie znaczy, że mój takim jest). Instrument ma udawać klasyczne analogowe maszyny oraz wczesne Sound Blastery, a taki, a nie inny układ toru syntezy i interfejs ma wspierać szybkie i wygodne tworzenie ''grywalnych'' brzmień epoki - i to jest główna cecha, którą kierowałem się podczas dobierania paramentów i regulacji.

Na stronie znajduje się także utwór demonstracyjny wykorzystujący brzmienia presetowe.

W planach mam jeszcze złożenie samplera perkusyjnego oraz multiefektu.

A w ogóle nie ma tu kącika dla bawiących się we własne VST? Czyżby to była tak mało popularna zabawa?


[addsig]
Pozdrawia Adam (przypadkiadama.com)

ascetic
Posty: 89
Rejestracja: środa 02 lut 2005, 00:00

Re: Muzykant S - subiektywny wirtualny analog

Post autor: ascetic » czwartek 24 maja 2012, 16:50

Witaj.


Gratuluję, podejrzewam, jednego z pierwszych schematów. To świetna, rozwijająca zabawa, dająca wielką satysfakcję. Przez jakiś okres poświęciłem troszkę czasu programowi SynthEdit, eksperymentując na różne sposoby. Moduły różnych autorów dostępne są w internecie. Grafikę tworzyłem przy użyciu świetnego programu KnobMan, który pozwala na stosowanie warstw, przezroczystości itp., jednak nie wiem, czy format grafiki akceptowany jest przez Synth Maker. Najbardziej kozacki jest chyba Reaktor od NI.


Uważam (chociaż mogę się mylić, poprawcie mnie, jeśli jestem w błędzie), że budowanie syntezatora z gotowych modułów może znacząco podnosić zużycie mocy procesora. Gdy schematy zaczynają rozrastać się w wielostrukturowe monstra, część kodu zawarta w projekcie staje się zbędna i niepotrzebnie oblicza nieużywane funkcje. Jeśli nie jest się programistą, nie uniknie się "chodzenia dookoła", a sklejenie np. prostego, samodzielnego sekwencera czytającego sample z podstawowymi możliwościami (np. reakcja filtrów i obwiedni na velocity czy pitch) pochłania mnóstwo czasu. I odwdzięcza się równie dużą dawką radości


Zakładam, że Twoje zamiary nie są komercyjne i nie celujesz w poziom programów pisanych przez zespoły specjalistów, dlatego z chęcią będę czekał na Twoje kolejne maszynki Powodzenia.


P.S. Jeśli będziesz miał w przyszłości pomysł na schemat rozpoznający w czasie rzeczywistym "nauczone" mikrofonem dźwięki oraz ich poziom, daj znać, bo za chudy jestem w uszach na to. Próbowałem kiedyś zrobić trigger, który miał zbierać odgłosy różnych przedmiotów uderzanych pałeczkami i reagować na nie odpowiednim samplem, co eliminowałoby potrzebę posiadania elektronicznej perkusji lub ręcznego wklepywania nut. Efekty były marne, dwa, maks trzy tory z przesłuchami.


Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Re: Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » piątek 25 maja 2012, 00:36

SynthMaker pozornie jest prostym programem. Jednakże umożliwia bardzo głęboką ingerencję w ''klocki'', zahaczając o coś w rodzaju asemblera. Poznałem zaledwie malutką część tej aplikacji i widzę, że ma olbrzymi potencjał (nie tylko w audio, ale i w interakcji interfejsu). Już sama budowa filtra to nie tylko proste odwzorowanie fizycznego układu, lecz wiele zależnych od siebie zmiennych.

W tym przypadku wzorowałem się oczywiście na rozwiązaniach fabrycznych zmieniając część zmiennych (głównie zakresy) i odrzuciłem nadmiarowy kod, który był tam osadzony ze względu na uniwersalność ''klocków''. Dzięki temu wtyczka zużywa raczej niewiele zasobów.

Instrumenty VST mają bardzo często jedną wielką wadę: są ''niegrywalne''. To zwykle monstra, które dysponują pewną ilość presetów, zwykle równie masywnych jak cały interfejs, a więc nadających się właściwie do grania solo, najlepiej mono i w dość konkretnym gatunku. Często można wyciągnąć z takiej wtyczki cuda, ale poruszanie się wśród setek parametrów, z czego istotnych jest 10%, szybko nuży. Ogarnięcie pulpitu dziesiątek małych gałeczek, obwiedni wieloelementowych, rozbudowanych sekwencerów krokowych jest wręcz niemożliwe. W rezultacie zamiast myśleć o muzyce, myśli się o ukręceniu brzmienia.
Wiele elementów aplikuje się zupełnie niepotrzebnie. Pitch Bend, modulator, docisk, velocity - tym można wspaniale cieniować brzmienia w czasie rzeczywistym. Co ciekawe, matrycę tych elementów spotyka się stosunkowo rzadko, natomiast często zamiast tego mamy modulacje wieloelementowe, synchroniczne, które tak naprawdę ''odhumanizują'' muzykę.

Inny problem to interfejs. O ile komercyjne, topowe instrumenty vst posiadają przynajmniej estetyczny (bo nie zawsze ergonomiczny) panel, to zabawy amatorskie z reguły kończą się jarmarkiem. Czasem nawet kolory są po prostu wściekłe i zupełnie nieprzemyślane.

No i kolejny problem to jakaś dzika potrzeba odtwarzania tego, co było. Juno czy 808 istnieje w dziesiątkach klonów, ale ze świecą znaleźć takiego z rozbudowaną matrycą choćby samego velocity. Albo 808 z wejściami na sample.

No, ale narzekania dość. Perełek jest mnóstwo i źle nie jest.

Czy warto brać się za komercyjną zabawę? Wydaje mi się, że używając takich narzędzi jak SyntMaker można się o to pokusić. Ale trzeba ten program bardzo dobrze poznać, jak również być mocno zaawansowanym fizykiem zjawisk, które chce się odtworzyć. Napisanie dobrego kompresora - ''ocieplacza'', który zrobi ''dobrze'' elektrycznemu pianu (dobrze, a nie sztucznie), to bardzo wysoka szkoła jazdy. Aczkolwiek trochę mnie kusi próba walki na tym polu.

Wydaje mi się, że wciąż nie ma jeszcze czegoś takiego: platformy do robienia utworów, takiej uniwersalnej, ale prostej i szybkiej w zarządzaniu, równocześnie umożliwiającej powstawanie zaawansowanych produkcji (tzn. nie z klocków metodą wklejania presetów, a raczej wedle wczesnej szkoły sekwencerów czasów Atari ST - nutka po nutce). Zatem musiałby to być instrument oczywiście wielogłosowy z rozplanowaną strukturą głosów: ścieżka perkusyjna (kolejno coraz mniej rozbudowane generatory analogowe plus bateria sampli z prostym torem kształtowania sygnału - zwłaszcza matryca velocity i ataku, filtra oraz głośności), ścieżka basowa (generator analogowy zorientowany na tego typu brzmienia), ścieżka piana (jak wcześniej), ścieżki uniwersalne (kilka, również jak wcześniej, przy czym byłyby to najbardziej rozbudowane tory syntezy - dwa oscylatory, praca równoległa, fm, ring, iloczyn, filtr rozbudowany i hpf, obwiednie, niezależne lfo i na dobrą sprawę tyle). Źródłem generatorów uniwersalnych, oprócz klasycznych przebiegów typu sinus itd, winien być wav, któremu także powinno się stworzyć prosty interfejs do zapętlania itp. zabiegów).
Poszczególnym instrumentom powinno się przyporządkować uniwersalne linie opóźniające dające efekty od phasera do slap-delaya, kompresor, być może prosty korektor (2+przestrajany środek), a całości - dobry brzmieniowo reverb (bez wielosekundowych cudów, ale taki, który nie męczy) i delay, który może pracować równocześnie z pogłosem (to też rzadkość).

Następnie taki instrument powinien przejść długotrwałe testy, a wszystko, co jest niepotrzebne bądź używane rzadko, winno wylecieć. Potem jeszcze mocna korekta interfejsu i... kilka dobrych dem z presetów, żeby każdy wiedział, że są to presety użyteczne, a nie chwilowe fantazje układającego brzmienia bez jakiejkolwiek korelacji.

Innymi słowy - dużo pracy. Czy warto w to inwestować czas?

Jedno wiem na pewno: czary-mary brzmieniowe tego czy owego, to nie tylko algorytm niskopoziomowy (czyli ''tajemnica firmy''), ale i sprytne dobranie parametrów. Przeciętny instrument potrafi zagrać dobrze, jeśli zostanie dobrze ''oparametrowany'' przez użytkownika. Dlatego taki sukces odniosły np. stare Korgi. ''Z fabryki'' polysix czy poly800 brzmiały kiepściutko, a ludzie, często wykorzystując doświadczenia innych, potrafili z tego wyczarować cuda.

Oczywiście moje wywody dotyczą raczej dość klasycznego pojęcia muzyki ''zawierającej elementy elektroniki''. Ale jest to tak naprawdę bardzo szeroki rynek. A dla pragnących nowych doświadczeń instrumentów wirtualnych jest co niemiara.

Co do problemu rozpoznawania dźwięków - jest to problem :) Prosta filtracja umożliwi zrobienie 3-4 kanałów o niewielkiej selektywności. Na więcej to już chyba nawet SynthMaker nie pomoże :)


[addsig]
Pozdrawia Adam (przypadkiadama.com)

ascetic
Posty: 89
Rejestracja: środa 02 lut 2005, 00:00

Re: Muzykant S - subiektywny wirtualny analog

Post autor: ascetic » piątek 25 maja 2012, 16:09

Zgadzam się z Tobą we wszystkim. Zobaczyłem screeny i pobrałem program. Nie doceniłem go dlatego, że pierwsze jego wersje były według mnie mało atrakcyjne, a teraz uruchomiłem i spadłem!


Wielkie dzięki za otwarcie oczu! Podejrzewam, że tutaj jest znacznie więcej możliwości.


Pozdrawiam.


ascetic
Posty: 89
Rejestracja: środa 02 lut 2005, 00:00

Re: Muzykant S - subiektywny wirtualny analog

Post autor: ascetic » piątek 25 maja 2012, 17:07

Jeszcze laickie pytanie - jak edytować kod dostępnych modułów?

Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Re: Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » piątek 25 maja 2012, 18:14

Kupić wersję pełną :( Niestety, ta z CMstudio nie dopuszcza edycji skryptów.

Pozdrawia Adam (przypadkiadama.com)

Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Re: Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » wtorek 29 maja 2012, 23:54

Nie ma dobrego syntezatora bez efektów. Dla Muzykanta S powstał właśnie Muzykant E, czyli dedykowany multiefekt: equalizer i trzy linie opóźniające: delay (echo), phaser/flanger/chorus oraz pogłos (reverb). Zapas wysterowania w syntezatorze, limiter i tłumiki na wejściu i wyjściu umożliwiają także otrzymanie różnego rodzaju przesterów.
A tak brzmią Muzykanci S i E razem.


[addsig]
Pozdrawia Adam (przypadkiadama.com)

Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Re: Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » wtorek 28 sie 2012, 22:57

Pierwsze wersje moich zmagań z syntmakerem, jak to pierwsze wersje - były właściwie wprawkami wykorzystującymi ''klocki'' z presetów. Jednakże program mnie wciągnął i postanowiłem skonstruować od podstaw syntezator, który by mi najbardziej odpowiadał pod względem i brzmieniowym, i interfejsu - bez kompromisów (choć jeden się pojawił). Zasada jest taka: co jest niepotrzebne - odrzucam albo upraszczam. Albowiem w nadmiarze można utonąć. Podobnie z opisem parametrycznym - te, które można wykorzystać do przeliczania np. rytmu - zostawiam, reszta wylatuje - pracujemy uchem. Brak tu arpeggiatora (mam go serdecznie dość), brak także programowalnej matrycy modulacji - jest stała, najbardziej użyteczna, oczywiście subiektywnie.



Wprowadziłem też kilka własnych rozwiącań. Instrument stawia na różnego rodzaju ''łagodne, wolnozmienne modulacje''. Dlatego posiada 3 lfo plus dodaktowe w bloku efektów. Lfo oprócz kilku podstawowych przebiegów dysponuje także dwoma losowymi: o ostrych i łagodnych zboczach. Te ostatnie są świetne dla różnego rodzaju padów i stringów.



Dynamika klawiatury może wpływać na parametry liniowo bądź wykładniczo, co umożliwia osiągnięcie dynamicznego, dramatycznego wręcz charakteru brzmienia. Modulator natomiast może zwiększać częstotliwość lfo - kolejny efekt dynamiki.

W torze efektów znajduje się bardzo silny korektor (+-40dB) o charakterze gitarowym. Wraz ze wzmacniaczem potrafi zaemulować różnego rodzaju przestery do solowych brzmień. Poza chorusem mamy tam klasyczne tremolo z możliwością pracy stereo - dublujące polifoniczne tremolo możliwe do emulacji w bloku vca, rozbudowany delay z korekcją powtórzeń oraz pogłos - jedyny wspomniany przeze mnie kompromis. Ze względu na bardzo trudną emulację matematyczną tego efektu brzmi dość przeciętnie, ale przydać sie może. Wszystkie efekty można odłączyć oszczędzając moc procesora.

Muzykant SSam interfejs może wydawać się mało efektowny, ale ładne, nawiązujące do rozwiązań ze świata rzeczywistego pozostawiam innym. Ja chcę wygodnie i przejrzyście, a tak teraz jest.


Pozostał do zrobiena system zarządzania presetami, część spraw midi i pewnie małe korekcje opisów. Jednakże intrument już gra tak, jak ma grać docelowo i jeśli ktoś chce się pobawić, zapraszam:
http://as.elte-s.com/temp/muzykant_s.zip

Jeśli ktoś ma jakieś pomysły albo ochotę do dyskusji - zapraszam.



_________________ Pozdrawia Adam (as.elte-s.com)

Pozdrawia Adam (przypadkiadama.com)

MrExplosion
Posty: 471
Rejestracja: piątek 15 wrz 2006, 00:00

Re: Muzykant S - subiektywny wirtualny analog

Post autor: MrExplosion » środa 29 sie 2012, 20:36

Nie jest nawet trochę przejrzyście. W zasadzie to jest tak jakbyś się mocno starał utrudnić używanie tego ;) Jak dla mnie interfejs nie musi być piękny, ale niech przynajmniej kolory, wielkość czcionki i layout będą na jakimś akceptowalnym minimum. Zwłaszcza kolory, kontrast


Awatar użytkownika
JankoMuzykant
Posty: 497
Rejestracja: czwartek 14 mar 2002, 00:00
Kontakt:

Re: Muzykant S - subiektywny wirtualny analog

Post autor: JankoMuzykant » środa 29 sie 2012, 21:58

Kolor i layout (szczegóły wykończenia) na pewno zmienię, bo też mi średnio pasuje, natomiast interfejs jest możliwie najbardziej przejrzysty z punktu widzenia budowy i programowania instrumentu - góra leci szeregowo zgodnie z kolejnością bloków, modulatory są osadzone dokładnie pod tym, co modulują. Dla mnie powiązania logiczne są tym, co naturalne - wprost wzięte ze świata rzeczywistego, realizowanego za pomocą elektroniki. Tu naprawdę trudn to zorganizować sensowniej - oczywiście można zrezygnować z tej zasady i poukładać wszystko niezależnie, a za to estetycznie.
Wielkość czionki to niestety kompromis, zbyt duże panele to kradzież miejsca innym elementom. W końcu to tylko statyczne podpisy pod gałkami.


Rzeczy takie jak interfejs to sprawy subiektywne i nigdy nie stworzy się takiego, żeby zadowalał wszystkich. Już sam windows 7, który większość uważa za najlepszy w historii ms, dla drugiej grupy (w której ja jestem), jest okropny - używamy interfejsu jeszcze z w95 :)


[addsig]
Pozdrawia Adam (przypadkiadama.com)

ODPOWIEDZ