Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

MP3 per Logik abspielen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    MP3 per Logik abspielen

    Hallo!

    Ich versuche seit Tagen vergeblich per Logik eine MP3 Datei abzuspielen, weder per MPG321, noch per pygame.

    Code:
    !/usr/bin/env python
    import os
    
    logger.warning("beep.py gestartet")
    
    music = os.popen('/usr/bin/mpg321 /usr/local/smarthome/logics/bleep.mp3 --gain 40 --quiet', 'w')
    
    music.close()
    logger.warning("beep.py beendet")
    Das Ganze im Terminal (natürlich ohne Log-Einträge) ausgeführt, funktioniert. Hat jemand eine Idee dazu?

    Danke und Grüße
    David

    #2
    Hallo David,

    ich denke Du hast einen Syntax-Fehler drin.

    Siehe Dir lieber das subprocess Modul und die dazu gehörende Doku an.

    Bis bald

    Marcus

    Kommentar


      #3
      Hallo!

      Danke für deine Antwort, ich habs jetzt rausbekommen: war ein Rechte Problem, ich musste auf /dev/snd Rechte setzen.

      Der Aufruf geht jetzt auf meinem Odroid U3 mit Debian Wheezy so:

      Code:
      #!/usr/bin/env python3
      
      import shlex, subprocess
      logger.info("klingel.py gestartet")
      
      args = shlex.split('/usr/bin/mpg321 /usr/local/smarthome/logics/klingel.mp3 --gain 85 -o alsa -a "hw:0,0"')
      
      proc = subprocess.Popen(args, stdout = subprocess.PIPE, stderr= subprocess.PIPE)
      out, err = proc.communicate()
      
      logger.warning("klingel.py beendet")
      Das shlex.split ist überflüssig und den Aufruf werde ich in den nächsten Tagen noch optimieren (Wert abhängig, Lautstärke bzw. Lautlos per Gruppenadresse).

      Grüße
      David

      Kommentar

      Lädt...
      X