ubuntuusers.de

MPD Sound Output (Python Monitoring)

Status: Ungelöst | Ubuntu-Version: Ubuntu 14.04 (Trusty Tahr)
Antworten |

Kryptur

Avatar von Kryptur

Anmeldungsdatum:
16. Dezember 2013

Beiträge: Zähle...

Hallo zusammen, das Problem, das ich habe, betrifft nicht unbedingt Ubuntu (das Problem tritt in erster Linie bei einem Raspberry Pi auf). Vorweg: Ich habe einen Raspberry Pi mit Raspbian Wheezy, welchen ich neben Datensicherung (btsynch) noch für Multimediazwecke nutze: Hierzu sind MPD und Shairport installiert, welche beide über den internen analogen Audioausgang laufen - bis hierher kein Problem.

Ich habe nun für die "Analyse" des Tonsignals folgendes Skript auf den Raspberry Pi kopiert und vorher unter Ubuntu getestet: http://freshfoo.com/blog/pulseaudio_monitoring

Der Peak wird generell auch sowohl unter Ubuntu (normale Musikwiedergabe über guayadeque) als auch am Raspberry Pi (aplay) erkannt und dargestellt. Doch weder MPD noch Shairport funktionieren hierbei, beide werden ignoriert. Da es sich also nicht um ein spezielles Problem mit einer Software handelt, hoffe ich, dass ich in diesem Forum richtig bin.

Hier ein paar Konsolenausgaben:

1
2
3
4
pi@raspberrypi ~ $ sudo fuser -v /dev/snd/*
                     BEN.        PID ZUGR.  BEFEHL
/dev/snd/controlC0:  root       2613 F.... mpd
/dev/snd/pcmC0D0p:   root       2613 F.... mpd
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
pi@raspberrypi ~ $ aplay -l
**** Liste der Hardware-Geräte (PLAYBACK) ****
Karte 0: ALSA [bcm2835 ALSA], Gerät 0: bcm2835 ALSA [bcm2835 ALSA]
  Sub-Geräte: 7/8
  Sub-Gerät #0: subdevice #0
  Sub-Gerät #1: subdevice #1
  Sub-Gerät #2: subdevice #2
  Sub-Gerät #3: subdevice #3
  Sub-Gerät #4: subdevice #4
  Sub-Gerät #5: subdevice #5
  Sub-Gerät #6: subdevice #6
  Sub-Gerät #7: subdevice #7

Die Ausgabe des Python Skripts:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
pi@raspberrypi ~ $ python python/peak.py 
Pulseaudio connection ready...
------------------------------------------------------------
index: 0
name: alsa_output.platform-bcm2835_AUD0.0.analog-stereo
description: bcm2835 ALSA Analog Stereo

setting up peak recording using alsa_output.platform-bcm2835_AUD0.0.analog-stereo.monitor

0

(Bei aplay example.wav wird ein Ausschlag registriert, bei laufender Musik via MPD nicht)

Und die Konfiguration des Output Devices bei MPD (Shairport ist erstmal zweitrangig):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
audio_output {
        type            "alsa"
        name            "Intern"
        device          "hw:0,0"        # optional
        format          "44100:16:2"    # optional
#       mixer_device    "default"       # optional
#       mixer_control   "PCM"           # optional
#       mixer_index     "0"             # optional
}

mixer_type      "software"

Wenn ich hier die drei auskommentierten Zeilen aktiviere, ändert sich auch nichts.

Geht es darum, dass ich den richtigen Mixer einstelle oder wie bekomme ich es hin, dass das Python Skript auch die MPD Ausgabe auffängt?

Viele Grüße!

pepre Team-Icon

Supporter
Avatar von pepre

Anmeldungsdatum:
31. Oktober 2005

Beiträge: 6474

Wohnort: Erlangen

Wenn du

device          "hw:0,0"

einstellst, dann landen die Daten direkt an der HW der Soundkarte. Evtl greift das Script seine Daten ja aber vorher ab (beim Soundserver von ALSA). default als Device wäre von daher mal einen Versuch wert.

Lesenswert dazu: Soundsystem und ALSA.

Antworten |