Audio-File abspielen über Klinkenanschluss des Pi

  • Hallo liebe Forengemeinde!


    Ich lese nun schon seit einigen Monaten immer mal wieder hier im Forum mit und ihr habt mir schon bei vielen Problemen weitergeholfen, auch wenn ihr das nicht wisst :) Dafür schon einmal vielen Dank.


    Ich habe einen R Pi 3 mit Homebridge am Laufen, habe ihn über die Anleitung dieses Formus aufgesetzt und er läuft soweit tadellos. Auch hierfür vielen Dank, ich glaube eine bessere und anfängerfreundlichere Anleitung ist im Netz nicht zu finden.


    Trotzdem habe ich nun ein Problem und komme einfach nicht weiter. Auch habe ich im Forum hierzu nicht direkt etwas finden können.


    Ich möchte, wenn ein bestimmtes Ereignis eintritt, ein Soundfile über den Audioausgang des Pi ausgeben lassen. Hierzu habe ich folgendes Thread gelesen und Homebridge auch so eingerichtet:

    Homebridge Sounds


    Möchte ich nun ein Soundfile abspielen, funktioniert es (also über ssh). Möchte ich aber eben dieses File über den Homebridge-Schalter abspielen, ist kein Ton zu hören!

    In der Konsole sehe ich aber, dass er die Datei offenbar abspielt!


    über SSH ist mein Kommando folgendes:

    omxplayer -o local /home/pi/bell.mp3

    --> Ton wird abgespielt


    in Homebridge sieht die config.json an dieser Stelle so aus:

    {

    "accessory": "CmdTrigger",

    "name": "Türklingel",

    "command": "omxplayer -o local /home/pi/bell.mp3"

    }

    --> Ton wird nicht abgespielt


    Die Konsole gibt folgendes aus, wenn der Button getriggert wird:

    Setting 'Türklingel' true

    Command executed: 'omxplayer -o local /home/pi/bell.mp3'

    Setting 'Türklingel' false


    Er scheint das File also abzuspielen...


    Hat jemand eine Idee woran es scheitert? Wäre prima, wenn ihr mir auch diesmal weiterhelfen könntet.


    Vielen Dank schon einmal

    Gruß Kai

  • Ich verwende für solch ein Szenario das omxplayer-plugin. Hier ist dann kein ssh Befehl notwendig, sondern die Datei (mp4) wird direkt über Klinke abgespielt.


    Schau mal hier im Forum unter omxplayer nach......


    Inzwischen nutze ich den Player kaum noch, sondern verwende das alexa_remote_control.sh



    Außer man möchte eigene Dateien abspielen, da geht es natürlich leider nicht mehr



    Gesendet von iPhone mit Community

  • ok, bin echt irgendwie zu blöd dafür...

    Kannst du mir sagen, was ich in die config schreiben muss, um eine Datei "bell.mp3", die in /home/pi liegt abzuspielen?

  • über SSH ist mein Kommando folgendes:

    omxplayer -o local /home/pi/bell.mp3

    --> Ton wird abgespielt

    Also als User pi eingeloggt und losgelegt. Das klappt, weil der User pi auf die Datei bell.mp3 im Verzeichnis /home/pi/ zugreifen darf. Da du die Forenanleitung genutzt hast, läuft deine Homebridge aber unter dem User homebridge, und der darf nicht einfach im Homeverzeichnis von pi irgendwas lesen.


    Du musst deine bell.mp3 also woanders hinlegen. Am besten kopierst du sie ins Homeverzeichnis von Homebridge mit

    sudo cp bell.mp3 /home/homebridge

    sudo chown homebridge:homebridge /home/homebridge/bell.mp3


    Und änderst den cmdtrigger dahin, dass der Pfad omxplayer -o local /home/homebridge/bell.mp3 lautet. Das kannst du auch als User pi über ssh testen, allerdings muss nun ein sudo davor stehen:


    sudo omxplayer -o local /home/homebridge/bell.mp3 Das sudo darf aber nicht für den cmdtrigger verwendet werden, sonst gibt's eine Fehlermeldung und es geht wieder nicht.


    Stefan

  • Vielen Dank für die tolle Anleitung!


    Leider geht es immer noch nicht. Über ssh als User pi habe ich es mit sudo getestet, hat funktioniert.

    (Beim Trigger habe ich aber das sudo wie von Dir beschrieben weggelassen.


    ???

  • Für das omxplayer-plugin nutze ich folgende config:


    "platform": "OmxPlayer",
    "name": "Marvins Playlist",
    "playPlaylistSwitch": true,
    "shuffleSwitch": true,
    "repeatAll": true,
    "format": "140",
    "path": "/var/homebridge-omx/",
    "output": "both",
    "playNextSwitch": true,
    "volumeControl": false,
    "pauseSwitch": true,
    "playlist": [{
    "switchName": "Ballonwettfahrt",
    "filename": "/var/homebridge-omx/Ballonwettfahrt.mp4"
    },
    {
    "switchName": "Teddy",
    "filename": "/var/homebridge-omx/Teddy.mp4"
    },
    {
    "switchName": "Feuerwehr",
    "filename": "/var/homebridge-omx/Feuerwehr.mp4"
    },
    {
    "switchName": "Nemo",
    "filename": "/var/homebridge-omx/Nemo.mp4"
    },
    {
    "switchName": "Meeresschildkroeten",
    "filename": "/var/homebridge-omx/Meeresschildkroeten.mp4"
    },
    {
    "switchName": "Dorie",
    "filename": "/var/homebridge-omx/Dorie.mp4"
    },
    {
    "switchName": "Boogie",
    "filename": "/var/homebridge-omx/Boogie.mp4"
    },
    {
    "switchName": "Felix",
    "filename": "/var/homebridge-omx/Felix.mp4"
    },
    {
    "switchName": "Loewen",
    "filename": "/var/homebridge-omx/Loewen.mp4"
    }
    ]
    }]
    }



    Gesendet von iPhone mit Community

  • Ok, danke.


    Das Plugin habe ich auch installiert, geht aber ebenfalls nicht...


    Mein Config:

    {

    "platform": "OmxPlayer",

    "name": "Klingel",

    "playPlaylistSwitch": true,

    "path": "/home/homebridge/",

    "output": "both",

    "playlist": [

    {

    "switchName": "bell",

    "filename": "/home/homebridge/bell.mp3"

    }

    ]

    },

  • Hast du evtl. folgende Schritte schon mal durchgeführt?


    Permissions issue


    If you're running homebridge on a different user than pi you may have permission issues. Try running the following commands:


    sudo usermod -a -G video $(whoami)


    sudo chmod 777 /usr/lib/node_modules/homebridge-omxplayer/node_modules/youtube-dl/bin/youtube-dl


    Delete any .mp4 files inside your /tmp folder.


    Make sure your home folder exists at /home/USERNAME and run sudo chmod -R 0777 /home/USERNAME


    Reboot and try again.



    Gesendet von iPhone mit Community

  • Nein. Kein chmod 777. Bitte nicht. Auf falsche Verzeichnisse angewendet macht ihr damit nur euren Raspi kaputt. Und ein Reboot ist nach einem solchen Kommando ebenfalls nicht notwendig.


    Aber Kohle_81 hat recht: der User homebridge darf wahrscheinlich kein Video oder Audio abspielen. Wobei whoami nix nützt, denn whoami liefert pi zurück. Also:


    sudo usermod -a -G video homebridge

    sudo usermod -a -G audio homebridge


    Stefan


    PS: Ich schreib's auf die Liste für die Forenanleitung.

  • sudo chmod 777 /usr/lib/node_modules/homebridge-omxplayer/node_modules/youtube-dl/bin/youtube-dl

    bringt bei mir: cannot access 'usr.....': No such file or directory

  • Nein. Kein chmod 777. Bitte nicht. Auf falsche Verzeichnisse angewendet macht ihr damit nur euren Raspi kaputt. Und ein Reboot ist nach einem solchen Kommando ebenfalls nicht notwendig.

    Jetzt hab ich aber folgenden Teil gemacht und er hat es gefressen... Ist das schlimm? Homebridge läuft noch...


    sudo chmod -R 0777 /home/homebridge

  • Naja, halb so wild.

  • ES GEHT!!!!!!!!!!!!!!!!!!!!


    Danke Dir, Stefan! Du bist der Größte!


    mit sudo usermod hat es geklappt. Jetzt funktioniert der cmdtrigger und auch das Plug-In!


    Merci, super!

  • sudo chmod 777 /usr/lib/node_modules/homebridge-omxplayer/node_modules/youtube-dl/bin/youtube-dl

    bringt bei mir: cannot access 'usr.....': No such file or directory

    Gut so :D

    Es müsste sudo chmod 777 /usr/local/lib/node_modules/homebridge-omxplayer/node_modules/youtube-dl/bin/youtube-dl heißen... was es bewirken soll, weiß ich leider nicht. Aber auch das kannst du machen.


    Trotzdem im Hinterkopf behalten: chmod 777 ist nicht die Antwort, sondern die Frage, und die Antwort heißt nein :D


    Stefan

  • Ich nicht. Kohle_81 kam damit an, er ist der Hero. Ich hab's nur ein bisschen schöner gemacht.


    Du kannst, wenn du willst, ein chmod 700 /home/homebridge machen. Viel Spaß weiterhin.


    Stefan

  • Alles klar, dann natürlich auch vielen Dank an Kohle_81.


    Gibt es denn eine Möglichkeit, dass ich über WinSCP mp3-Files in das homebridge-Verzeichnis kopieren kann?

    Ich kann mich ja nur über User pi einloggen und dann aber nicht in das homebridge-Verzeichnis kopieren.


    Mir wäre auch jeder andere Weg recht, nur sollte ich halt irgendwie Dateien da hin bekommen. Und jedes Mal zunächst in den /home/pi -Ordner kopieren und dann per Konsole in das homebridge-Verzeichnis kann ja nicht die Lösung sein :D

  • Gib dem User homebridge ein Passwort.

    sudo passwd homebridge


    Dann über winscp als User homebridge einloggen.


    Stefan

  • Freut mich, dass es läuft- auf das kommt es schließlich an ?



    Gesendet von iPhone mit Community