Lieber Zuschauer, dieser Untertitel wurde automatisch generiert von YouTube und dementsprechend (sehr) fehlerhaft. Wenn du kannst, hilf uns bitte gute Untertitel zu erstellen: https://c3subtitles.de/talk/3183 Danke!
hi und willkommen
zurück ihr könnt uns wie immer auf
Machon unter dem #chance 23 eure Fragen
Wünsche Anmerkungen memes schicken ihr
könnt im
IRC Kanal Chance 3 auf
ic.hen.org uns ebenfalls Fragen schicken
wir haben ein Public heing im Aquarium
im den Link dazu findet ihr auf unserer
Webseite firchance.org wir haben ein
Youtube und ein Twitch Kanal auf dem wir
streamen jeweils unter dem Namen
firechance dort gibt es einen Livechat
in dem ihr uns Fragen stellen könnt wir
haben ebenfalls einen Stream auf
streaming.media.ccc.de unser
hauptstreaming Plattform dort findet ihr
auch ein Link zum reif wo ihr bereits
vorhergegangene talks einfach wieder
anschauen
könnt jetzt kommt der Talk kläe coden
eine Einführung in super Collider von
Modern Dragon modern Dragon ist eine
klangbasterin und wortemacherin Geek W
gitar Sängerin und ist neugierig auf
1000 verschiedene
Dinge mit das mit der programmierspr
supercollider komponiert sie seit
einigen Jahren elektronische Musik
Klangkunst und Sounddesign dieser Talk
ist eine kurze praxisbezogene Einführung
ins klangbasteln mit
Code hallo herzlich willkommen zu meinem
Talk mit dem Titel Klänge coden eine
Einführung in super
Collider ich bin modern
Dragon meine musikalischen Wurzeln
liegen in der
Klassik und seit 2018 experimentiere ich
mit super Collider ich bin da drum so
ein bisschen
rumgeschlichen ich war eigentlich auf
der Suche nach
unglaublich nachem einfachen Tool mit
dem ich KLE synthetisieren kann die
erstens nicht so ressourcenintensiv mit
dem auf dem Computer sind und zweitens
wo ich wirklich verstehe was passiert
und da bin ich dann ein bisschen rum um
supercore leider rumgeschlichen habe mir
immer so gedacht
sieht aber so komplex aus und braucht
wahrscheinlich so viel Zeit bis ich mich
eines Tages mal einfach hingesetzt habe
und mir gesagt habe so ich spiele jetzt
einen Nachmittag damit rum
entweder habe ich es dann durchgespielt
oder ich habe ein neues Hobby ja ihr
dürft raten was passiert
ist meine
Musikveröffentlichungen findet ihr auf
Bandcamp unter the emergent und
gelegentlich mache ich auch Livestreams
auf Twitch mit demselben
handle was ist super
Collider super Collider ist
wie die Website sagt a platform for
audio synthesis and algorithmic
composition also eine Plattform für
Klangsynthese und algorithmische
Komposition das wird jetzt vielen von
euch nicht besonders nicht viel
sagen die Art wie ich es erkläre ist es
ist eine kom Kombination aus einer
Programmiersprache die nennt sich S L
einem Audio Server SC Synth und einer
IDE also einer Entwicklungsumgebung das
ist die
side
supercider wurde entwickelt ab
1996 von James McCartney ist seit 2002
Open Source unter der Lizenz GPL
3.0 es ist
das ist wichtig fürs Praktische arbeiten
damit es es eine interpretierte
Programmiersprache das heißt eins muss
den Code nicht erst kompilieren bevor er
ausgeführt werden kann es ist auch eine
Objekt
objektorientierte
Programmiersprache die auch sehr stark
mit Vererbung
arbeitet supercollider läuft auf Linux
Systemen es gibt Pakete für Arch Debian
und Ubuntu auf
MacOS
Windows raspberry piie ich glaube da
muss ein selber kompilieren und auch auf
dem bele bone
black was mag ich an
supercollider das erste ist es ist
komplett mit Code
kontrollierbar wenn ich gleich das die
IDE zeige dann werdet ihr sehen dass es
alles Text ist und sehr sehr wenig
grafischeer grafische
Benutzeroberflächen oder so gut wie
keine das ist toll für mich weil mein
Gehirn irgendwie mit textbasierten
Interfaces sehr gut klar kommt ich
arbeite auch sehr gerne mit mit der
Tastatur ich arbeite viel mit der
Kommandozeile
m das kommt mir einfach sehr
entgegen man kann damit auch sich seine
eigenen Userinterfaces stricken
oder es in Zusammenarbeit mit anderen
Programmen verwenden
aber der Kern funktioniert mit
Code
was ich da dran auch mag ist dass es mit
anderen Systemen interagiert z.B über
MIDI über open sound control oder über
Arduino das heißt eins kann sich da auch
prima so eigene Hardware bauen
mit der sich dann supercider
kontrollieren
lässt es bietet sehr feine Kontrollen
für Sounddesign das heißt ich kann sehr
genau kontrollieren welche Klänge sind
da drin wie werden die wie reagieren die
wie verhalten die sich
M es inspiriert einen ganz eigenen
Zugang zu elektronischer
Musik das hat mich auch sehr begeistert
dass ich damit also wenig Klänge gemacht
habe die ich vorher schon kann kannte
oder die ich vorher erwartet hätte und
ich habe dabei aber ja an meine Liebe zu
experimenteller Musik
wiederentdeckt was an supercider auch
toll ist ist dass es sehr schöne
Möglichkeiten gibt kreativ mit Zufall zu
arbeiten also eins kann damit auch
Musikstücke machen die nicht linear
festgelegt sind
ähm und praktisch auch den Zufall sehr
für sich arbeiten lassen und was ich
schon angesprochen habe ist es
vergleichsweise ressourcenparsam es
läuft z.B auch auf meinem uralten eeee
PC noch natürlich kann ich damit nicht
so riesige Programme bauen wie auf einem
etwas besser ausgestatteten
Rechner
ja kommen wir zu einem etwas
praktischeren
Teil die
side kleiner Exkurs eins muss nicht mit
der sciide Arbeiten es gibt auch eine
recht aktive Community die andere
Editoren verwendet neovm ist z.B sehr
beliebt es gibt Leute die arbeiten mit
X es gibt ein für sublime
Text für Visual Studio Code und für
Atom
und wahrscheinlich noch ein paar mehr
die von denen ich jetzt nicht weiß oder
die ich hier noch nicht genannt habe
also eins mus da nicht mit der sciide
Arbeiten für den Einstieg finde ich die
allerdings sehr schön weil sie auch ein
paar Werkzeuge mitbringt
die ich ganz nützlich und angenehm
finde ja hier ist ein Screenshot wie das
Ganze aufgebaut
ist wir haben hier einen
Arbeitsbereich m es gibt einen ein
hilfeefenster es gibt hier das Post
window und noch eine Statuszeile und
jetzt ist die Zeit dass ich mal
tatsächlich in live in die idei
umschalte
ja so sieht das Ganze live und in äh
nicht besonders viel Farbe aus das ist
jetzt das Standard fararbschema gibt
noch ein paar andere wenn eins die das
äh dunkle Schrift auf hellem Hintergrund
nicht so
mag
ja und wenn ihr das jetzt vergleicht mit
dem Screenshot eben dann seht ihr dass
hier in der
Statuszeile die Werte noch weiß sind das
ist weil der Audio Server noch nicht
gebootet
ist ich habe hier mal ein
paar Code Beispiele
vorbereitet ja aber jetzt brauche ich
gerade eine
Gedächtnisstütze genau
ähm ja noch eine kurze Anmerkung zu der
Statuszeile
ähm wir sehen hier Interpreter active
das heißt der interpretter
läuft das ist meistens der Fall der Wert
das ist auch grün hier das heißt es ist
alles in Ordnung
damit der Server ist noch nicht
gebotet
die Werte die wir hier gleich sehen
werden das eine der ganz links ist für
die durchschnittliche CPU Auslastung die
Spitzen CPU Auslastung rechts davon dann
wie viele
ens auf dem Server aktiv sind das
erkläre ich gleich noch was es ist wie
viele sys
laufen wie viel Gruppen und wie viele
sythds geladen sind
das sind alles Begriffe die erkläre ich
im Lauf des Vortrags
noch
ja hallo
supercollider was ist jetzt das hallo
Welt von supercollider
ja natürlich kann ich hier so ein hallo
Welt ausgeben lassen das heißt Post LN
ist eine eine Methode mit der kann ich
ein String hier im Postfenster
ausgeben
lassen das Postfenster das zeigt
Meldungen an wenn ich eine Funktion
ausführe
oder es gibt mir Werte
aus oder es gibt auch Fehlermeldung aus
ähm ich werde im Lauf des talks immer
mal wieder auf das Postfenster
verweisen ja jetzt ist natürlich einfach
nur Text in diesem Postfenster ausgeben
lassen
also das ist jetzt nicht so unbedingt
das wofür wir supercider installiert
haben also Booten wir doch mal den
Server
bevor ich das aber mache ein
paar Dinge zum safer ich nenne das safer
Krach machen super Collider hat nämlich
leider keine Funktion eingebaut von Haus
aus
die dafür sorgt dass wir uns nicht die
Ohren respektive die Lautsprecher kaputt
machen das heißt wenn ich jetzt
irgendwas ma und nicht sicher bin ob da
jetzt gleich ein super lauter oder super
hässlicher Klang rauskommt der richtig
in den Ohren weh tut wenn ich mit
Kopfhörern arbeite im Zweifelsfall
Kopfhörer absetzen und oder die
systemlautstärke oder die Lautstärke von
den Lautsprechern wenn ich jetzt z.B
welche an dem Audio interterface hab
runterdrehen supercollider hat eine
Aussteuerungsanzeige eine Lautstärke
Anzeige die werde ich auch gleich mal
zeigen
die im Auge zu behalten ist auch immer
gut die wird nämlich gelb oder rot wenn
Dinge zu laut
werden natürlich sage ich auch augen auf
beim
Sounddesign da kann eins mit sich mit
supercollider auch nämlich manchmal in
den Fuß schießen
passiert auch immer mal wieder
also so die Momente wo eins sich ganz
hektisch den Kopfhörer absetzt
die sind glaube ich in der Karriere
jeder supercollider User
in
vorgekommen und zu guter Letzt und auch
sehr
wichtig super ider hat sozusagen ein
Panic Button bzw eine eine
notausfunktion das ist das
Tastenkürzel Steuerung Punkt auf Windows
und Linux Systemen auf Mac ist es
command
Punkt wenn irgendwie mal eins keine
Möglichkeit eingebaut hat ein Klang zu
beenden dann ist das auch sehr nützlich
und ich werde diese ation auch gleich
benutzen
denn ja erstmal muss ich jetzt den
Server
Booten das kann ich mit mehreren Dingen
tun entweder es gibt hier in im Menü
gleich der erste Eintrag unter Server
ist Boot
Server wenn er nicht an
ist es gibt auch
eine code Option und es gibt noch das
Tastenkürzel Steuerung
B das ist auch was charakteristisches an
supercollider es gibt meistens mehrere
Möglichkeiten was zu tun
also so ein so eine so
Standardfunktionen zu benutzen
mm wie z.B auch die
Aussteuerungsanzeige also den
servermeter einzuschalten leider geht
superc leider nicht besonders elegant
mit damit um wenn eins mehrere
Bildschirme hat das heißt ich musste mir
das jetzt gerade von meinem zweiten
Bildschirm
rüberziehen
ja dann ist Zeit den Server zu booten
das dauert jetzt auf meinem System so
ein kleines
bisschen aber ha da sind wir es ja schon
die Zahlen sind grün hier die Anzeige
für die CPU Auslastung bewegt sich
[Musik]
ähm ja und jetzt können wir doch
mal das halloelt von supercoll da
abspielen das
ist die einfachste
Funktion die ich so
kenne was haben wir hier wir haben eine
sogenannte unit Generator das sind so
die m die Bausteine die supercollider
mitbringt das sind
m ja praktisch so vorgefertigte
Programm Teile die eins verwenden
kann Basics zur Syntax wie habe ich das
jetzt gerade
ausgeführt wenn ich eine einzelne Zeile
ausführen will wie z.B das hier wenn ich
jetzt Umschalt Enter drücke dann führt
supercider das
aus was auf dieser Zeile
steht und um es zu beenden drücke ich
Steuerung
Punkt selbes ist für ein ausgewählten
Block also wenn ich jetzt ein bisschen
weiter
runter
navigiere mal diesen code block diesen
Code hier
auswähle
Codeblöcke stehen in runden Klammern das
heißt alles was in runden Klammern steht
führt supercollider zusammen aus der
Kontrast ist jetzt hier nicht besonders
hoch aber vielleicht kann man das sehen
wenn ich vor eine öffnende Klammer mit
dem Maus Cursor geh mit dem Cursor geh
oder hinter eine schließende runde
Klammer
dann hinterlegt das da diesen Block grau
und zeigt mir was da
zusammengehört ja und wenn ich zwischen
diesen Klammern bin und jetzt Steuerung
drück dann führt diesen Codeblock aus in
diesem Fall wieder den Sinuston mit 440
Herz
ähm ja vielleicht sind euch auch diese
geschweiften Klammern hier aus
aufgefallen geschweifte Klammern ähm
sagen alles was zwischen diesen
gestreiften klammen ist ist eine
Funktion
ähm
arrace stehen in eckigen Klammern wer
schon mal mit Python gearbeitet hat
kennt diese Syntax
hier und wir sehen dem Moment wo ich
diese Zeile hier ausführe gibt's mir das
Imp Post window
aus wie viele andere
Programmiersprachen fängt supercollider
bei Null an zu zählen das ist
manchmal wenn wir
zum Arbeiten mit Tonleitern kommen dann
ist das ein bisschen
verwirrend ja
[Musik]
wenn ich ich zu einer Methode oder einer
Funktion Hilfe
brauche dann muss ich einfach nur mit
dem Cursor dahin navigieren
und auf meinem Windows System ist es
Steuerung
D und dann ruft es mir
hier diese
dann sucht durchsucht es die Hilfe
danach das ist jetzt ja dort free ist
jetzt was dazu gibt's relativ viel wenn
ich jetzt mal z.B wieder zu
sinosk
gehe dann geht's direkt zum zur
entsprechenden
Hilfedatei ich kann das jetzt hier mal
bisschen größer
ziehen die Hilfedateien sind immer
ähnlich aufge
ut also es gibt hier so eine allgemeine
Beschreibung wir sehen welche
Methoden die jeweilige Klasse hat und
welche Argumente so die jeweils erwartet
das ist nämlich nicht bei
allen bei allen Eugens
gleich es gibt dann noch welche Methoden
eins mit so einer Klasse wenden
kann ihr seht hier inherited class
methods ich habe ja vorhin schon erwähnt
supercollider arbeitet stark mit
Vererbung und am Ende hier haben wir
noch Beispiele diese Beispiele kann eins
in der supercollider IDE auch abspielen
also wenn ich
jetzt wenn ich da
Umschalt enter
ausführe oder z.B jetzt hier dann spielt
mir das ab und
mit Steuerung Punkt kann ich das auch
wieder
beenden
ja okay ich schieb das jetzt mal wieder
auf die annähernd auf die vorherige
Größe damit wir mehr von den anderen
Fenstern
sehen
ja es gibt ein paar ganz nützliche
Visualisierungen in supercleider das
servermeter bzw die lautstärkeanzeige
habe ich schon jetzt gerade
gezeigt es gibt auch ein
Oszilloskop
wenn ich jetzt da noch mal diese
Sinusfunktion
ausführe dann sehen wir die Wellenform
da es gibt auch eine Anzeige fürs
Frequenzspektrum die ist jetzt bei der
senuswelle nicht so furchtbar
interessant aber die wird später
noch
interessant und ich kann auch ja es gibt
da noch eine grafische Repräsentation
der
aktiven sys und
[Musik]
Gruppen zu Gruppen komme ich jetzt in
diesem in diesem Talk nicht Gruppen sind
also hier seht ihr dieses graue
Rechteck und und vielleicht sieht das
ein bisschen besser wenn ich mal mein
Kamerabild wegmach so
ja dieses graue Rechteck das
repräsentiert eine Gruppe eine Gruppe
fast sozusagen immer
zusammen also fastst verschiedene Klänge
zusammen wenn
ich mit sehr
vielen Funktionen arbeite oder wenn ich
Effekte hab dann packe ich gerne die
Effekte in der eigene Gruppe
und das so sozusagen immer ein Container
für
Prozesse ja wenn ich jetzt
hier ja das war das falsche Tastenkombi
wenn ich das hier hier noch mal
abspiele dann sehen
wir
dacheint
ein ein ein weiteres Rechteck sieht es
ist jetzt ein bisschen abstrakt m wird
aber nützlich wenn ich im Blick behalten
will wenn ich Idee davon haben will was
passiert auf meinem Server eigentlich
wie viel Prozesse laufen gleichzeitig
gibt's da irgendwelche Sachen die
vielleicht hängen bleiben die noch da
sind obwohl sie nicht mehr gebraucht
werden ja und zu guter Letzt wenn ich
wissen will wie eine Wellenform aussieht
dann kann ich das ganz einfach mit der
Methode
Plot also indem ich an so eine Funktion
hier statt play einfach Plot dran hänge
dann baut mir das so eine Darstellung
von der Wellenform das ist jetzt so
eine Sinuswelle
ähm ja
kann unter Umständen auch ganz nützlich
sein und ich habe es z.B auch schon
gebraucht um
damit Visualisierung
für
für z.B Musiktheorie Lektionen zu
bauen ich mache das jetzt mal wieder zu
die anderen lass ich mal lass ich mal da
stehen denn die könn wir eventuell noch
brauchen ja jetzt ist das alles schön
und gut
aber so eine einzelne Sinuswelle ist ja
noch keine
Musik und ich habe jetzt mal hier eine
kleine
spaßige Sache gebaut die auch ganz ganz
lustig
ist ich schau mal gerade auf meine
Folien denn es kann sein dass ich noch
was noch was anderes erzählen
wollte okay
ja genau die Grundlagen der Syntax die a
eine wichtige Sache die habt ihr schon
gesehen aber ich möchte noch mal möchte
noch mal ausführlich erklären Kommentare
in
supercollider wenn ich hier was eintippe
dann und wenn ich jetzt zwei vorwart
slashes davor mach dann wird das
ausgegraut das heißt das ist
ein das ist ein Kommentar sind
zeilenweise
Kommentare etwas weiter oben habe ich
auch genau das hier z.B ist ein
mehrzahiger
Kommentar
vw/ash Stern am
Anfang umgekehrt am Ende
kommentiert meh mehrere Zeilen
aus supercollider hat da auch im Menü
was womit
man ja genau hat auch eine Funktion
womit man mehrere Zeilen also womit man
Zeilen schnell ein oder aus kommentieren
kann ich Tipp's immer ist für mich nur
wenig
langsamer so eine andere Sache möchte
ich noch erklären bevor ich äh bevor ich
euch eine etwas komplexere Funktion
zeige nämlich
Variablen
vielleicht ist euch das schon
aufgefallen ich habe hier die Variable
ich habe hier den Buchstaben A verwendet
a ist
gleich und dann diese
Funktion
m und konnte die dann ganz bequem
ausschalten indem ich diese Zeile
ausgeführt
habe einzelne Kleinbuchstaben A bis Z
Umlaute schaffes S funktionieren leider
nicht sind von Haus aus globale
Variablen
mm der einzige Buchstabe
der traditionell reserviert ist ist s s
steht für den lokalen Server also wenn
ich hier
s ausführe dann zeigt's mir hier im
Postfenster local
host alle anderen Buchstaben sind
sozusagen frei für globale
Variablen wenn ich jetzt eine globale
Variable haben will die Länge ist dann
mache ich einfach eine Tilde davor der
erste Buchstabe danach muss immer noch
ein Kleinbuchstabe A bis Z sein danach
kann ich machen was ich will
und
ähm diese diese globale variabel stehen
mir dann sozusagen in im gesamten
Programm zur
Verfügung wenn ich
jetzt wenn ich jetzt eine Variable haben
will die nur innerhalb eines CodeBlocks
oder innerhalb einer Funktion
gilt eine lokale variab Variable dann
muss ich die mit dem Schlüsselwort war
deklarieren wie das
aussieht seht ihr
hier also die globale Variable
robops beinhaltet diese Funktion hier
und innerhalb dieser Funktion habe ich
die Variablen Z Mod und fr für die
Frequenz
m Mod ist jetzt
eine ja auch wieder eine
Hugen LF nees Zero
ist ein Zufallsgenerator der also so oft
wie in dieser Klammer steht also mit
dieser
Frequenz äh durchschnittlich pro Sekunde
ähm Zufallswerte zwischen
äh in dem Fall 1 und 16 generiert
normalerweise zwischen 1 und 0
[Musik]
ähm mit dieser Methode
Range also dem hier sag ich dieser zu
sfunktion bitte gib mir Werte zwischen 1
und
16 und das dot roundound am Ende ist
dann und runde das auf den nächsten
ganzzahigen
Wert so und damit moduliere ich jetzt
praktisch die
Frequenz dieser dieser Sinuswelle das
heißt
dasm das heißt die
das heißt ich multipliziere das mit
diesem zufallsswert mal ist nur ein Wert
für die Lautstärke das damit das nicht
ganz so laut und piepsig
ist und
Pan bisher hatten wir ja
alle Klangbeispiele nur im linken Ohr
das ist natürlich so ein bisschen
unangenehm Pen ist ein stereoenner das
heißt es platziert das Signal im
stereofeld
-1 ist ganz links 1 ist ganz rechts 0
ist in der
Mitte und wenn ich das jetzt abspiele
dann klingt das so
ah Tatsache ich habe jetzt
hier das Player Objekt in einer einzelne
eins in einer eigene variable
[Musik]
gepackt
ja ist ja schon ein bisschen
musikalischer macht schon ein bisschen
mehr
Spaß
und wenn ihr jetzt
äh auf das Stethoskop geachtet habt habt
ihr gesehen da passiert in beiden äh auf
beiden auf beiden Linien was das heißt
in beiden
Audiokanälen
ja jetzt habe ich noch ein etwas
abstrakteren Exkurs
wenn ihr gerade genau auf den Code
geschaut
habt
dann ihr seht
hier ich habe hier andere Buchstaben als
hier dieses LF nees Zero hat ein DKR
hinten dran und keinar was hat damit auf
sich ja das ist sozusagen die Auflösung
mit der die Funktion ausgeführt
wird in supercollada heißt das auch
Raid davon gibt's noch ein paar mehr die
wichtigst sind aber jetzt zumindest
jetzt für den Einstieg AR und KR
diese Auflösungen sind vergleichbar mit
der Auflösung von dem
Pixelbild das heißt also wenn ihr so ein
kleines Bild habt und das groß zieht
dann ist es auf einmal ganz pixelig
m bei Audio gibt's solche Phänomene auch
m Audio rate ist praktisch dann die die
heißt das Signal wird neu berechnet mit
der sampelrate des Audio Servers
ähm das heißt wenn ihr euch
an wenn ihr mal in M
audiearbeitungsprogramm so weit
reinzoomt wie möglich dann seht ihr das
die die dass die Darstellung der
Wellenform so pixelig ist
m das ist das das sind dann die
einzelnen audio
samples das ist für gewöhnlich entweder
44,1 kHz oder 48 kHz das heißt
so schnell
berechnet der Computer dann den Zustand
der der Wellenform
neu audioorate ist gut für Funktionen
die direkt Klang
erzeugen wenn ich jetzt ein Signal habe
das nicht ganz so hoch aufgelöst sein
muss dann verwende ich control rate
mm das ist ein bisschen kompliziert wie
groß wie schnell die
ist
control Rate ist abhängig von der
Blockgröße des Audio Servers was ist das
jetzt schon
wieder die Blockgröße des Audio Servers
ist wie viele Samples der wie viel audio
samples der Server immer in einem Rutsch
zusammen
verarbeitet die Standard Blockgröße von
supercollider ist
64 das ist relativ relativ
klein das heißt das würde bei 48 kHz
bedeuten
das Signal wird 750 mal pro Sekunde neu
berechnet das ist hoch genug aufgelöst
für alle Funktionen die jetzt nicht
direkt Klang erzeugen z.B wie in dem
Beispiel gerade eben wenn ich damit
Parameter von einer Funktion modulieren
will
ja
jetzt komme ich zu was das in
supercollider
ein etwas auch ein etwas schwieriges
Konzept ist am
Anfang ich zeige euch das erstmal anhand
von
ein paar Klang Beispielen wir hatten ja
gerade
das ja und ihr hört das ist also
hauptsächlich im bzw eigentlich passiert
es nur im linken
Kanal ist ja nicht das was ich immer
will wenn ich jetzt statt en Wert ein
Array da reinstecke in diese
[Musik]
Sinusfunktion dann seht ihr dass wir auf
einmal im linken Ohr und im rechten Ohr
unterschiedliche Tonhöhen haben und auch
die Wellenform sieht hier
unterschiedlich
aus was passiert
da
ich ich ma noch mal was drittes wenn ich
jetzt da drei Werte
[Musik]
reinstecke man könnte jetzt sagen aber
modern Dragon das klingt jetzt genauso
wie das was wir gerade hier
hatten die Erklärung dafür ist wenn ich
in supercider in eine Funktion einem
Parameter mehr als einen Wert als Input
gebe
dann führt supercollider diese Funktion
einfach mehrfach aus und verteilt das
auf jeweils einen Kanal das heißt wenn
ich jetzt hier drei Werte reinstecke
dann sagt es
okay die 440 Herz kommen in den linken
Lautsprecher die 330 in den rechten
Lautsprecher und die
550 auf de dritten Lautsprecher den wir
aber nicht
haben das heißt wenn wir jetzt mehr
Signale erzeugen als wir Audiokanäle zur
Verfügung haben hören wir nur so viele
wie wir Audiokanäle
haben ja ich kann ja nicht nach Bedarf
einfach einen dritten Lautsprecher
hinstellen wenn ich das jetzt also im
stereofeld unterbringen will dann gibt's
zwei Möglichkeiten entweder ich hänge an
die ugen hier noch die Methode
dotsum hinten dran dann summiert es das
zu eineem
Monosignal das heißt jetzt hören wir
Dreiklang aber nur im linken
Ohr oder es gibt die Jugen
splay die verteilt diese Signale
gleichmäßig auf das
[Gelächter]
stereofeld
ja jetzt haben wir einen wunderschönen
Dreiklang in wunderschönem Stereo
genauso wie wir uns das vielleicht
vorgestellt
haben
okay jetzt
ähm bisher haben wir ja
als Klang nur senuswellen genutzt
natürlich ist das ein bisschen
langweilig nur nur damit audiosynthese
zu machen und auch nicht besonders nicht
besonders
musikalisch
also habe ich mal eine etwas komplexere
Funktion
gebaut und diesmal hole ich
mal unsere ganzen Fenster
zuerst
so das
hier
ist
jetzt ich kommentiere das erstmal aus
hier hat jetzt noch noch ein neues
Feature nälich
Argumente wozu sind Argumente gut wie
unterscheiden sie sich für eine
Variablen auf eine Variable habe ich von
außerhalb der Funktion kein
Zugriff die ist Strick
nur in der Funktion selber
drin es sei den das ist eine globale
Variable
aber
Argumente sind z.B Amp ist ein übliches
Kürzel für
Lautstärke cutoff ist dazu da wenn ich
jetzt ein Filter
einsetze zu
bestimmen das die Charakteristika von
diesem Filter zu bestimmen und warum
habe ich denn da das das Gate jetzt noch
drin das brauche ich gar nicht mehr
lösche ich mal
so
ja Argumente sind gut wenn ich von außen
wenn ich Werte haben will von auf die
ich von außen zugreif
kann um z.B eine Funktion mit bestimmten
Argumenten abzuspielen also mit anderen
Werten abzuspielen als den Werten die
ich da hart reingecodet habe oder auch
um eine laufende Funktion zu
verändern zur Klangerzeugung verwende
ich hier war das heißt eine Variable
sägezahnwelle die mag ich recht gerne
weil sie
ja ein Klangcharakter hat den ich noch
ein
bisschen verändern
kann ich zeig jetzt nur mal
die die sägezahnwelle
isoliert
die ist ohne ohne jegliche Filter
relativ
nasty das heißt die wahre saauer mit den
Standardwerten vielleicht
nicht
ihr seht jetzt die sieht jetzt mehr so
wie so eine dre dreieckswellele
aus wenn ich
da
die Weite noch ein bisschen
[Musik]
verändere so
klassische schneidende
sägezahnwelle ja ich habe jetzt da auf
diese
sägezahnwelle noch ein Lowpass Filter
rauf rauf gepackt das heißt der Lowpass
Filter da habe ich noch eine Variable
drin die ich auch noch nicht die auch
ich auch nicht brauche ich
habe ja der Code ist etwas mit der
heißen Nadel gestrickt
ich habe jetzt
da ach genau was habe ich denn da
eigentlich gemacht ja
egal ich ich kommentiere das jetzt mal
alles aus so
ähm ich spiel das einfach mal ab und ihr
hört was
passiert
oh al declared
in okay okay okay das
ist ja ich ich habe da ein bisschen
Unsinn
gebaut
ah okay jetzt ihr seht jetzt ist es grün
hier
[Musik]
das heißt
indem ich hier so diese Sachen
ausführe kann ich Dinge verändern
während diese Funktion läuft
ähm
ja und das ist dann auch eine sehr sehr
gute Sache wenn ich dann weitergehe zur
nächsten
zum nächsten super Collider eigenen
Dingen dass ich erklären
möchte und zwar
synthds
s sind sozusagen die Sounddesign
Blaupausen in supercollider
bzw eine syth ist sozusagen eine
konstruktionsanweisung für ein
Klang was ist der Vorteil gegenüber
Funktionen ich kann damit einen Synth
erzeugen der sich einfach und robust
steuern lässt
und sind nützlich in Kombination mit
patterns
m okay zu den zu envelops komme ich
gleich ja ich habe hier wieder als
Klangerzeugung für diese Synth
erstmal was
ist der Aufbau einer Synth
death ich habe also hier dieses die
Klasse
SDE die bekommt einen Namen
der ja in der Regel das ist das dieser
Backslash ist in supercider kennzeich so
kennzeichnet was danach kommt als
Symbol dann kommt ein Komma und dann
eine Funktion und am Ende haben wir
dieses dtad das heißt das
fügt das das sagt supercollider
m ja lade das auf den
Server damit ich dann bequem ausführen
kann wir haben hier eine ganze Reihe von
Argumenten einige
davon sind die gleichen wie in dieser
sägezahnwellenfunktion
gerade und ich habe dann noch
ja sick ist immer so ein also ich
verwende das so als kurz als Kürzel für
okay das ist das Hauptsignal
m Dune ist
dieses Array hier dazu komme ich gleich
noch
m und enf ist ein sogenanntes ein
sogenanntes ein envelope eine Hüllkurve
auf
Deutsch was ist
das eine hühkurve ist sozusagen eine
Verlaufskurve für einen
Wert am verbreitetesten im in der Welt
der
audiosynthese ist das bei
lautstärkewerten da gibt's in der Regel
die
Unterscheidung da gibt's die in der
Regel die Unterscheidung perkussive
hühkurven sind haben eine festgelegte
Dauer das heißt das ist so ähnlich wie
wenn ich jetzt z.B ein Schlaginstrument
habe wenn ich auf eine Marimba drauf
haue dann hat das ein bestimmtes
Schwingverhalten und das kann ich dann
wenn ich einmal drauf gehauen habe kann
ich die Schwingung nicht mehr verändern
oder wenn ich äh eine Gitarrenseite
anzupfe
gut ich kann Vibrato machen aber
im Prinzip
schwingt schwingt die Seite dann
irgendwann aus und da drauf habe ich
keinen so sonderlichen
Einfluss heiß ich kann es ein bisschen
beeinflussen
aber ja die Seite schwingt solange sie
schwingt
dann gibt's die Hüllkurven mit
unbegrenzter
Dauer wenn ihr schon so ein bisschen mit
audiosynthese rumgemacht habt kennt ihr
vielleicht die Begriffe ADSR oder
ASR für attack decay sustain Release
oder attack sustain
Release das heißt das sind hühkurven die
haben so ein bestimmtes
vorgefertigte Segmente sozusagen also
attack bestimmt wie lange der
Einschwingvorgang dauert bis die bis der
Klang
sein gesamtes Volumen al seine seine
volle Lautstärke erreicht hat decay ist
so ein das fällt dann ab zur Lautstärke
die ausgehalten wird sustain ist wie
laut ist diese ausgehaltene Lautstärke
Release ist wie lange dauert der
ausschwing vor Vorgang
ähm das ist so ähnlich wie z.B bei einem
Blasinstrument das klingt ja solange ich
reinblase und es schwingnkt erst aus der
Klang hörst hört erst auf wenn ich
aufhöre
reinzublasen
hühkurven lassen sich nicht nur für die
Lautstärke verwenden aber Lautstärken
ist halt
ja die verbreitetste Anwendung
dafür so ich rufe jetzt gleich meine
ganzen Fensterchen wieder
zurück ja wie sieht das jetzt im
supercollider Code aus wir haben hier
ähm es gibt eine Langfassung davon die
ist aber etwas
äh
etwas
umständlich deshalb zeige ich jetzt hier
nur die die Kurzfassung
enf.adsr sagt dem sagt supercollider
okay mach mir bitte einen
ADSR envelope und der
hat diese Argumente hier als
Parameter was macht das KR am Ende
das heißt das bedeutet dieser
welcher Wert jetzt gerade von dieser
hühkurve gilt wird eben mit der control
rate neu
berechnet dann freeelf heißt einfach nur
oh und wenn wenn der ausschingvorgang
fertig ist dann lösch auch den S vom vom
Server
Gate ist ein Parameter
das bestimmt also
wie solange Gate nicht Null
ist
hält der SF auf dieser auf diesem
sustain Level also auf der sustain
Lautstärke an der habe ich jetzt hier
den Standardwert 1 gegeben muss ich aber
nicht ich kann das auch mit anderen
Parametern
abspielen ja was hat's mit diesem Dune
hier auf sich ihr seht hier ein Array
von Werten die alle so ganz knapp um
eins
rumleen ja warum habe ich das
gemacht damit diese sägezahnwelle hier
so ein bisschen mehr Volumen mehr um
hat ähm und das erreicht eins recht
effektvoll indem man
äh die Frequenz mit so einem
detunwerert
multipliziert dadurch haben wir
Frequenzen die sind so ein ganz kleines
bisschen unterschiedlich und schweben so
ein bisschen
miteinander
ähm und dadurch klingt das ein bisschen
voluminöser ja dann haben wir hier ein
Lowpass Filter
ähm dem wir dieses Signal hier
übergeben und als cutoff Frequenz das
heißt die fre also alles was höher ist
wird
weggefiltert hat hier
3200
so und wenn ich das jetzt
abspiele jetzt habe ich die Synth Def
auf den Server geladen wenn ich das
jetzt
[Musik]
abspiele ich kann jetzt z.B Sachen
verändern wie die cutof Frequenz von
diesem
Filter ja SFS sind
hervorragende building blocks
hervorragende Blöcke
Bausteine
um mit patterns zu arbeiten und zu
patterns komme ich jetzt
gleich
ja was sind
patterns
patterns sind eine Bibliothek zum
sequencing von
klangereignissen das heißt ich kann
damit eben jetzt nicht nur einzelne
Klänge erzeugen wie jetzt diesen
einzelnen sägezahnton mit dem lowp
Filter
drauf sondern ich kann damit ganze
Klangfolgen
beschreiben patterns in der
supercollider li fangen immer mit einem
P an wir haben Sachen wie P bind Pic
pand pwh etc etc
P bind ist dabei so ein bisschen die
so ein Container in dem ich die in den
ich die anderen pattern Klassen reintun
kann und die Werte werden immer
paarweise angegeben nach dem Muster
Symbol für einen bestimmten Parameter
und
wert das heißt ich sollte da vielleicht
eher Parameter schreiben
ähm ja es ist vielleicht Zeit dass ich
das ein bisschen
demonstriere das einfachste pattern das
supercollider hat ist ein pbeind mit gar
nichts
[Musik]
drin
ja wir können
jetzt z.B sagen
Spiel also das das wäre jetzt genau das
gleiche oh ich sehe jetzt ich habe da
mir fehlt dann
Komma 60 Dom CPs ist nützliche
Methode wenn ein mal nicht genau weiß
welcher äh welchen herzwert ein
bestimmter musikalischer Ton
äh hat
äh
60 dann sagt das Okay äh rechne das um
von midinoten in cycles per seconds also
Schwingungen pro Sekunde
ähm das wären in dem
Fall
261 komm irgendwas
Herz
ja mit Medi Werten zu arbeiten also 60
entspricht dem C in der Mitte des
Klaviers mit Medi Werten zu arbeiten ist
aber so ein
bisschen kann so ein bisschen
anstrengend sein deshalb hat die Pattern
Library auch sowas wie
degree degree
ist Tonleiter Stufen und wie ich schon
erwähnt habe supercider fängt mit Null
an zu zählen das heißt S ist schon das C
am oberen Ende der Tonleiter das klingt
jetzt
[Musik]
so ich kann superc leider auch sagen so
ich will jetzt keine Leiter das ist der
Standardwert Spiel das doch
[Musik]
mititte Spiel mir das doch bitte in
Moll das hier hinten dran
ist Stimmungen super Collider hat auch
eine relativ
umfangreiche Bibliothek an Stimmungen
und es hat auch eine recht umfangreiche
Bibliothek
m ich könnte da z.B jetzt auch eine
vierteltonskala
nehmen
[Musik]
z.B
[Musik]
jetzt haben wir das mit
vierteltönen ja
und was ich hier verwendet habe ist
pek pek sagt okay ich habe hier dieses
Array von Werten und die Spiele ich
nacheinander
ab ich zeige euch nachher auch noch ein
paar andere wir haben aber z.B es gibt
aber auch z.B
Serien POM ist eine geometrische Serie
das heißt ich fange hier mit 1 an und
jeder folgende Wert wird mit
0,7 multipliziert den vorausgehenden
Wert mit 0,75 bzw 3ier und ich habe hier
acht
Werte wenn ich das jetzt
[Musik]
abspiele dann wird es immer leiser und
der Stream hört auf einmal von alleine
auf bzw das das Pattern das Pattern hört
von selbst
aufzuspielen warum ist das wir haben
hier ein inf das heißt diese Folge würde
eigentlich unendlich
wiederholt aber weil wir hier nur acht
Werte haben sagt das pbind dan danach
bzw der Player sagt danach okay ich habe
nur acht werte ich bin
fertig wir können
auch sagen jetzt macht das schneller
jetzt soll jedes Ereignis nur noch halb
so lange dauern wie also nur noch einen
halben Beat
[Musik]
dauern und wir haben z.B auch einen
legato wert das heißt
wenn der unter ein ist dann werden die
Ereignisse voninander abgesetzt wenn er
über eins ist dann überlappen die so ein
[Musik]
bisschen ja und das war jetzt das war
jetzt alles der standardklang von
supercollider
M also super colider hat so
ein Default Synth eingebaut wenn ich
eine pattern keinen
anderen keinen
anderen Klang angeb dann nimmt's
das aber wie gesagt wir können
auch mit dem Keyword
Instrument diese Synth verwenden die wir
hier definiert haben
und wenn ich da jetzt mal ein Muster
abspiele hier habe ich z.B
ja hier habe ich noch ein paar andere
Standard Keys verwendet die es
eigentlich also auf die eins eigentlich
immer Zugriff hat in der pattern Library
z.B Octave also welche
oktaave Spiel ich das irgendwo da ganz
links auf Klavier oder ist das irgendwo
ganz rechts oder irgendwo da in der
Mitte der Filter
cutoff dur also die die Dauer da habe
ich jetzt ein Muster verwendet das nennt
sich
Pant das heißt pun wählt zufällig aus
einem gegebenen
wertevorrat hier habe ich PX
Rand das ist ählich wie Pant aber es
wiederholt nie es spielt niemals
denselben Wert zweimal
hintereinander hier habe ich wieder pand
P series ist eine Serie die mit Addition
und
Subtraktion arbeitet das heißt ich habe
hier einen cutoff Wert und zieh davon
jedes mal 500 Herz ab und die Serie 16
Elemente
lang P white wählt
P White ist anders als Pan pirant muss
ich Werte geben PW nimmt einfach
irgendeinen Wert in diesem Wertebereich
hier zwischen
0,001 und
0,666
und ich habe mit ich habe jetzt auf alle
Parameter meiner source Synth
Zugriff das heißt ich habe hier die
ganzen die Werte für den
envelope ja und pgum habe ich schon
erklärt ja und jetzt spiele ich das doch
einfach
[Musik]
mal
[Musik]
ja ich habe hier die
äh patterns für wertesequenzen auch
zusammen gefasst ein
bisschen das
wiederholungsverwalten ist je nach
pattern unterschiedlich pek wenn ich dem
eine Zahl an Wiederholungen gebe dann
meint bedeutet das so viel mal
wiederhole ich die gesamte Sequenz wenn
ich pirant eine Zahl dafür gebe
m
dann gibt es so viele Werte
aus P series ist auch so viele Werte ist
die Serie lang pgom genau o wenn ich
irgendwas unendlich wiederholen
will dann ist das Schlüsselwort inf
dafür das richtige habt ihr vielleicht
auch jetzt gerade schon
gesehen ja und der kürzeste Stream die
kürzeste wertefolge bestimmt wie lang
das Pattern
dauert ich hatte das schon das ist auch
so ein also so eine Geschichte die beißt
mich manchmal beim Komponieren und beim
Debugging wenn irgendwie
ein ein Pattern nicht so lange spielt
wie ich das erwartet habe oder nicht
endet wenn ich das erwarte dann ist in
der Regel irgendwo
entweder was was unendlich ist und nicht
unendlich sein sollte oder was was
kürzer ist
als als ich das erwartet hätte
ja die Pattern Library bevor ich
jetzt bevor ich jetzt weiter erzähle
zu was man noch alles mit super Collider
anfangen
kann die Pattern Library ist sehr groß
die patterns die ich jetzt gezeigt habe
sind nur ein ganz kleiner Ausschnit da
draus
aber es lohnt sich da langsam
einzusteigen
und also mit wenigen patterns
anzufangen und sich dann
vorzuarbeiten weil anem das in der Regel
so ein Gefühl dafür gibt wie andere
patterns sich verhalten
könnten und ich arbeite jetzt schon paar
Jahre mit supercollider ich habe auch
bis her noch nicht alles von der pattern
Library gesehen oder verstanden und
oder auch ich finde auch nicht alles
nützlich
also da gibt es viel zu
entdecken ja supercollider
erweitern die Standardbibliothek von
supercollider ist schon recht groß und
hat
viele schöne interessante Eugens und
Funktionen aber manchmal gibt es auch
Dinge
die ja und jetzt habe ich hier eine
Katze manchmal gibt es auch Dinge die
fehlen
oder etwas das äh das die Standard
Bibliothek nicht tut obwohl ich das
gerne hätte dann gibt es verschiedene
Möglichkeiten supercollid auch zu
erweitern erstmal hat supercollider ein
eingebautes Plugin System quasi eine
eigene Paketverwaltung die nennt sich
Quarks
m es gibt auch
ein Repository auf Github für super
Collider Quarks Quarks kann ich relativ
einfach in supercollider installieren
also von supercollade selbst
aus dann gibt es aber auch noch andere
Erweiterungen und
Plugins z.B die
SC3
Plugins die haben sehr viele
nützliche
Dinge und es gibt auch noch die ported
Plugins das ist auch eine Plugin
Sammlung die ich sehr nützlich finde ja
und L not lest kann eins auch seine
eigenen Erweiterungen schreiben ich habe
mir z.B ein paar Tools geschrieben die
ich so in meiner täglichen Arbeit mit
supercollider immer mal wieder
verwende das ist aber tatsächlich ein
etwas fortgeschrittenes Thema auf das
komme ich heute garantiert
nicht ja was sind so meine Tipps zum
Einstieg und zum supercider Lernen
Nummer
ein einfach
anfangen also anfangen mit einfachen
Dingen meine ich
damit und ganz schrittweise die
Komplexität hochdrehen
äh was ich auch ein sehr nützliches
Vorgehen finde ist praktisch von innen
nach außen vorzugehen das heißt ich
fange an mit der Funktion die
tatsächlich den den Klang erzeugt und
dann baue ich schrittweise Sachen
außenrum z.B Sachen den Parameter von
der Klangerzeugung modulieren
oder Filter etc
etc und immer wieder testen ob das
funktioniert ob es so klingt weil wenn
ich schrittweise vorgehe fallen mir
Syntaxfehler
etc sehr viel schneller auf auf als wenn
ich irgendwie erstmal eine halbe Stunde
Code schreibe dann versuche auszuführen
und
dann spuckt mir supercider irgendeine
kryptische
Fehlermeldung das können dann manchmal
auch ganz triviale Sachen sein wie ich
habe ein Semikolon vergessen oder ich
habe ein kommera irgendwo vergessen oder
eine Klammer
fehlt
ja trotz allem du kannst nichts kaputt
machen
das
ist für mich ein ganz wichtiger ganz
wichtiges eine ganz wichtige Maxime wenn
ich mit Code arbeite egal welche Sprache
es ist wirklich ich sag jetzt mal
vielleicht ist nichts kaputt machen
bisschen übertrieben weil ich habe ja
nicht umsonst vorhin gesagt safer Krach
machen
aber wenn jetzt wenn ich nicht gerade
Lautsprecher zum Explodieren bringe dann
kann ich
immer Steuerung Punkt
drücken wenn der Klang der da rauskommt
total unerträglich
ist frustrationsmomente sind auch total
normal mir hilft dann immer erstmal
Pause zu machen und zu
sagen ich lass den Code jetzt erstmal
liegen ich mache jetzt da jetzt erstmal
nichts dran und was weiß ich mach
erstmal was
anderes manchmal passiert es dann dass
ich zurückkomme und feststelle oh da
fehlt ja eine Klammer oder ich habe ein
Parameter hart gecodet den ich
eigentlich mit einer anderen Funktion
modulieren wollte oder
unamit was zum Lernen auch sehr
hilfreich ist ist
die Beispiele in den Hilfedateien die
sind manchmal komplexer als ich sie
notwendig
finde aber es ist immer interessant die
abzuspielen die auch vielleicht mal ins
Arbeitsfenster zu kopieren und zu
verändern weil mir hat das sehr
geholfen das zu verstehen zu
lernen gleiches gilt dafür auch fremden
Code zu zu analysieren zu stehen es gibt
ein die Website
sccode.org wo Leute ihren supercolider
Code
posten
und ja eins kann dahingehen sich den Kop
kopieren sich
anschauen wie funktioniert denn
das kann ich das Durchschauen es gibt
das
Repository SC
das sind 140 Zeilen Zeichen 140 zeichenl
Codebeispiele in 140 Zeichen kann eins
in superc leider auch schon eine Menge
Krach machen und es gibt noch den hashag
supercollider ofmastodon und das Forum
scyth.org
wo die also die Diskussionen auf
scth.org sind oft sehr technisch aber
wenn eins da als nubi hinkommt und sagt
ich verstehe hier nicht warum der Code
nicht funktioniert dann sind die Leute
in der Regel sehr hilfsbereit und auch
freundlich und
es ist oft erstaunlich schnell dann eine
Lösung
da ja was gibt's an Lernmaterial es gibt
leider sehr wenig auf Deutsch es gibt
ein Tutorial in der oder es gibt mehrere
Tutorials in der Super colid
Dokumentation
äh die auch hilfreich
sind es gibt ein freies PDF von Bruno
ruiaro c a gentle introduction to
supercollider
was sehr schön ist weil er sehr schnell
mit patterns
anfängt mir hat der YouTube-Kanal von
Eli fielsal sehr geholfen und es gibt
noch zwei Bücher die ich leider beide
noch nicht gelesen habe eins ist the
supercollider book
von mit
press ist schon etwas älter anscheinend
aber immer noch aktuell und ganz neu es
gibt auch ein Buch von Eli fieldsel mit
dem Titel super Collider for the
creative musician a practical
guide
ja das
war's wenn die Katze jetzt nicht meine
Präsentation
abbricht
vielen vielen Dank fürs
zuhören und zum Abschluss habe ich jetzt
noch eine kleine
[Musik]
Komposition
[Musik]
ja ich hoffe dieser kleine Einstieg hat
Euch
gefallen wenn
ihr Fragen dazu habt könnt ihr mich auf
Mastodon kontaktieren
@dco@sonomu.club ist mein musikbezogenes
Profil ja und jetzt bleibt mir nur euch
ganz viel Spaß beim Einstieg in
supercollider zu wünschen viel Erfolg
und
schöne schöne
kreative
Klangexperimente vielen
Dank hi und willkommen zurück ich habe
ein ein paar Fragen für Modern Dragon
ähm als allererstes mal was ist denn
deiner Meinung nach das das musikalische
eququivalent von einem einem Hello
World das musikalische Äquivalent von
dem hell world
ja also
das kommt wirklich sehr auf dem Kontext
an
ähm der der hat gemunelt ob das dann
nicht eine Tonleiter
ist ja
könnte eins könnte
eins so
sehen und das ist natürlich dann immer
interessant welche Tonleiter ist so der
Default ähm weil äh hier so in der in
der Musik aus der ich komme das ist die
abendländische klassische Musik da wäre
es die Durtonleiter aber es ist nicht
zwangslutich
so kann man dannn ein Keyboard an den
Server anschließen um direkt Inputs oder
ähnliches äh
ähm also man muss da schon noch ein
bisschen konfigurieren
ähm aber MIDI lässt sich
äh wie ich ja im Talk erwäht hab
durchaus anschließen
ähm und da lässt sich auch sehr viel
damit machen es ist jetzt leider kein so
Plug and Play ich schließ mein Keyboard
an und habe dann sofort kann dann sofort
damit in supercider was spielen
ähm aber dafür lässt sich damit sehr
viel
machen eignet sich super Collider dann
auch für Live Musik wenn man wenn man da
ein Keyboard dann ansteckt
undentsprechend konfiguriert
ähm ja also wenn eins da jetzt eine
entsprechend
entsprechend konfiguriert
der auf die Medi messages antwortet dann
kann man damit auch Live Musik
machen insgesamt super Collider was kann
man denn damit machen das ist ja ein ein
großes großes Framework wofür verwendest
du denn
supercollider
also ja supercollider ist eine sehr
vielseitige Sprache ähm wofür es z.B
beliebt ist ist live
coding also
ähm live vor Publikum entsteht die
Komposition entstehen entstehen die
Klänge und
ähm wofür ich persönlich supercollider
nutze ich mache sehr viel mit
äh tatsächlich jetzt dieser pattern
Library ich nutze das um zu
komponieren ich habe da allerdings auch
auch schon Sachen gebaut wo ich dann ein
Interface auf einem Tablet hatte dass
ich über open sound control
also das praktisch
über
WiFi und open sound control dann meinen
supercollider Server angepinkt hat hat
um bestimmte Ereignisse auszulösen und
dazu habe ich dann gesungen
ähm das ist ja auch sowas was was super
kider noch kann es kann z.B ähm auch
Mikrofonsignale oder ein
Instrumenteneingang
äh direkt weiter
verarbeiten das heißt es wäre möglich
dass man hingeht und sagt okay ich
schließe ein ein Mikrofon oder
ein die Mikrofonierung eines Klaviers
eine Gitarre sonst was an und kann dann
quasi die Töne die dadurch durch mein
Mikrofon und mein Audio Interface
gecapturt werden wieder weiter verwenden
um in superc damit SS zu bespielen genau
oder auch um live dieses
dieses Material das da übers Mikrofon
oder über den Instrumenteneingang
reinkommt
um da dann Effekte drauf zulegen oder
das aufzunehmen und dann und dann
irgendwie weiter zu verarbeiten also das
der die elektroakustische Musik ist auch
noch so ein Einsatzgebiet
äh wo gerade in der zeitgenössischen
Komposition und in
der experimentellen Musik sehr
interessante Sachen damit gemacht werden
m es gab noch noch eine Frage aus dem
Chat sind die Visualisierungen also
Oszi frequenzdiagramm etc eigentlich nur
zur Anzeige so zu Debugging oder kann
man die auch im im Programm weiter
verwenden kann man auch komplexere
Visualisierungen bauen ja
ja also die Antwort ist
ähm ich verwende sie jetzt sehr häufig
einfach zum Debugging aber
äh eins kan die auch durchaus dann z.B
in äh einem Video
Weiterverarbeiten und
die dann auch als künstlerische
äh als künstlerische Elemente
verwenden das heißt supercollider ist
nicht nur für bei einer Performance
eignet sich nicht nur für den Audio Teil
der Performance sondern auch für den
visuellen Anteil
äh Jain ich würde jetzt sagen wenn ich
jetzt äh eine audiovisuelle Performance
machen würde
ähm und ich müsste da jetzt auch noch
das Video machen
dann wä also da das ist nicht
supercolliders Stärke die Stärke von
supercollider liegt definitiv im
Audiobereich und für den visuellen Teil
würde ich dann eine andere
Programmiersprache verwenden die da
stärker ist
ähm wobei das für mich jetzt für mich
persönlich eine sehr theoretische Frage
ist aber supercider arbeitet auch noch
mit anderen Programmiersprachen zusammen
und es gibt also z.B clients in anderen
Programmiersprachen ist super Collider
eigentlich Touring
vollständig
okay das ist jetzt eine schwierige Frage
also ich ich bin keine Progr
Programmiererin
ähm
äh die Frage kann ich tatsächlich nicht
beantworten das ist das ist okay
ähm ich schau mal ob ich noch weitere
Fragen habe die ich übersehen habe
ähm sonsten war es das nämlich glaube
ich viel vielen Dank für für deinen
Vortrag ja danke fürs Zuhören danke
danke für die danke für die Einführung
in super Collider
ja hat uns
gefreut so nach der Pause geht es dann
hier um 18 Uhr weiter mit Trental
Healthcare zu Hause von waruschel davor
noch kurz ein werblog ihr könnt uns
jederzeit auf Mastodon Fragen Wünsche
memes Anmerkungen schicken indem wir den
Hashtag Chance 23 benutzt
wir sind unter Chance 23 im IRC undter
irc.haken.org ebenfalls vertreten und
lesen dort eure Fragen mit wir haben ein
Public heing im Aquarium im jitzi der
Link dazu ist im infobimer zu finden wir
haben ein Youtube und ein Twitch Kanal
jeweils unter dem Namen fire Chance dort
haben wir auch einen Livechat für Fragen
unser hauptstreaming Plattform ist
streaming.media.ccc.de dort findet ihr
auch ein reif um vorhergegangene talks
z.B den gerade eben äh den Talk gerade
eben nachzuschauen noch ein Hinweis für
alle zuschauende auf dem 37 C3 wir sind
auf dem 37 C3 etwas schwierig zu finden
ihr müsst einfach noch mal unter dem CCH
ca 30 km nach unten Graben bis
später