Hallo_{Mared,Thorsten}, * Am 09.03.2002 um 13:40 Uhr schrieb Thorsten Haude:
* Mared Attassi
[02-03-09 12:57]: gibt es eine Möglichkeit Aufnahmen vom Tuner direkt als mp3 abzuspeichern ohne den Umweg über wav-Dateien?
Ich würde gerne längere Hörspiele aus dem Radio ausfzeichnen. Der freie Plattenspeicher reicht nicht für 2 Stunden Aufnahmezeit. Das Ganze sollte über den Cron-Job zu starten sein. Ist das möglich? Wen sich die Programme an übliche Konventionen halten, sollte es möglich sein, die Ausgabe von tuner2wav direkt an die Eingabe von wav2mp3 zu legen. Wenn das nicht geht, kannst Du mit mkfifo(1) einen FIFO anlegen.
hier eine (schnelle) Lösung mit <wavrec> und <lame> ---[ schnipp ]--- #!/bin/bash # tmp. NamedPipe definieren PIPE=/tmp/tunerpipe # externe Programme definieren WAVREC="/usr/X11R6/bin/wavrec" LAME="/usr/local/bin/lame" MKFIFO=/usr/bin/mkfifo SLEEP=/bin/sleep RM=/bin/rm # Return-Codes definieren E_BADARGS=65 E_PIPE=66 # Bei vorzeitigem Ende sollte die NamedPipe entfernt werden trap "$RM -f $PIPE;" 2 3 # Sind alle notwenigen Parameter übergeben worden? if [ "$#" -ne 2 ]; then echo "USAGE: $(basename $0) audio.mp3 sekunden" >&2 exit $E_BADARGS fi # Test ob Pipe bereits existiert if [ -p $PIPE ]; then echo "ACHTUNG: Es läuft z.Zt. bereits eine Aufnahme!" >&2 exit $E_PIPE fi # Aufzeichnungsparameter definieren WAVREC_PARM="-s 44100 -S -t 99999 -b 16 $PIPE" LAME_PARM="-h $PIPE $1" # Pipe erzeugen $MKFIFO $PIPE # Aufzeichnung starten... $WAVREC $WAVREC_PARM & WAVREC_PID="$!" # Kodierung starten... $LAME $LAME_PARM & LAME_PID="$!" # Auf's Ende warten ;-) $SLEEP "$2" # Hintergrundprozesse SIGTERM senden kill -TERM $WAVREC_PID kill -TERM $LAME_PID # Auf das Ende der Hintergrundprozesse warten wait # Pipe entfernen $RM -f $PIPE ---[ schnapp ]--- Jürgen -- Murphys goldene Regel: Wer zahlt, schafft an. / Registered Linux-User #130804 http://counter.li.org \ \ Linux Stammtisch Bremerhaven http://linux.hs-bremerhaven.de /