Audio: Unterschied zwischen den Versionen

Aus CodicaTipps
Zur Navigation springen Zur Suche springen
 
(47 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 69: 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 ==
 
== Lieder herunterladen ==
Zeile 78: Zeile 82:
  
 
=== 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 ====
 
==== ALSA-SoundSystem ====
 
Der Benutzer, der auf die Soundkarte zugreifen will, muss zumindest beim ALSA-Soundsystem der Gruppe <code>audio</code> angehören:
 
Der Benutzer, der auf die Soundkarte zugreifen will, muss zumindest beim ALSA-Soundsystem der Gruppe <code>audio</code> angehören:
Zeile 88: 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
 +
 
 +
 
  
  
Zeile 94: Zeile 112:
 
   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>.
 
Die Konfiguration von ALSA erfolgt in der systemweiten Datei <code>/etc/asound.conf</code> oder der benutzerspezifischen <code>~/.asoundrc</code>.
Zeile 169: Zeile 190:
  
 
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.
 
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 184: 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>
 
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
 
   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 195: Zeile 334:
 
* Rhythmbox
 
* Rhythmbox
 
* [[VLC]]
 
* [[VLC]]
* [http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2012/01/Digitales-DJ-ing-unter-Linux/(article_body_offset)/2 Mixxx] - eine DJ-Software, mit der man u.a. taktgenaues Überblenden schafft.
+
* [[Mixxx]] - eine DJ-Software, mit der man u.a. taktgenaues Überblenden schafft.
  
 
===== Konsolen-Player =====
 
===== Konsolen-Player =====
Zeile 226: 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 238: 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 266: 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 ==
 +
 +
=== MIDI im Browser ===
  
 
Auch mit einigen Browsern kann man auf MIDI-Devices (oder deren Emulationen) zugreifen.
 
Auch mit einigen Browsern kann man auf MIDI-Devices (oder deren Emulationen) zugreifen.
Zeile 273: Zeile 490:
 
Siehe
 
Siehe
 
* [https://www.toptal.com/web/creating-browser-based-audio-applications-controlled-by-midi-hardware Tutorial zur Web MIDI API]
 
* [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 ==

Aktuelle Version vom 27. November 2022, 16:40 Uhr

Audio-Hardware

Hifi-Tests

Bezugsquellen

Verstärker

DigitalRadio

HeimKinoAnlagen

5.1-Verstärker und Lautsprecher


5.1-Receiver

5.1-Lautsprecher

  • Canton Movie 85-CX weiss Highgloss
    • 165 mm Subwoofer


  • Magnat Interior 501 A
    • hat 170mm-Subwoofer-Bass
    • 180 €



Audioformate

Siehe Überblick zu verlustfreien Audioformaten

Daneben gibt es Formate zum Erfassen von Noten/Steuerungsbefehlen etc.:

Lieder herunterladen

Songs auch kaufen statt nur streamen kann man z.B. bei

Linux und Audio

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 linuxaudio.org

ALSA-SoundSystem

Der Benutzer, der auf die Soundkarte zugreifen will, muss zumindest beim ALSA-Soundsystem der Gruppe audio angehören:

 sudo adduser USER audio

Das Kommandozeilenprogramm

 speaker-test

lässt die Funktion der Lautsprecher und der Soundkarte akustisch testen.

Mit

 aplay -L

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, hilft evtl. ein Kernel-Parameter:

 radeon.audio=1

Manchmal hilft die Initialisierung mit

 sudo alsactl init

und ein anschließender Neustart.[1]

Die Konfiguration von ALSA erfolgt in der systemweiten Datei /etc/asound.conf oder der benutzerspezifischen ~/.asoundrc.

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.[2]

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 /etc/asound.conf auch gleichzeitig Ton von mpd und Kodi über HDMI ausgeben:


#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

Ich vermute, dass das eine plug-Ebene zuviel ist, aber es funktioniert.

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

 pactl info

Die Ausgabemöglichkeiten (Sinks) liefert

 pactl list sinks

Mit

 pactl set-default-sink X

(wobei X für die Nummer des Sinks steht) kann die Standardausgabe geändert werden.


Das grafische System zur Einrichtung von PulseAudio nennt sich

 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[3] in der /etc/mpd.conf den PulseAudio-Server nicht über localhost, sondern über 127.0.0.1 ansprechen.

Wenn man keine Verbindung zu PulseAudio bekommt ("Verbindung verweigert"-Meldung bei pactl oder pavucontrol), hilft folgender Befehl zum Löschen alter Informationen:[4]

 pax11publish -r

Möglicherweise hilft es auch, den User den Gruppen pulse und pulse-access 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 /etc/pulse/default.pa:

 load-module module-alsa-sink device=hw:0

Dabei muss "hw:0" durch das gewünschte ALSA-Gerät (mit aplay -L 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 /etc/pulse/client.conf der Wert autospawn auf no 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 /etc/pulse/default.pa geändert werden (wenn nicht das GUI-Programm paprefs genutzt wird). Folgende Zeilen sind hinzuzufügen:[5]

 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 /etc/pulse/system.pa gleichermaßen geändert werden.

Damit die Clients den Server finden, muss in deren /etc/pulse/default.pa 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 /etc/pulse/client.conf Folgendes eingefügt werden:

 autospawn = yes
 default-server = 127.0.0.1


Eine wohl sicherere Alternative ist die Einrichtung von Unix-Sockets für PulseAudio.

Pulseaudio immer wach

Um zu verhindern, dass PulseAudio manche Sounds schlafen legt, hilft evtl. in /etc/pulse/default.pa 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

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 vorbis-tools installieren)
 parec  --monitor-stream=$INDEX | oggenc -b 192 -o aufnahme.ogg --raw -


Siehe

Siehe zu weiteren Mitschnittmöglichkeiten (z.B. krecord, gramofile)

Soundqualität

Mit einigen Einstellungen kann man die Soundqualität unter Linux erhöhen.

Auch scheint Dolby Atmos unter Linux zu funktionieren.

Siehe auch

Pulseaudio-Infos

Siehe

Music Player

Stand-alone-Player

GUI-Player
  • Amarok für KDE
  • Banshee
  • Rhythmbox
  • VLC
  • Mixxx - eine DJ-Software, mit der man u.a. taktgenaues Überblenden schafft.
Konsolen-Player
  • mplayer
  • vlc

Client-Server-Modell

MPD

Siehe MPD - den Music Player Daemon mit einer Vielzahl unterstützter Clients


DLNA

Siehe DLNA

DAAP

DAAP ist das von iTunes genutzte Protokoll.

DAAP-Server
  • daapd (nicht mehr in Debian-Paketen)
  • mt-daapd
  • forked-daapd
DAAP-Clients
AirPlay

Für Linux gibt es als AirPlay-Client

Streaming-Anbieter

Spotify

Siehe Spotify

Audio-CDs

  • Audio-CDs einlesen und konvertieren geht mit einem Ripper genannten Programm, z.B.

Podcasts

Das Herunterladen von Podcast lässt sich mit verschiedenen Podcatcher-Programmen verwirklichen.

Für die Kommandozeile bietet sich podget an.

Musiksammlung

CD rippen

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.

Taggen auf der Kommandozeile

Im Paket python-mutagen ist das Tool mid3v2 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

Die Musiksammlung lässt sich auf verschiedenste Arten organisieren. Auf der Kommandozeile hilft tagmp3 u.a. Z.B. beim Verschieben in eine Struktur Musikverzeichnis/Künstler/LiedNr-Liedtitel:

 find "$importDir" -name "*.mp3" | (
   while read musicFile; 
   do 
     if ! ((echo y; echo y;) | tagmp3 move "${destDir}/%A/%a/%t.mp3" "$musicFile"; )
     then
       echo Error moving $musicFile to $destDir!!!
       exit 2;
     fi;  
   done;
 )


Ein graphisches Werkzeug, unter Linux die Musiksammlung zu organisieren, ist easytag.

Will man mit Java seine eigene Sammlung strukturieren hilft die JAudioTagger-API.

  • Ein fertiges Produkt auf dieser Basis ist 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 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 mp3DirectCut.

Es geht möglicherweise auch mit sox:

Trimmen mit ffmpeg

Es geht auch mit ffmpeg. Siehe das Beispiel in https://forum.manjaro.org/t/trim-silence-in-audio-files-by-directory/18988 . Der dazu benötigte Filter ist 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

Komponieren

Mit NtEd kann man Partituren erstellen. Es stürzt aber ab und zu ab (Stand: 05/2020).

Auch mit MuseScore kann man Partituren erstellen und auch abspielen lassen.

Lilypond ist ein Werkzeug, um .ly-Textnotendateien in schönen Notensatz umzusetzen.

  • Dafür gibt es den (Text-)Editor Frescobaldi.
  • Denemo verwendet dagegen Lilypond nur im Hintergrund und lässt sich graphisch bedienen.
  • Online kann man Lilypond auf http://lilybin.com/ editieren.

Siehe auch

MIDI

MIDI im Browser

Auch mit einigen Browsern kann man auf MIDI-Devices (oder deren Emulationen) zugreifen.

Siehe

  • Tutorial zur Web MIDI API
  • Debian-package timidity - erlaubt das Abspielen von MIDI-Dateien. Dazu sollte man einen Soundfont installieren.

Demos siehe

MIDI unter Linux

http://tedfelix.com/linux/linux-midi.html

Weiterführendes

Siehe auch