Täglich um 10:00 .mp3-Datei abspielen - einfach umsetzen?

4 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Die armen Hühner *Grins*

Aber ganz ehrlich? Warum Windows?

Linux besitzt als Bordmittel alles, was man benötigt. Das Zauberwort heisst "CRON" und die dazugehörige Tabelle namens "CRONTAB".

CRON ist ein Systemdienst, welcher Aufgaben zu bestimmten Uhrzeiten immer wiederkehrend erledigt. Also genau DAS, was Du suchst ;-)

Einfach täglich in der Crontab das Starten eines audio-Players Deiner Wahl mit der gewünschten MP3 Datei starten - Thema erledigt.

Arbeit?

15 Minuten zur Installation von Linux, 1 Minute zur Installation des Befehls und zum reboot - FERTIG

Woher ich das weiß:Berufserfahrung – Let's have some Raspberry PI almost at breakfast ;-)

peterandres4760 
Beitragsersteller
 03.05.2023, 22:23

Hab da was verschwiegen: Hatte bereits schon Linux installiert, allerdings für ein Projekt, was ich längst wieder verworfen hatte.

Weil ich mich mit Windows besser auskenne, hatte ich direkt an die Aufgabenplanung gedacht.

Ich habe es nun doch mit Linux durch folgenden Befehl hinbekommen, dass die Audio immer morgens um 10:00 abspielt.

0 10 * * * mpv ~/Musik/Donau.mp3

Funktioniert, wie ich's wollte.

[...] 1 Minute zur Installation des Befehls [...]

Naja, nicht ganz. Habe dann doch eine gute halbe Stunde gebraucht, um mich mit crontab auseinander zu setzen.
Ich habe mich immer wieder gewundert, warum der Code im crontab nicht gespeichert wird. Habe immer und immer wieder vergessen, "Strg+O" und dann "Strg+X" zu drücken.

Funktioniert nun wie gesagt schlussendlich doch alles.

1
Traveller5712  04.05.2023, 12:39
@peterandres4760

Aber im Endeffekt ist es doch ganz simpel ;-) Dafür braucht man doch kein Betriebssystem mit einem Overhead jenseits von Gut und Böse ;-) CRON läuft schliesslich auf dem allersimpelsten Unix und Linux

1

auf dem Raspery ist doch Linux zu Hause.
Installiere Tcl/Tk und du kannst das wunderbar einrichten.
und auch einrichten, dass er "mpg123 Donau-Waltzer.mp3" zur gegebenen Zeit aufruft.

Wenn du selbst zur Tüftler-Gemeinde gehören willst, kann ich dir helfen.
Windows habe ich schon vor 23 Jahren entsorgt.
Willst du damit anfangen?

Woher ich das weiß:Berufserfahrung – openSuSE seit 1995

peterandres4760 
Beitragsersteller
 03.05.2023, 13:31

Wusste nicht, dass Linux auch so eine Art Aufgabenplanung besitzt. Wie installiere ich denn "Txl/Tk"? Was ist das überhaupt?

0
guenterhalt  03.05.2023, 13:39
@peterandres4760

Tcl ist eine Scriptsprache mit viel Komfort. Für grafische Anwendungen ist dann die Erweiterung Tk vorgesehen.

Ich schreibe meine Programme nur noch in dieser Sprache.
Schreiben, Starten und Fehler behandeln. Schneller kann es nicht gehen.

Tcl/Tk gibt es auch für Windows. Wenn die auf deinem "großen PC" kein Linux hast, gucke es dir unter Windows an.

Übrigens braucht du keine 10 Zeilen Code für dein Donau-Walzer-Abspielprogramm..

1
mchawk777  03.05.2023, 13:54
@peterandres4760
Wusste nicht, dass Linux auch so eine Art Aufgabenplanung

Vielleicht weil Fachleute und Linuxianer das als Cronjob bezeichnen. 😉

0
peterandres4760 
Beitragsersteller
 03.05.2023, 14:08
@mchawk777

Angenommen, ich will die MP3-Datei um 14:10 laufen lassen. Wäre der Code so richtig(?):

10 14 * * * /usr/bin/mpg123 /home/user/Musik/Donau.mp3 >/dev/null 2>&1
0
mchawk777  03.05.2023, 14:33
@peterandres4760

Könnte ich mir vorstellen - bin aber auch nicht der Crack in solchen Dinge.

Für mein tägliches Backup z. B. habe ich eine sh-Script angelegt und dieses über die Crontab aufgerufen:

Aufruf mit crontab -e

 0 2 * * * /home/pi/backup.sh > /dev/null

Damit wird das Backup-Skript jede Nacht um 2 Uhr morgens ausgeführt.

In der Backup.sh wird dann der Rest ausgeführt:

#!/bin/bash
#Festplatte einbinden
mount -t cifs -o user=*****,password=*****,rw,file_mode=0777,dir_mode=0777 //0.0.0.0/Ordner /mnt/nas
#Variablen
BACKUP_PFAD="/mnt/nas/Raspberry"
BACKUP_ANZAHL="15"
BACKUP_NAME="BackupName"
#Backup erstellen
dd if=/dev/mmcblk0 | gzip > ${BACKUP_PFAD}/${BACKUP_NAME}-$(date +%Y%m%d%H%M%S).img.gz
#Alte Sicherung löschen
pushd ${BACKUP_PFAD}; ls -tr ${BACKUP_PFAD}/${BACKUP_NAME}* | head -n -${BACKUP_ANZAHL} | xargs rm; popd
#Festplatte auswerfen
umount /mnt/nas

So - und ganz nebenbei hast Du jetzt ein Skript, mit dem Du image-Backups der SD-Karte auf eine Netzwerkfreigabe schieben kannst. Sehr zu empfehlen, wenn man basteln will. 😉

0
peterandres4760 
Beitragsersteller
 03.05.2023, 14:35
@mchawk777

...naja, also die SD-Karte im Raspberry-PI hat 128GB, mein NAS genau dasselbe. Würde also gar nicht funzen.

Trotzdem stelle ich mir die Frage, was ich falsch mache. Wieso wird der Code, den ich verfasst habe, nicht ausgeführt?

0
mchawk777  03.05.2023, 14:45
@peterandres4760
...naja, also die SD-Karte im Raspberry-PI hat 128GB, mein NAS genau dasselbe. Würde also gar nicht funzen.

Da hast Du natürlich recht.
Öhm... Mein Raspi hat nur 32 GByte und mein NAS zig TByte. 😉

Wieso wird der Code, den ich verfasst habe, nicht ausgeführt?

Packe ihn in eine sh-Datei und "erkäre" sie mit....

sudo chmod +x test.sh

...ausführbar.

Rufe dann die sh-Datei aus dem Crontab auf.

Welche Parameter dann mpg123 benötigt kann ich Dir nicht sagen.
Könnte aber auch nur sein, dass der Crontab die Parameter nicht korrekt übergibt. Deshalb der Umweg über das Script. 🤔

0
guenterhalt  03.05.2023, 20:35
@peterandres4760

das sollte so funktionieren. Richtig ist auch, den Befehl mpg123 mit vollem Pfad aufzurufen, denn für cron wird keine PATH-Variable angelegt.

0

Ich würde ein billiges Handy nehmen und dann den Wecker mit entsprechendem Song zur gewünschten Uhrzeit stellen.

Handy, bekommst ja billig auf eBay Kleinanzeigen.

Evtl hängst noch ein Lautsprecher dran.