Heinrich_Schwietering
Wikiteam
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Als ich auf diesen Post stieß, hat mir das ganze keine Ruhe gelassen, bis es funktionierte: Aufnahmen direkt mit drei Mausklicks aus dem TV-Browser starten! Super-simpel! 😎 Bitte um Tests und Rückmeldungen! Vor allem weiß ich nicht, was ggf. noch an perl-Paketen installiert werden muss - vielleicht kann das jemand auf "unbescholtenem" System noch mal nachvollziehen? so long hank
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Hab' noch mal was nachgebessert: Das Aufnahmeskript löscht jetzt nach Beenden der Aufnahme den Crontab-Eintrag wieder; die Einträge würden sich sonst im Laufe der Zeit dort ansammeln, wenn nicht die "Aufnahme-Daten" im TV-Browser selbst gelöscht würden...Dazu musste auch die Konfiguration des Aufnahme-Plugins etwa angepasst werden. Im TV-Browser selbst bleibt so zwar die Markierung der aufgenommenen Sendungen bestehen, aber das kann man ggf. verschmerzen, dann kann man jedenfalls noch sehen, was aufgenommen worden ist. Ansonsten denke ich, das Teil ist fertig - allzuviel Resonanz hat es ja noch nicht erfahren 😉 so long hank
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Habe gerade noch eine Version zusammengebastelt, die neben der reinen Aufnahme auch "Time-Shift" zulässt (Aufnahme+fast direkte Wiedergabe), oder nur die gewählte Sendung wiedergibt, also zum Sendungsbeginn einen TV-Player mit der gwählten Sendung startet, und am Ende auch wieder beendet. Das ist allerdings etwas umfangreicher, da das ganze momentan noch aus acht Einzelskripten (mit dem im Artikel verwendeten Perlskript) besteht. Bin mir nicht sicher, ob ich das in den Artikel mit einbauen soll, oder eher als Forums-Beitrag, mit Link dahin? btw: weiß jemand, wie ich in das Perlskript so etwas wie eine Zenity-Abfrage einbauen könnte, mit der ich dann festlegen kann, welches Aufnahme-Skript (für Aufnahme, Aufnahme+Wiedergabe, nur Wiedergabe) gestartet werden soll? Hab das zwar inzwischen über ein externes bash-Skript hinbekommen, wäre aber im Perlskript selber einfacher, da ich momentan noch drei verschiedene angepasste Versionen dieses Perlskripts aufrufen muss, um das gewünschte Ergebnis zu erzielen... so long
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Hab' das ganze mit den Alternativen "Aufnehmen, Ansehen, Beides" jetzt doch noch auf zwei Skripte eingedampft bekommen, und brauche dafür Perlskript auch nicht mehr. Werde also nach bewährter Manier eine Alternative im Artikel einbauen. Außerdem ist auch eine Variante "zapping aus dem TV-Browser" angedacht, besonders interessant für Leute mit zwei Displays. Es soll eine angeklickte Sendung sofort starten, und es es ermöglichen, mit einem Klick (naja, werden wohl 2 oder 3 werden 😉 ) direkt zu einer anderen zu wechseln; ggf. auch programmiert starten, aber auch da die Möglichkeit bieten, dann umzuschalten, wenn es nicht gefällt, oder was anderes interessanter erscheint. couchpotatos delight 😊 Verlängere also doch noch mal den "In-Arbeit-Hinweis". so long hank
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! So, die "eigene" Version (Dank an diesch und greebo die mir bei sed "etwas" auf die Sprünge geholfen haben) ist soweit fertig! Kritik, Anregungen, Rückmeldungen etc. wie immer erwünscht - irgend ist es doch etwas seltsam, hier einen kompletten Monolog zu führen (obwohl ich's ja gewohnt bin 😉 ) - ist das ganze denn komplett abwegig? 😮 so long hank PS- Gibt's gerade mal wieder Server-Probleme, oder warum ist das Bild nicht zu sehen?
|
noisefloor
Ehemaliger
Anmeldungsdatum: 6. Juni 2006
Beiträge: 29065
Wohnort: WW
|
Hallo, wir wollten deinen gepflegten Monolog nicht unterbrechen. 😀 Verschoben: Skripte/DVB-T-Aufnahmen aus dem TV-Browser starten Gruß, noisefloor
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! noisefloor schrieb:
wir wollten deinen gepflegten Monolog nicht unterbrechen. 😀
Na, immerhin haltet ihr ihn für gepflegt... Verschoben: Skripte/DVB-T-Aufnahmen aus dem TV-Browser starten
Danke! Hab' noch einen Hinweis in TV-Browser eingebaut. so long hank
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Um den Monolog fortzusetzen: Habe jetzt noch die angekündigte Zapping-Variante mit aufgeführt; mal sehen, was mir sonst noch so einfällt 😈 ! so long hank
|
Fraenk
Anmeldungsdatum: 24. August 2006
Beiträge: 615
Wohnort: Region Hannover
|
Hi, habe den Artikel noch nicht ganz durch und liest bislang sehr gut! Muss ich mich demnächst mal dran austoben. Aber du schreibst unter 'Benutzung':
Die Zahlenfolge am Anfang steht für die Minute, Stunde, Monat und Tag....
Sollte es nicht ....Tag und Monat.... heißen? Wir haben ja nur 12 Monate im Jahr.. 😉
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! Leider gibt es seltsame Dinge bei der Verwendung der ersten Skript (ohne Crontab::Config) zu berichten; daher habe ich mit Lux' Hilfe eine Version erstellt, die die eigentlichen Aufnahmen nicht mehr direkt über crontab-Einträge regelt, sondern mittels eines crontab-Eintrages * * * * * /Pfad/zum/Aufnahmeskript.sh minütlich abfragt, ob eine Aufnahme ansteht. Die Aufnahmen selbst werden mit folgendem Skript aus dem TV-Browser-Aufnahme-Plugin heraus in eine Aufnahme.conf-Datei programmiert (Einstellungen für die Parameter der "Aufnahme-Geräts" im Plugin am Anfang des Skriptes): 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 | #!/bin/bash
# Skript zum Erstellen und Löschen der Konfigurationsdatei "Aufnahme.conf" für Aufnahmen aus dem TV-Browser
# Eintrag für die Parameter in den TV-Browser-Aufnahme-Plugin-Einstellungen sind
# Applikation: /bin/bash
# Aufnehmen:
# /Pfad/zu/diesem/Skript.sh record {leadingZero(start_day, "2")} {leadingZero(start_month, "2")} {start_year} {leadingZero(start_hour, "2")} {leadingZero(start_minute, "2")} {isset(channel_name_external_quiet,channel_name)} {length_sec} {urlencode(title, "utf-8")}
# Löschen:
# /Pfad/zu/diesem/Skript.sh delete {leadingZero(start_day, "2")} {leadingZero(start_month, "2")} {start_year} {leadingZero(start_hour, "2")} {leadingZero(start_minute, "2")} {isset(channel_name_external_quiet,channel_name)} {length_sec} {urlencode(title, "utf-8")}
VERZ=$HOME/.tvbrowser
SENDER=${7}
DAUER=${8}
ZEIT=${2}.${3}.${4}-${5}.${6}
# Umwandeln des Titels
TITEL=$(echo ${9} | tr '+' ' ' | /bin/echo -e $(sed 's/%/\\x/g'));
# Aufnahmeeintrag erstellen
if [[ "${1}" = "record" ]]; then
# Zenity-Aufruf, um Auswahl festzulegen
zenity --help > /dev/null || { echo "Fehler: Du benötigst \"zenity\" um dieses Script nutzen zu können." && exit 1 ; }
test ! -e $VERZ/Auswahl.lst && zenity --error --text "$VERZ/Auswahl.lst wurde nicht gefunden!" && exit 1
AUSWAHL=`cat $VERZ/Auswahl.lst | zenity --list --title "Aufnehmen, Ansehen, Beides?" --column "Auswahl:"` || exit 0
test "$AUSWAHL" || { zenity --error --text "Es wurde keine Auswahl getroffen!" && exit 1 ; }
echo $ZEIT ${7} $DAUER $AUSWAHL \"$TITEL\" >> $VERZ/Aufnahme.conf
else
#Löschen des Eintrags aus der Konfigurationsdatei
sed -ie '/^'"$ZEIT ${7}".*'$/ d' $VERZ/Aufnahme.conf
fi
exit
|
Der Crontab-Eintrag führt zur Überprüfung, für welchen Zeitpunkt in der Aufnahme.conf Startdaten vorgesehen sind, liest diese zur passenden Uhrzeit mit dem eigentlichen Aufnahmeskript aus und startet die Aufnahmen:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 | #!/bin/bash
# SKRIPT für Aufnahmen aus dem TV-Browser heraus
#
# Benötigt wird dazu außerdem ein crontab-Eintrag des Users
# "* * * * * /Pfad/zu/diesem/Skript", der minütlich abfragt, ob eine Aufnahme ansteht
### KONFIGURATION - DATEN FÜR AUFNAHME
TVREC=/usr/bin/tvmplayer
TVPLAY=/usr/bin/gnome-mplayer
VERZ=$HOME/.tvbrowser
VIDEO=$HOME/Videos
while read ZEIT SENDER DAUER AUSWAHL TITEL
do
if [[ "${ZEIT}" = "$(date +%d.%m.%Y-%H.%M)" ]];
then
# REINE AUFNAHME
if [[ "${AUSWAHL}" = "Aufnehmen" ]]; then
# Aufnahme starten
DISPLAY=:0.0 $TVREC dvb://${SENDER} -dumpstream -dumpfile "$VIDEO/${SENDER}-${TITEL}-${ZEIT}.ts" &
# Aufnahme beenden
sleep ${DAUER}
killall $TVREC
fi
# NUR ANSEHEN
if [[ "${AUSWAHL}" = "Ansehen" ]]; then
# Aufnahme starten
DISPLAY=:0.0 $TVPLAY dvb://${SENDER} --fullscreen &
sleep 1
# Beenden
sleep ${DAUER}
killall $TVPLAY
fi
# "TIME_SHIFT"
if [[ "${AUSWAHL}" = "Beides" ]]; then
# Aufnahme starten
DISPLAY=:0.0 $TVREC dvb://${SENDER} -dumpstream -dumpfile "$VIDEO/${SENDER}-${TITEL}-${ZEIT}.ts" &
sleep 2
DISPLAY=:0.0 $TVPLAY $VIDEO/"${SENDER}-${TITEL}-${ZEIT}.ts" --fullscreen &
# Aufnahme beenden
sleep ${DAUER}
killall $TVREC
fi
fi
sed -ie '/^'"${ZEIT} ${SENDER}".*'$/ d' $VERZ/Aufnahme.conf
done < $VERZ/Aufnahme.conf
exit
|
Nach Beenden der Aufnahme werden die Einträge automatisch aus der Aufnahme.conf entfernt; Fehleinträge und Korrekturen von Aufnahmedaten könne direkt aus dem TV-Browser erfolgen. Diese Methode ist etwas eleganter, und es sollte auch nicht zu seltsamen Sicherungsdateien der eigenen Crontab-Datei kommen; diese ist damit wesentlich weniger Bearbeitungen ausgesetzt, und damit besser vor ggf auftretenden Fehlern geschützt. Ich würde daher gern die neue Version ins Wiki setzen; ich hoffe, ich "darf" das auch ohne Baustelle. 😉 Schön wäre, wenn noch jemand anders diese Version antesten könnte; meine "empirische Decke" ist momentan etwas dünn... so long hank
|
ds10
Anmeldungsdatum: 20. September 2007
Beiträge: 99
|
Vielleicht wäre es besser, wenn du die tvbrowser.sh umbenennen würdest, denn so heißt schon das Startskript von TV-Browser selbst. Und noch ein Tipp, man kann die Aufnahmesteuerung auf die mittlere Maustaste legen, dann genügt ein Mittelklick auf eine Sendung um das Programmieren der Aufnahme auszulösen.
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! ds10 schrieb: Vielleicht wäre es besser, wenn du die tvbrowser.sh umbenennen würdest, denn so heißt schon das Startskript von TV-Browser selbst.
Jo, das wär' dann wohl besser (war mir nicht bewusst, werd' ich wohl mal einfügen...) Und noch ein Tipp, man kann die Aufnahmesteuerung auf die mittlere Maustaste legen, dann genügt ein Mittelklick auf eine Sendung um das Programmieren der Aufnahme auszulösen.
Auch nicht schlecht... Danke! so long hank
|
ds10
Anmeldungsdatum: 20. September 2007
Beiträge: 99
|
Ich habe die Anleitung jetzt mal probiert, ist aus meiner Sicht recht aufwändig. Was würdest du davon halten, wenn wir da ein deb-Paket draus basteln würden? Das würde ich dann, inklusive der Geräte-Einstellungsdatei der Aufnahmesteuerung, auf den TV-Browser-Server hochladen, damit es im Artikel verlinkt werden kann. Auf diese Weise müsste man nur noch die Sender einstellen, alles andere wäre schon korrekt eingerichtet, nachdem das Paket installiert ist.
|
Heinrich_Schwietering
Wikiteam
(Themenstarter)
Anmeldungsdatum: 12. November 2005
Beiträge: 11290
Wohnort: Bremen
|
Hi! ds10 schrieb: Ich habe die Anleitung jetzt mal probiert, ist aus meiner Sicht recht aufwändig. Was würdest du davon halten, wenn wir da ein deb-Paket draus basteln würden?
Gerne, hab' davon aber noch keine echte Ahnung 😉 Das würde ich dann, inklusive der Geräte-Einstellungsdatei der Aufnahmesteuerung, auf den TV-Browser-Server hochladen, damit es im Artikel verlinkt werden kann.
Wäre natürlich sehr schön, wenn das direkt auf dem Projekt-Server landen könnte, dazu sollte es aber wohl idealerweise nicht nur als deb, sondern auch noch für andere Distributionen (suse, gentoo, fedora etc pp.) getestet werden - theoretisch dürfte es da genauso funktionieren, aber "Sicher ist sicher"... Auf diese Weise müsste man nur noch die Sender einstellen, alles andere wäre schon korrekt eingerichtet, nachdem das Paket installiert ist.
Problem wäre "nur", über welchen Player das Aufnehmen/Wiedergeben lauf soll - oder man müsste es so aufbauen, dass zunächst abgefragt wird, welche Software für welchen Zweck verwendet werden soll. Außerdem müsste man sich noch einigen, welche Version verwendet werden soll - die mit dem Config::Crontab oder die mit "meinem" reinen bash-Ansatz. Die Zapping-Variante ist ja nicht ganz so aufwändig... so long hank
|
ds10
Anmeldungsdatum: 20. September 2007
Beiträge: 99
|
Das Aufnehmen würde ich schon mit MPlayer festlegen, dazu kann man im deb-Paket die entsprechenden Abhängigkeiten unterbringen. Um das deb-Paket würde ich mich schon kümmern. Andere Distributionen kann man immer noch unterstützen, wenn es erstmal unter Ubuntu anständig läuft. (Auch beim TV-Browser-Installationspaket unterstützen wir zur Zeit nur deb, weil sich das so einfach per Ant-Skript erstellen lässt.) Ich würde die Variante mit den Bash-Skripten bevorzugen, das ist im Normalfall auf allen System schon vorhanden. Idee ist die Skripte nach /usr/share/tvbrecording zu installieren, dann kann man auch die Pfade in den Skripten entsprechend setzen, da sie dann auf allen Systemen gleich sind und ein Benutzer muss dort nichts mehr anpassen. Problem ist nur das erste Anlegen der crontab für den entsprechenden Benutzer, aber vielleicht fällt dir noch was ein, wie das in den Skripten selbst gemacht werden kann.
|