„Sonic Pi“ – Learning to programm with music

Slides:



Advertisements
Ähnliche Präsentationen
Informationen ü ber den Umbau des Schulnetzes Aufgrund der Umstellung unseres Schulnetzes auf ein neues Serversystem wird Ende Juni 2010 der Zugriff auf.
Advertisements

Batch-Programmierung Grundlagen
FORTRAN 77.
EP Media Group SiteKist CMS Version 6.9. ©2014 EP Media Group Internet:
Parallelisierung für Multiprozessor-Maschinen
Einführung in PowerPoint Zum Seminar „Video und Multimedia im Unterricht DaF“ (Theorie und Praxis der Lehr- und Lernmittel) bei Prof. Dr. E. Tschirner.
Webdeployment auf Cluster Seminarvortrag von Lukas Bonzelett.
Funktionsweise eines Funambolservers Natascha Graf Aachen, 01. Februar 2010.
Unterschiedliche Wellenlängen der Spektralfarben sind ein abstrakter Lerninhalt. Unterschiedliche Wellenlängen sind hingegen bei Schallwellen als Tonhöhe.
Funktionen (Zweck und Eigenschaften) Funktionen sind Unterprogramme, die einen bestimmten Zweck erfüllen Sie zerlegen Probleme in kleine, abgeschlossene.
Kfz-Online 1.Innungsversammlung 2013 der Kfz-Innung Berlin 7. Mai 2013.
Projektdesign ►Das Experiment besteht aus drei Teilen, in denen jeweils 10 unterschiedliche norwegische Verben gelernt werden. Bei Aufgabe 0, der Eichung,
► In einem Test werden 10 norwegische Verben gezeigt, wobei bei jedem Verb anstelle einer deutschen Übersetzung ein akustisches Signal oder ein Bild steht:
SolidGenius Produktivitätspaket für OneSpace Designer Modeling.
Projekt ‘L i k a’ ICC, RC Zagreb und RC Gradec beschäftigen sich mit dem Projekt „Lika“ seit 2013 geben älteren Leuten Hilfe in Gopić helfen.
1 freedroidz – spielend Programmieren lernen. 2 Was ist freedroidz?
Linux Seminar Einführung Linux. Gliederung ● Was ist Linux? ● Geschichte ● GNU/GPL ● grundsätzliche Begriffe ● Vorteile ● Nachteile ● Hilfe? ● Unterschiede.
PET-C Computer in einer Pet-Flasche. Unsere Idee.
IT-Struktur an Schulen 1 Administrativer Zugriff von außen mit PuTTY und Xming paedML ® 3 Novell Autor: Uwe Labs Stand: 25. Nov
IT-Struktur an Schulen © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg Richtlinien für Arbeitsstationen Automatisches Herunterfahren.
Brandschutzerziehung/ - Aufklärung
Aufgabe 1.
Verwendung des Datenloggers Dostmann LOG 32 TH
Systemvermessung SAP Basis Release 7.00
Hello World! Javakurs 2013 Arne Kappen
Arbeiten mit dem Terminal
Eine Näherungslösung für das Problem des Handlungsreisenden
Töne, Akkorde und Tonleitern
Ich empfehle Ihnen unser Bewertungssiegel im Businesspaket
Regel 16 Abstoß.
Regel 7 Dauer des Spiels.
Spielen “to play” Was spielst du?.
Magische Wand Ein Spiel zum Thema: Betriebssysteme.
Referenzen In c kennen wir gewöhnliche Variablen und Pointer.
Parametrisierte Prozeduren und Funktionen
Rheinland Cup + ClickBall Rheinland Cup
Die PowerPoint-Arbeitsfläche
Übung: Star Wars - Erbaue eine Galaxie mit Hilfe von Code
Unterschiedliche Kontrollstrukturen
OSX Bedienhilfen Uwe Scheuerer.
5S – Zahlenspiel Dr.-Ing. Ralf Gerke-Cantow
Syntax: while ( BEDINGUNG ) { // Anweisungen die so lange immer wieder ausgeführt // werden, wie die Bedingung zutrifft } for (INITIALISIERUNG; BEDINGUNG;
Kandinsky Music Painter II
Stoppuhr-Karten Stoppuhr-Karten
6. Wiederholungen und Zählschleifen
Tanz-Karten Tanz-Karten
Klavier - Design Pianomotion J.F.Westermann Piano Arts.
Makros von Barbara Reiter.
Arten von Kontrollstrukturen
START-BRAINSTORMING Was wollen wir eigentlich? Ideen sammeln
Herzlich willkommen zum Tutorial:
Einführung in die Programmierung
Schleifen mit der Turtle
1. Die rekursive Datenstruktur Liste 1.3 Rekursive Funktionen
START-BRAINSTORMING Was wollen wir eigentlich? Ideen sammeln
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
«Delegierter» Methoden Schablone Funktionszeiger
9. Vererbung und Polymorphie
Häufige gebrauchte Wörter in Gruppen
Calliope mini
Pflichtteil 2016 Aufgabe 6: Gegeben ist die Gerade
Implementieren von Klassen
Die häufigsten Wörter lt. ISB
iPin Spatial Ruler Pro Kurzanleitung 2018/10/28 ver. D
IBM Software Cincom Systems Erwartete 20-prozentige Verkürzung der Markteinführungszeit mit dem IBM WebSphere Liberty-Profil Die Anforderung: Das für.
Lernmodul Einführung Nutzen Sie diese Powerpoint-Präsentation beim Selbstlernen oder in Veranstaltungen zur Einführung in das jeweilige Thema. Nutzungsbedingungen:
Einführung in die Programmierung
LED-Display Bilderwechsel Projekt INGOLSTADT.
RGB-LED Projekt INGOLSTADT.
Schmock Mutter nicht ausreichend versorgt  fast verhungert Mutter bei Geburt verstorben Schmock mit Flasche aufgezogen.
 Präsentation transkript:

„Sonic Pi“ – Learning to programm with music DI (FH) Mario Wüschner MA MSc

Allgemeines Entwickelt an der University of Cambridge Computer Laboratory Laufend erweitert von Sam Aaron und Sonic Pi Core Team Open Source Projekt Kostenlose Nutzung mit MIT Lizenz Entwickelt für Raspberry Pi (Raspian), Versionen auch für Windows und Mac OS Interessant für Schulen mit Portable USB Variante Sonic Pi, https://sonic-pi.net/ (01.05.2018)

Programmoberfläche Sonic Pi, programminterne Hilfe (01.05.2018)

Erste Befehle Abspielen von Tönen mit play Mehrere plays spielen die Töne gleichzeitg Sleep baut „Pausen“ ein play 60 spielt Ton C in der 4. Oktave (60igster Ton auf dem Klavier) play 61 spielt Ton Cis play 62 spielt Ton D Merke -> Ohne Sleep sind Mehrklänge realisierbar

Akkorde abspielen Kommentare werden nicht abgearbeitet, mit # gesetzt Mehrere Töne auf einmal ergeben Akkorde (Mehrklänge) Aufgrund des fehlenden Sleeps ertönen alle auf einmal

Noten per Namen Noten können auch per Name aufgerufen werden, Beispiel play :C (wäre eigentlich C in der 4. Oktave) Oktave bestimmen Beispiel Oktave 2: play :C2 Halbton höher mit s, Bsp: play :Cs Halbton niedriger mit b, Bsp: play :Cb

Samples Sind voraufgenommene Effekte Benötigen keinen Play-Befehl Aufrufbar mit Keyword sample :name_sample Überlagern sich ohne sleep direkt Bei sleep keine automatische Pause erkennbar, aber geordnete Überlagerung

Synths - Synthesizer Samples sind vorab aufgenommene Sequenzen Syths sind im Live-Betrieb manipulierbare Sounds Aufrufen mit den Keywords use_synth, Beispiel: use_synth :prophet Wichtig - der Synth beeinflusst immer die folgenden Töne Synths ohne play-Kommando wertlos

Optionen Options sind Parameter, die an play oder sample zusätzlich übergeben werden können Beipiele sind die Options pan und amp amp: Amplitude mit Normal-Wert 1 (von 0 bis 1). Achtung: amp 2, 10, 100 auch möglich pan: regelt, ob Stereosound links/rechts/mittig erscheint Play-Befehl – Beistrich – Option- Doppelpunt-Wert play 50, amp: 0.1

Optionen Option release Ausklingzeit Standard ist release 1 Sonic Pi, interne Programmhilfe (7.11.2018)

Samples dehnen Normalzeit: 1 Verlängerung durch Option rate Sample :loop_amen, rate 0.5 Verkürzung durch einen Wert höher als 1 Sample :loop_amen, rate 2 Denkhilfe für 44000 Samples Rate = 1 (44000 Samples/sec) -> 1 Sekunde Abspieldauer Rate = 0.5 (22000/sec) -> 2 Sekunden Abspieldauer Rate = 2 (44000/sec) ->0,5 Sekunden Abspieldauer Samples aus Windows OS

Akkorde und Arpeggios Mehrklänge möglich play chord(:E3, :minor) - 3. Oktave E-Moll chord(:E3, :dim7) – 3. Oktave E-diminished Akkorde mit Einzelton als Arpeggio Sonic Pi, interne Programmhilfe (7.11.2018)

Iterationen Töne wiederholt abspielen lassen Iteration (Schleife = Wiederholung) mit bestimmter Anzahl, z.B. drei mal Schleifen immer mit do … end Verschachtelte Schleifen Achtung: Beginn äußere Schleife, innere Schleife wird immer komplett durchlaufen Dann wieder äußere Schleife

Schleifen Endlosschleifen Keywords loop und do .. end Wiederholung ohne Ende Keywords loop und do .. end Achtung: jede Anweisung nach end würde NIE ausgeführt werden (Problem Endlosschleife)

Funktionen definieren Funktionen fassen mehrere Programmschritte unter einem Namen zusammen Keyword define define :name do ……. End Funktionen mit Übergabeparametern versehen Sonic Pi, interne Programmhilfe (7.11.2018)

Variablen Variablen speichern Werte Vorteil Schnelle Änderung von mehreren Werte möglich

Eigenen Sound aufnehmen Auf Rec drücken Auf Run drücken Neuerlich auf Rec drücken und Dateiname eingeben

Zufallsmelodie Über die Anweisung play rrand(50, 95) Sonic Pi, interne Programmhilfe (7.11.2018)

Zufälliges Cutten von Zufallstönen Optimal ist der Synth-Klang :tb303 cutoff: schneidet Töne zwischen 60 und 120 ab Sonic Pi, interne Programmhilfe (7.11.2018) Auszug integrierte Programmhilfe Sonic Pi

Melodien Korrektes Einsetzen von Tönen und sleeps Mehackit, http://sonic-pi.mehackit.org/exercises/en/01-introduction/02-play-a-melody.html (7.11.2018)

Live Coding basics Wichtig sind das Keyword live_coding samt Variablenname Live_loops sind vereinfachte Threads!! Auch mehrere Live-Codings parallel möglich Wichtig unterschiedliche Variablenname vergeben Mehrere Live-Codings müssen ev. synchronisiert werden

Live Coding Sound abspielen Änderung durchführen im Code Erneut Run aufrufen Sound läuft mit Änderung weiter

Demobeispiel mit live_loops Funktion :my_loop ist die Melodie Live_loops :bass und :hihat sind Rhythmusgeneratoren