Zeile 13: |
Zeile 13: |
| * [http://www.stereo.de/index.php?id=133 Verstärker NAD C315 BEE] 350 € | | * [http://www.stereo.de/index.php?id=133 Verstärker NAD C315 BEE] 350 € |
| * [http://www.amazon.de/dp/B000OS3DES/?smid=A32200K20QA0AM&tag=mainseek-new-21&linkCode=asn&creative=6742&camp=1638&creativeASIN=B000OS3DES Digitaler Vollverstärker Onkyo A 9355] 360 € | | * [http://www.amazon.de/dp/B000OS3DES/?smid=A32200K20QA0AM&tag=mainseek-new-21&linkCode=asn&creative=6742&camp=1638&creativeASIN=B000OS3DES Digitaler Vollverstärker Onkyo A 9355] 360 € |
| + | |
| + | === DigitalRadio === |
| + | * TechniSat [[DIGITRADIO 580]] |
| | | |
| === HeimKinoAnlagen === | | === HeimKinoAnlagen === |
Zeile 66: |
Zeile 69: |
| | | |
| Siehe [http://www.mpex.net/info/verlustfrei.html Überblick zu verlustfreien Audioformaten] | | Siehe [http://www.mpex.net/info/verlustfrei.html Überblick zu verlustfreien Audioformaten] |
| + | |
| + | Daneben gibt es Formate zum Erfassen von Noten/Steuerungsbefehlen etc.: |
| + | * [[MIDI]] |
| + | * [https://www.musicxml.com/software/ MusicXML] |
| + | |
| + | == Lieder herunterladen == |
| + | Songs auch kaufen statt nur streamen kann man z.B. bei |
| + | * [https://juke.com/de/de juke.com] (u.a. von Saturn/Mediamarkt) |
| + | * [https://www.musicload.de/web/home musicload.de] (von der Telekom) |
| | | |
| == Linux und Audio == | | == Linux und Audio == |
| | | |
| === Soundkarte === | | === Soundkarte === |
| + | |
| + | ==== Von Linux unterstützte Soundkarten ==== |
| + | |
| + | Üblicherweise funktionieren die üblichen USB-Sound-Sticks gut mit Linux. |
| + | |
| + | Trotzdem sollte man vor dem Kauf googeln, ob es wirklich Linux-Support gibt. |
| + | |
| + | Für höherwertige Soundkarten siehe bei [https://wiki.linuxaudio.org/wiki/hardware_support linuxaudio.org] |
| + | |
| + | ==== ALSA-SoundSystem ==== |
| + | Der Benutzer, der auf die Soundkarte zugreifen will, muss zumindest beim ALSA-Soundsystem der Gruppe <code>audio</code> angehören: |
| + | sudo adduser USER audio |
| | | |
| Das Kommandozeilenprogramm | | Das Kommandozeilenprogramm |
Zeile 77: |
Zeile 101: |
| Mit | | Mit |
| aplay -L | | aplay -L |
− | lassen sich die installierten Soundkarten ausgeben. | + | lassen sich die installierten (virtuellen) Soundkarten ausgeben. |
| + | |
| + | Um alle Soundgeräte nacheinander zu testen, kann man Folgendes eingeben: |
| + | aplay -L | grep -e '^[^ ]' | xargs -n1 speaker-test -tw --nloops 1 -c2 -D |
| + | |
| + | |
| | | |
| | | |
| Falls die Soundkarte keinen Sound über [[HDMI]] abgibt, [[Ubuntu#Audio|hilft evtl. ein Kernel-Parameter]]: | | Falls die Soundkarte keinen Sound über [[HDMI]] abgibt, [[Ubuntu#Audio|hilft evtl. ein Kernel-Parameter]]: |
| radeon.audio=1 | | radeon.audio=1 |
| + | |
| + | Manchmal hilft die Initialisierung mit |
| + | sudo alsactl init |
| + | und ein anschließender Neustart.<ref>Vgl. https://wiki.debian.org/ALSA </ref> |
| + | |
| + | Die Konfiguration von ALSA erfolgt in der systemweiten Datei <code>/etc/asound.conf</code> oder der benutzerspezifischen <code>~/.asoundrc</code>. |
| + | |
| + | Wenn man eigene Geräte in diesen Dateien anlegen will, braucht man regelmäßig eine pcm- und eine ctl-Komponente. Erstere ist für den eigentlichen Audiostrom, letztere für die Kontrolle insbesondere der Lautstärke notwendig.<ref>Vgl. https://superuser.com/questions/357278/how-to-configure-alsa</ref> |
| + | |
| + | ===== Beispiel für asound.conf ===== |
| + | Auf einem [[NUC6i3SYH]], das als [[HTPC]] betrieben wird und auf dem dafür [[MPD]] und [[Kodi]] läuft, kann man - nach Deinstallation von [[Pulseaudio]] - mit folgender Konfiguration für ALSA in der <code>/etc/asound.conf</code> auch gleichzeitig Ton von mpd und Kodi über [[HDMI]] ausgeben: |
| + | |
| + | <pre> |
| + | |
| + | #Thx |
| + | # https://superuser.com/questions/357278/how-to-configure-alsa |
| + | # http://www.pro-linux.de/artikel/2/1462/alsa-konfigurieren.html |
| + | # https://bbs.archlinux.de/viewtopic.php?id=21586&p=2 |
| + | |
| + | pcm.pch_hdmi { |
| + | type hw |
| + | card 0 |
| + | device 3 |
| + | } |
| + | |
| + | ctl.pch_hdmi { |
| + | type hw |
| + | card 0 |
| + | device 3 |
| + | } |
| + | |
| + | |
| + | pcm.dmixer { |
| + | type dmix |
| + | ipc_key 1099 |
| + | ipc_perm 0666 # important |
| + | slave.pcm "pch_hdmi" |
| + | slave { |
| + | channels 2 # I am not sure, if this is required. |
| + | } |
| + | hint { |
| + | show on |
| + | description "My dmix on Nuckie" |
| + | } |
| + | } |
| + | |
| + | pcm.plugdmixer { |
| + | type plug |
| + | slave.pcm "dmixer" |
| + | hint { |
| + | show on |
| + | description "nested plug and dmix on Nuckie" |
| + | } |
| + | } |
| + | |
| + | ctl.plugdmixer { |
| + | type hw |
| + | card 0 |
| + | device 3 |
| + | } |
| + | |
| + | |
| + | pcm.!default { |
| + | type plug |
| + | slave.pcm "plugdmixer" |
| + | hint { |
| + | show on |
| + | description "my default based on nested plug and dmix on Nuckie" |
| + | } |
| + | } |
| + | |
| + | ctl.!default ctl.plugmixer |
| + | </pre> |
| + | |
| + | Ich vermute, dass das eine <code>plug</code>-Ebene zuviel ist, aber es funktioniert. |
| | | |
| ==== Pulseaudio ==== | | ==== Pulseaudio ==== |
| + | |
| + | Pulseaudio ist ein SoundServer, der regelmäßig auf ALSA aufsetzt. Er wird nicht zwingend benötigt, wenn der in ALSA enthaltene Soundserver "dmix" ausreicht. Ein Soundserver dient v.a. dazu, dass auf einem Ausgabegerät gleichzeitig zwei Soundquellen abgespielt werden können. |
| + | |
| + | |
| | | |
| Grundlegende Informationen über Pulseaudio liefert | | Grundlegende Informationen über Pulseaudio liefert |
Zeile 99: |
Zeile 207: |
| Das grafische System zur Einrichtung von [[PulseAudio]] nennt sich | | Das grafische System zur Einrichtung von [[PulseAudio]] nennt sich |
| pavucontrol | | pavucontrol |
| + | |
| + | Außerdem kann man mit |
| + | paprefs |
| + | PulseAudio so einstellen, dass vom Netzwerk auf den Pulseaudio-Server zugegriffen werden kann. Um von einem lokalen [[MPD]] darauf zugreifen zu können, muss man angeblich<ref>Siehe https://unix.stackexchange.com/questions/287678/pulseaudio-and-mpd</ref> in der <code>/etc/mpd.conf</code> den PulseAudio-Server nicht über <code>localhost</code>, sondern über <code>127.0.0.1</code> ansprechen. |
| + | |
| + | Wenn man keine Verbindung zu PulseAudio bekommt ("Verbindung verweigert"-Meldung bei pactl oder pavucontrol), hilft folgender Befehl zum Löschen alter Informationen:<ref>Vgl. https://forum.ubuntuusers.de/topic/probleme-mit-pulseaudio-2/</ref> |
| + | pax11publish -r |
| + | |
| + | Möglicherweise hilft es auch, den User den Gruppen <code>pulse</code> und <code>pulse-access</code> hinzuzufügen: |
| + | sudo adduser USER pulse |
| + | sudo adduser USER pulse-access |
| + | |
| + | |
| + | ===== Pulseaudio findet ALSA-Geräte nicht ===== |
| + | |
| + | Wenn ALSA die Soundgeräte findet, Pulseaudio aber nicht, hilft eine Änderung von <code>/etc/pulse/default.pa</code>: |
| + | |
| + | load-module module-alsa-sink device=hw:0 |
| + | |
| + | Dabei muss "hw:0" durch das gewünschte ALSA-Gerät (mit <code>aplay -L</code> anzuzeigen) ersetzt werden. Die Zeile kann auch wiederholt werden, um mehrere ALSA-Geräte in Pulseaudio aufzunehmen. |
| + | |
| + | |
| + | ===== Pulseaudio nicht automatisch starten ===== |
| + | |
| + | Normalerweise wird pulseaudio automatisch gestartet, wenn ein Programm darauf zugreifen will. Das lässt sich vermeiden, indem in der Datei <code>/etc/pulse/client.conf</code> der Wert <code>autospawn</code> auf <code>no</code> gesetzt wird. |
| + | |
| + | ===== Pulseaudio als Pulseaudio-Server im Heimnetz nutzen ===== |
| + | |
| + | Man sollte [[Avahi]], [[PulseAudio]] einschließlich des Pakets pulseaudio-module-zeroconf installiert haben. |
| + | |
| + | Bei normaler Verwendung muss die Datei <code>/etc/pulse/default.pa</code> geändert werden (wenn nicht das GUI-Programm <code>paprefs</code> genutzt wird). Folgende Zeilen sind hinzuzufügen:<ref>Vgl. https://www.raspberrypi.org/forums/viewtopic.php?t=11124 </ref> |
| + | |
| + | load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/16 auth-anonymous=1 |
| + | load-module module-zeroconf-publish |
| + | |
| + | Damit ist allerdings ein Sicherheitsrisiko verbunden, da alle Clients im Heimnetz ohne Authentifizierung darauf zugreifen können. |
| + | Bei Verwendung von PulseAudio als Systemdienst muss die Datei <code>/etc/pulse/system.pa</code> gleichermaßen geändert werden. |
| + | |
| + | Damit die Clients den Server finden, muss in deren <code>/etc/pulse/default.pa</code> ergänzt werden: |
| + | load-module module-zeroconf-discover |
| + | |
| + | ===== Pulseaudio auf einem Rechner von verschiedenen Usern gemeinsam nutzen ===== |
| + | |
| + | Pulseaudio kann normalerweise nur von dem User genutzt werden, unter dessen Kennung der Pulseaudio-Server läuft. Ein Workaround ist das Aktivieren des Pulseaudio-Servers für das Netzwerk wie oben beschrieben. Man kann hier die erlaubten Zugriffe natürlich auf den eigenen Rechner (127.0.0.1) beschränken. |
| + | |
| + | Damit die Clients auch über das Netzwerkprotokoll den Pulseaudio-Server ansprechen können, muss noch in der Datei <code>/etc/pulse/client.conf</code> Folgendes eingefügt werden: |
| + | autospawn = yes |
| + | default-server = 127.0.0.1 |
| + | |
| + | |
| + | Eine wohl sicherere Alternative ist die [https://wiki.archlinux.org/index.php/PulseAudio/Examples#Allowing_multiple_users_to_use_PulseAudio_at_the_same_time Einrichtung von Unix-Sockets für PulseAudio]. |
| + | |
| + | ===== Pulseaudio immer wach ===== |
| + | |
| + | Um zu verhindern, dass PulseAudio manche Sounds schlafen legt, hilft evtl. in <code>/etc/pulse/default.pa</code> die Zeile |
| + | load-module module-suspend-on-idle |
| + | auszukommentieren (eine Raute # davor zu setzen). |
| + | |
| + | Da Pulseaudio kein HDMI-Audio erzeugen kann, wenn kein HDMI-Video-Signal ausgegeben wird, muss der Bildschirm per Hand eingeschaltet werden, z.B. mit |
| + | |
| + | DISPLAY=:0 xset dpms force on |
| + | |
| + | Siehe auch |
| + | * https://www.elektronik-kompendium.de/sites/raspberry-pi/2107011.htm |
| + | |
| + | ===== Ausgaben von Pulseaudio verschieben ===== |
| + | |
| + | Die Ausgabemöglichkeiten kann mittels |
| + | pactl list sinks |
| + | angezeigt werden. |
| + | |
| + | Die derzeitigen Pulseaudio-Clients sieht man mittels |
| + | pactl list clients |
| + | |
| + | Welche Clients welche Ausgabemöglichkeiten nutzen, zeigt |
| + | pactl list sink-inputs |
| + | oder kürzer |
| + | pactl list short sink-inputs |
| + | |
| + | Einen Client kann man damit auf eine andere Ausgabemöglichkeit verschieben: |
| + | pactl move-sink-input $CLIENT_NR $SINK_NR_OR_NAME |
| + | |
| + | ===== Ausgaben in Datei mitschneiden ===== |
| + | |
| + | Möchte man die Audio-Ausgabe in einer WAV-/MP3-/OGG_Datei sichern, geht das mit Bordmitteln von Pulseaudio. |
| + | |
| + | Zunächst mit |
| + | pacmd list-sink-inputs |
| + | |
| + | den zutreffenden "Sink" ermitteln. (Nummer hinter "index:") |
| + | |
| + | * WAV-Datei |
| + | parec --monitor-stream=$INDEX --file-format=wav aufnahme.wav |
| + | |
| + | * OGG-Datei (Bitte Paket <code>vorbis-tools</code> installieren) |
| + | parec --monitor-stream=$INDEX | oggenc -b 192 -o aufnahme.ogg --raw - |
| + | |
| + | |
| + | |
| + | Siehe |
| + | * https://blog.tausys.de/2016/12/21/pulseaudio-audio-stream-von-programmen-aufnehmen/ |
| + | |
| + | Siehe zu weiteren Mitschnittmöglichkeiten (z.B. krecord, gramofile) |
| + | * https://www.linux-community.de/ausgaben/linuxuser/2003/11/audio-aufnahme-mit-linux-tools/ |
| + | |
| + | ===== Soundqualität ===== |
| + | |
| + | Mit einigen Einstellungen kann man die [https://medium.com/@gamunu/enable-high-quality-audio-on-linux-6f16f3fe7e1f Soundqualität unter Linux erhöhen]. |
| + | |
| + | Auch scheint [https://stackoverflow.com/questions/27122564/which-version-of-linux-has-support-for-dolby-advanced-audio-v2 Dolby Atmos unter Linux] zu funktionieren. |
| + | |
| + | Siehe auch |
| + | * https://swaroop-m.medium.com/beginners-guide-for-better-audio-quality-in-linux-d41de6f35a14 |
| + | * https://www.reddit.com/r/linux/comments/coi4dt/a_complete_guide_of_and_debunking_of_audio_on/ |
| + | * https://pacesettergraam.wordpress.com/2016/10/03/1611/ |
| + | |
| + | ===== Pulseaudio-Infos ===== |
| + | Siehe |
| + | * https://rudd-o.com/linux-and-free-software/how-to-make-pulseaudio-run-once-at-boot-for-all-your-users |
| | | |
| === Music Player === | | === Music Player === |
Zeile 107: |
Zeile 334: |
| * Rhythmbox | | * Rhythmbox |
| * [[VLC]] | | * [[VLC]] |
| + | * [[Mixxx]] - eine DJ-Software, mit der man u.a. taktgenaues Überblenden schafft. |
| | | |
| ===== Konsolen-Player ===== | | ===== Konsolen-Player ===== |
Zeile 115: |
Zeile 343: |
| ===== MPD ===== | | ===== MPD ===== |
| Siehe [[MPD]] - den Music Player Daemon mit einer Vielzahl unterstützter Clients | | Siehe [[MPD]] - den Music Player Daemon mit einer Vielzahl unterstützter Clients |
− | ===== DLNA =====
| |
− | ====== DLNA-Server ======
| |
− | * Server: [http://www.panticz.de/Install-MiniDLNA MiniDLNA auf Debian Squeeze] bzw. nun [http://minidlna.sourceforge.net/ ReadyMedia], ein kleiner DLNA-Media-Server
| |
− | * Server: mediatomb (nur UPnP)
| |
| | | |
− | ====== DLNA-Player ======
| |
− | * [http://superuser.com/questions/191736/how-do-i-connect-vlc-to-a-known-dlna-server VLC als DLNA-Client]
| |
− | * Client: [http://bernaerts.dyndns.org/linux/240-ubuntu-precise-upnp-dlna-client Rhythmbox auf Ubuntu 12.04]
| |
− | * UPnP-Client: [http://askubuntu.com/questions/88754/upnp-dlna-client-player-recommendations eezUPnP], eine [[Java]]-App, die auch als Steuerungseinheit arbeiten kann
| |
| | | |
− | * Für [[Android]] gibt es z.B. MediaHouse, das als Player und als Steuerungseinheit taugt.
| + | ===== DLNA ===== |
| + | Siehe [[DLNA]] |
| | | |
| ===== DAAP ===== | | ===== DAAP ===== |
Zeile 144: |
Zeile 365: |
| * [http://www.geekbone.de/geekbone-blog/?p=969 shareplay] (AirPlay-Renderer), | | * [http://www.geekbone.de/geekbone-blog/?p=969 shareplay] (AirPlay-Renderer), |
| * [http://binarysurfer.blogspot.de/2011/03/enable-airplay-in-ubuntu.html Totem Plugin]. | | * [http://binarysurfer.blogspot.de/2011/03/enable-airplay-in-ubuntu.html Totem Plugin]. |
| + | |
| + | ==== Streaming-Anbieter ==== |
| + | |
| + | ===== Spotify ===== |
| + | Siehe [[Spotify]] |
| | | |
| === Audio-CDs === | | === Audio-CDs === |
Zeile 156: |
Zeile 382: |
| | | |
| === Musiksammlung === | | === Musiksammlung === |
| + | |
| + | |
| + | ==== CD rippen ==== |
| + | |
| + | * ripperX |
| + | ** https://wiki.ubuntuusers.de/ripperX/ |
| + | ** Mir bekannte Tags für die Dateibenennung:<ref>Vgl. https://sourceforge.net/p/ripperx/bugs/41/</ref> |
| + | *** %# - Songnummer |
| + | *** %s - Songtitel |
| + | *** %a - Künstler |
| | | |
| ==== Musik taggen ==== | | ==== Musik taggen ==== |
| | | |
| + | ===== graphische Tools zum Musik taggen ===== |
| Die MusicBrainz-Datenbank ermöglicht das Analysieren von Musikdateien und deren Klassifikation. Das Tagging kann z.B. mittels des Tools "picard" durchgeführt werden. Aber auch [[AmaroK]] beherrscht das Updaten der Tags mittels MusicBrainz. | | Die MusicBrainz-Datenbank ermöglicht das Analysieren von Musikdateien und deren Klassifikation. Das Tagging kann z.B. mittels des Tools "picard" durchgeführt werden. Aber auch [[AmaroK]] beherrscht das Updaten der Tags mittels MusicBrainz. |
| + | |
| + | ===== Taggen auf der Kommandozeile ===== |
| + | |
| + | Im Paket <code>python-mutagen</code> ist das Tool <code>mid3v2</code> enthalten. Dies kann z.B. benutzt werden, um einem MP3-File die notwendigen Meta-Informationen wie Künstler und Titel hinzuzufügen: |
| + | |
| + | mid3v2 --artist 'Künstler' --album 'Album' --genre 'Genre' --song 'Liedtitel' music.mp3 |
| + | |
| + | Die möglichen Genres kann man sich mit |
| + | mid3v2 --list-genres |
| + | ausgeben lassen. |
| + | |
| | | |
| ==== Dateistruktur anhand ID3-Tags ==== | | ==== Dateistruktur anhand ID3-Tags ==== |
Zeile 184: |
Zeile 432: |
| | | |
| * Ein fertiges Produkt auf dieser Basis ist [http://sourceforge.net/projects/filerename/ filerename]. | | * Ein fertiges Produkt auf dieser Basis ist [http://sourceforge.net/projects/filerename/ filerename]. |
| + | |
| + | === Soundbearbeitung === |
| + | |
| + | Das Standard-Sound-Bearbeitungsprogramm ist [[Audacity]]. |
| + | |
| + | === Stille am Anfang und Ende abschneiden === |
| + | |
| + | Beim Rippen einer LP o.Ä. entsteht manchmal Stille am Anfang und Ende des Stücks, die auch automatisch entfernt werden kann. |
| + | |
| + | Z.B. mit dem [https://wiki.audacityteam.org/wiki/Nyquist_Effect_Plug-ins#Trim_Silence Plugin Trim Silence] für [[Audacity]]. |
| + | Es kann wohl auch für Batchbearbeitung genutzt werden. |
| + | |
| + | mp3splt könnte ebenfalls helfen. Dazu braucht man aber eine [[CUE]]-Datei um die Schnittpunkte festzulegen. |
| + | |
| + | Möglicherweise hilft auch [https://mpesch3.de/index.html mp3DirectCut]. |
| + | |
| + | Es geht möglicherweise auch mit sox: |
| + | * https://unix.stackexchange.com/questions/124734/how-to-remove-silence-part-from-mp3-that-is-extracted-from-tv-drama |
| + | * https://digitalcardboard.com/blog/2009/08/25/the-sox-of-silence/ |
| + | |
| + | ==== Trimmen mit ffmpeg ==== |
| + | Es geht auch mit [https://ffmpeg.org/ffmpeg-filters.html#silenceremove ffmpeg]. Siehe das Beispiel in |
| + | https://forum.manjaro.org/t/trim-silence-in-audio-files-by-directory/18988 . Der dazu benötigte Filter ist [https://ffmpeg.org/ffmpeg-filters.html#silenceremove silenceremove]. |
| + | |
| + | Beispiel, um aus einer WAV-Datei eine MP3-Datei zu machen, in der die Stille am Anfang und Ende nicht enthalten ist: |
| + | ffmpeg -i tmp/aufnahme.wav -af silenceremove=start_periods=1:stop_periods=1:detection=peak "tmp/OUTPUT.mp3" |
| + | |
| + | Siehe auch |
| + | * https://stackoverflow.com/questions/25697596/using-ffmpeg-with-silencedetect-to-remove-audio-silence |
| + | |
| + | === Komponieren === |
| + | |
| + | Mit [https://wiki.ubuntuusers.de/NtEd/ NtEd] kann man Partituren erstellen. Es stürzt aber ab und zu ab (Stand: 05/2020). |
| + | |
| + | Auch mit [https://wiki.ubuntuusers.de/MuseScore/ MuseScore] kann man Partituren erstellen und auch abspielen lassen. |
| + | |
| + | [http://lilypond.org/easier-editing.de.html Lilypond] ist ein Werkzeug, um .ly-Textnotendateien in schönen Notensatz umzusetzen. |
| + | * Dafür gibt es den (Text-)Editor [https://frescobaldi.org/ Frescobaldi]. |
| + | * [https://wiki.ubuntuusers.de/Denemo/ Denemo] verwendet dagegen Lilypond nur im Hintergrund und lässt sich graphisch bedienen. |
| + | * Online kann man Lilypond auf http://lilybin.com/ editieren. |
| + | |
| + | Siehe auch |
| + | * [https://de.wikipedia.org/wiki/ABC_(Musiknotation) abc-Musiknotation] |
| + | ** https://wiki.linuxaudio.org/wiki/abcmiditutorial |
| + | ** [https://github.com/paulrosen/abcjs ABC-Javascript-Library abcjs] |
| + | ** Debian-Package abcmidi mit <code>abc2midi</code> |
| + | ** Debian-Package abcm2ps |
| + | ** http://kurs.schacherl.info/ABC-Musiknotation/abc_syntax/abc_syntax.html |
| + | * https://wiki.ubuntuusers.de/Rosegarden/ |
| + | |
| + | == MIDI == |
| + | |
| + | === MIDI im Browser === |
| + | |
| + | Auch mit einigen Browsern kann man auf MIDI-Devices (oder deren Emulationen) zugreifen. |
| + | |
| + | Siehe |
| + | * [https://www.toptal.com/web/creating-browser-based-audio-applications-controlled-by-midi-hardware Tutorial zur Web MIDI API] |
| + | * Debian-package timidity - erlaubt das Abspielen von MIDI-Dateien. Dazu sollte man einen Soundfont installieren. |
| + | |
| + | Demos siehe |
| + | * [http://webaudiodemos.appspot.com/MIDIDrums/index.html Drum Machine] - Open Source |
| + | * https://webaudiodemos.appspot.com/slides/webmidi.html#/ |
| + | * https://www.audiotool.com/product/device/heisenberg/ |
| + | * http://nicroto.github.io/viktor/ |
| + | |
| + | === MIDI unter Linux === |
| + | http://tedfelix.com/linux/linux-midi.html |
| | | |
| == Weiterführendes == | | == Weiterführendes == |