[editiert seit="26.03.2005 2:41 am" zuletzt="12.04.2005 10:23"]
Das hier gepostete Bashscript ist obsolet. Es wurde als Perlscript neu erstellt. Ich würde mich aber trotzdem freuen, wenn in diesem Thread weiterhin Anregungen, Wünsche und Probleme des Scripts diskutiert werden.
Die jeweils neueste Fassung des Scripts kann von meiner HP gezogen werden.
Unter der folgenden URL gibt es ein kleines Handbuch zum Srcipt. http://www.andreas-silberstorff.de/tv_perl/)
Das RPM kann unter SuSE installiert werden, indem man mit der rechten Maustaste auf den Link klickt und aus dem Kontextmenü die Vorschau mit KRPMView auswählt. http://www.andreas-silberstorff.de/tv_perl/download/RPMS/noarch/tv_perl-0.8-1.noarch.rpm
Wer kein RPM installieren kann oder will, kann das Script auch als tarball bekommen.
http://www.andreas-silberstorff.de/tv_perl/download/SOURCES/tv_perl-0.08.tar.gz
Auf der Homepage werden ausserdem Kanallisten für tv.pl und für xawtv zum Download angeboten. Die neueste Liste ist für analoges Kabel in Kaiserslautern (Danke an Jochen alias jwartenb).
[/editiert]
Hallo.
Ich hatte das Script schon mal in einem anderen Thread gepostet. Da verschimmelt es aber wahrscheinlich und man wird immer wieder auf das Thema kommen und es wieder vergessen. Ich denke, es macht Sinn, dafür einen eigenen Thread zu erstellen. Ich poste daher hier mal mein Script und rege an, drüber zu diskutieren und es schrittweise zu verbessern, so dass möglichst viele Nutzen davon haben sollten.
Ein Punkt, der als erstes verbesserungswürdig wäre ist, die Kanalliste in eine eigene Datei auszulagern. Die Kanalliste ist die für Kabelfernsehen am Westrand von Berlin und dürfte nämlich schon eine Ortschaft weiter nicht mehr passen. Das Script für jeden ändern zu müssen wäre blöd. Da wären unabhängige Kanallisten besser.
Wie wird es verwendet?
Um zu Testen, ob die Kanalliste stimmt, hat es auch eine Option zum Fernsehen (Sender ARD nur mal als Beispiel):
sollte das Fernsehbild mit Bild und Ton im MPlayer anzeigen.
Zum Aufnehmen wird statt play record angegeben und als zusätzlicher Parameter die Dauer:
würde also von jetzt an 15 Minuten vom Fernseher aufnehmen.
Diesen Aufruf kann man in die Crontab eintragen (mit crontab -e oder mit kcron), wenn man eine Fernsehserie aufnehmen möchte. Hier z.B. der Eintrag in meiner crontab, um u.a. Pondo Rondo und die Sesamstraße für meine Tochter aufzunehmen ( 8) Petzi läuft ja leider grad nicht mehr):
at ist Dein Freund, wenn Du einen bestimmten Film aufnehmen willst:
Hier nun das Script in seiner bisherigen Form:
[/b][/url]
Das hier gepostete Bashscript ist obsolet. Es wurde als Perlscript neu erstellt. Ich würde mich aber trotzdem freuen, wenn in diesem Thread weiterhin Anregungen, Wünsche und Probleme des Scripts diskutiert werden.
Die jeweils neueste Fassung des Scripts kann von meiner HP gezogen werden.
Unter der folgenden URL gibt es ein kleines Handbuch zum Srcipt. http://www.andreas-silberstorff.de/tv_perl/)
Das RPM kann unter SuSE installiert werden, indem man mit der rechten Maustaste auf den Link klickt und aus dem Kontextmenü die Vorschau mit KRPMView auswählt. http://www.andreas-silberstorff.de/tv_perl/download/RPMS/noarch/tv_perl-0.8-1.noarch.rpm
Wer kein RPM installieren kann oder will, kann das Script auch als tarball bekommen.
http://www.andreas-silberstorff.de/tv_perl/download/SOURCES/tv_perl-0.08.tar.gz
Auf der Homepage werden ausserdem Kanallisten für tv.pl und für xawtv zum Download angeboten. Die neueste Liste ist für analoges Kabel in Kaiserslautern (Danke an Jochen alias jwartenb).
[/editiert]
Hallo.
Ich hatte das Script schon mal in einem anderen Thread gepostet. Da verschimmelt es aber wahrscheinlich und man wird immer wieder auf das Thema kommen und es wieder vergessen. Ich denke, es macht Sinn, dafür einen eigenen Thread zu erstellen. Ich poste daher hier mal mein Script und rege an, drüber zu diskutieren und es schrittweise zu verbessern, so dass möglichst viele Nutzen davon haben sollten.
Ein Punkt, der als erstes verbesserungswürdig wäre ist, die Kanalliste in eine eigene Datei auszulagern. Die Kanalliste ist die für Kabelfernsehen am Westrand von Berlin und dürfte nämlich schon eine Ortschaft weiter nicht mehr passen. Das Script für jeden ändern zu müssen wäre blöd. Da wären unabhängige Kanallisten besser.
Wie wird es verwendet?
Um zu Testen, ob die Kanalliste stimmt, hat es auch eine Option zum Fernsehen (Sender ARD nur mal als Beispiel):
tv ARD play
sollte das Fernsehbild mit Bild und Ton im MPlayer anzeigen.
Zum Aufnehmen wird statt play record angegeben und als zusätzlicher Parameter die Dauer:
tv ARD record 00:15:00
würde also von jetzt an 15 Minuten vom Fernseher aufnehmen.
Diesen Aufruf kann man in die Crontab eintragen (mit crontab -e oder mit kcron), wenn man eine Fernsehserie aufnehmen möchte. Hier z.B. der Eintrag in meiner crontab, um u.a. Pondo Rondo und die Sesamstraße für meine Tochter aufzunehmen ( 8) Petzi läuft ja leider grad nicht mehr):
taki@rivendell:~> crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.8768 installed on Thu Feb 17 19:18:53 2005)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# Petzi aufnehmen
53 7 * * 1,2,3,4,5 /usr/local/bin/tv KiKa record 1:00:00
#TEST 16 21 * * 1,2,3,4,5,6,7 /usr/local/bin/tv KiKa record 0:00:15
# This file was written by KCron. Copyright (c) 1999, Gary Meyer
# Although KCron supports most crontab formats, use care when editing.
# Note: Lines beginning with "#\" indicates a disabled task.
at ist Dein Freund, wenn Du einen bestimmten Film aufnehmen willst:
echo "/pfad/zum/Script/tv arte record 1:40:00" | at 00:25 Mai 1
Hier nun das Script in seiner bisherigen Form:
Code:
#!/bin/bash
# TODO:
# 1.) Die Kanalliste sollte in einer eigenen Datei liegen und nicht hier definiert werden müssen
STATION=$1;
OPCODE=$2;
ENDPOS=$3;
echo "ENDPOS = $ENDPOS";
case $STATION in
ARD|ard)
FRQ='210.000';
;;
ZDF|zdf)
FRQ='196.000';
;;
Arte|arte)
FRQ='126.250';
;;
3Sat|3sat)
FRQ='161.000';
;;
RBB|rbb)
FRQ='182.250';
;;
MDR|mdr)
FRQ='280.310';
;;
NDR|ndr)
FRQ='273.000';
;;
WDR|wdr)
FRQ='311.380';
;;
BR|br)
FRQ='327.310';
;;
XPP|xpp)
FRQ='415.000';
;;
Pro7|pro7)
FRQ='294.000';
;;
Sat1|sat1)
FRQ='203.000';
;;
VOX|VoX|Vox|vox)
FRQ='231.000';
;;
Kabel1|kabel1|k1)
FRQ='140.000';
;;
RTL2|rtl2)
FRQ='245.379';
;;
SRTL|srtl)
FRQ='303.380';
;;
TVB|tvb)
FRQ='147.000';
;;
BBC|bbc)
FRQ='252.310';
;;
MTV|mtv)
FRQ='287.190';
;;
Phoenix|phoenix)
FRQ='189.250';
;;
Euro|euro)
FRQ='168.250';
;;
NTV|N-TV|ntv|n-tv)
FRQ='133.000';
;;
CNN|cnn)
FRQ='238.000';
;;
KIKA|KiKa|kika)
FRQ='259.000';
;;
DFS|dsf)
FRQ='319.000';
;;
N24|n24)
FRQ='335.310';
;;
QVC)
FRQ='224.129';
;;
HSE24)
FRQ='175.379';
;;
*)
echo "unbekannter Sender ( $FQ )";
echo "evtl. Groß-/Kleinschreibung falsch";
exit 1;
;;
esac
function inittv
{
su -c 'rmmod saa7134'
}
function showtv
{
STAT=$1;
FREQ=$2;
echo "Frequenz = $FREQ";
mplayer \
-fs \
tv\:// \
-tv driver=v4l2:norm=pal:width=1280:height=1024:fps=25:outfmt=yuy2:quality=0:freq=$FRQ \
-vo xv \
-v 3;
return;
}
function recordtv
{
STAT=$1;
FREQ=$2;
ENDPOS=$3;
DATE=`date +%a_%d.%b.%G_%H%M%S`;
FILE=/home/freevo/Documents/Video/misc/tv_"$STAT"_"$DATE".avi;
echo "Aufzeichnung heißt $FILE";
echo "Frequenz = $FREQ";
echo "Laenge = $ENDPOS";
echo "";
# -v 3
/usr/bin/mencoder \
-endpos $ENDPOS \
tv\:// \
-tv driver=v4l2:\
norm=pal:width=720:height=576:fps=25:outfmt=yuy2:quality=0:\
immediatemode=1:audiorate=32000:forceaudio:alsa:amode=3:\
freq=$FRQ \
-ovc lavc \
-lavcopts vcodec=mpeg4:aspect=4.0/3.0:vhq:vbitrate=1800 \
-vf lavcdeint \
-oac mp3lame \
-lameopts fast:preset=standard \
-mc 10 \
-o $FILE \
;
return;
}
case "$OPCODE" in
record)
recordtv $STATION $FRQ $ENDPOS;
;;
play)
showtv $STATION $FRQ;
;;
*)
echo 'Aufruf zum Fernsehen ist';
echo ' tv Sendername play';
echo '';
echo 'Aufruf zum Aufnehmen ist';
echo ' tv Sendername record Dauer(HH:MM:SS)';
exit 1;
;;
esac
exit 0;