MP3 mit Cronjob

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo zusammen,

    habe folgendes Problem. Habe eine Art Nippelboard wie bei TV Total gebastelt (Button drücken und es kommt ein Sound) und ein Programm mit Python dazu geschrieben. Funktioniert auch alles tadellos, wenn ich es im laufenden Betrieb teste.

    Nun habe ich einen Cronjob angelegt (über crontab -e), der die Python Datei nach jedem Boot ausführen soll. Startet er nach dem Reboot auch alles ganz ordentlich (eine LED signalisiert den Start des Programms). Über zwei Taster kann ich eine Variable 'i' hoch- oder runterzählen, und der aktuelle Wert wird über LEDs angezeigt, funktioniert auch alles. Nur kommt kein Ton, wenn ich die Taster drücke, die den Sound hervorbringen sollen.

    Habe zunächst mpg321 verwendet, da die Befehle sehr platzsparend sind. Für das Troubleshooting habe ich das Programm dann noch umgeschrieben auf Pygame.Mixer. Das Problem, dass beim Cronjob keiner, beim normalen Ausführen aber ein Ton kommt, taucht bei beiden Playern auf. Beim Cronjob habe ich auch einen Delay von 2 Minuten eingefügt, auch dieser führt zu keiner Besserung des Problems.

    Code
    @reboot /bin/sleep 120; sudo python /home/pi/.../test.py

    Jetzt habe ich das Script mal über die rc.local aufgerufen und es ist das selbe Problem, dass kein Ton abgespielt wird.

    Code
    /bin/sleep 15 && /home/pi/.../test.py &

    Irgendjemand eine Idee?


  • pack das in ein bash script

    Bash
    #!/bin/bash
    /bin/sleep 120
    sudo python /home/pi/test.py &

    und dann in cron des pi users:

    Code
    @reboot /bin/bash /home/pi/test.sh

    Danke für die rasche Antwort! Habe ich so umgesetzt, leider immernoch das selbe Fehlverhalten. Wenn er rebootet und das Python-File startet, leuchtet die LED und ich kann auch die Taster drücken und es passiert was. Nur kommt kein Ton.

    Noch eine andere Idee?

  • teste mal ob es was ändert wenn du dein Script so änderst:

    Bash
    #!/bin/bash
    . /home/pi/.profile
    /bin/sleep 120
    sudo amixer cset numid=3 1
    sudo python /home/pi/test.py &

    Grüße
    Bootscreen

    sigpic123051_1.gif

    Einmal editiert, zuletzt von Bootscreen (28. August 2014 um 10:19)


  • teste mal ob es was ändert wenn du dein Script so änderst:

    Bash
    #!/bin/bash
    . /home/pi/.profile
    /bin/sleep 120
    sudo amixer cset numid=3 1
    sudo python /home/pi/test.py &

    Heyho, eingebaut, leider keine Änderung. Sieht i.wie so aus, als ob das Pi den Audioausgang während des Abarbeiten des Cronjobs oder der rc.local blockiert :(

  • teste mal folgendes:

    ich habe das ganze einfach mal soundboard genannt

    • sudo nano /etc/init.d/soundboard
    • füge folgenden Code in die Datei:

    • sudo chmod +x /etc/init.d/soundboard
    • sudo update-rc.d soundboard defaults

    schau mal ob das so geht

    Grüße
    Bootscreen

    sigpic123051_1.gif

    Einmal editiert, zuletzt von Bootscreen (29. August 2014 um 09:11)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!