Letzter Kanal
-
- Einsteiger
- Beiträge: 372
- Registriert: Donnerstag 18. Dezember 2003, 18:45
Letzter Kanal
Hallo mal wieder,
am Wochenende habe ich mich mal wieder geärgert, weil der EPG von SAT1 gesponnen hat. Sonntag morgen auf SAT1 die dbox "gebootet", ewiges warten auf die Synchronisation der Uhrzeit, und dann ein EPG welcher erst um ca. 12:30 anfing (ich hatte um 9:00 Uhr eingeschaltet).
Ähnliche Probleme habe ich auch schon des öfteren bei der RTL Group erleben müssen, komischerweise auch immer am Wochenende.
Wäre es nicht möglich, die Box auf einem fest fixierten Kanal aus dem Tiefschlaf zu erwecken? Ich für meinen Teil habe gute Erfahrungen mit dem WDR, bzw. mit allen Sendern der ARD / ZDF Gruppe - da gab es bisher nie Probleme. Naja, bekomme ich wenigsten etwas für meine GEZ Gebühren
Ich habe hier im Forum gelesen, man kann die "zapit.conf" hin / her kopieren, etc.. aber das ist doch nicht der "wahre Jakob". Wer hat schon Lust, bei jedem neuen AlexW ständig Hand anzulegen? Mit einem aufspielen der Bouquets und Ucodes sollte es doch getan sein, beim wechseln des Image.
Ich fände gut, wenn das konfigurierbar wäre, im SetUp. Also, ob man vom letzten Kanal "booten" möchte, oder von einem vordefiniertem. Der vordefiniete kann gut und gerne Kanal 1 sein, das kann sich in den Bouquets ja gerne jeder zurechtlegen wie er möchte.
Danke fürs zuhören,
en-total
am Wochenende habe ich mich mal wieder geärgert, weil der EPG von SAT1 gesponnen hat. Sonntag morgen auf SAT1 die dbox "gebootet", ewiges warten auf die Synchronisation der Uhrzeit, und dann ein EPG welcher erst um ca. 12:30 anfing (ich hatte um 9:00 Uhr eingeschaltet).
Ähnliche Probleme habe ich auch schon des öfteren bei der RTL Group erleben müssen, komischerweise auch immer am Wochenende.
Wäre es nicht möglich, die Box auf einem fest fixierten Kanal aus dem Tiefschlaf zu erwecken? Ich für meinen Teil habe gute Erfahrungen mit dem WDR, bzw. mit allen Sendern der ARD / ZDF Gruppe - da gab es bisher nie Probleme. Naja, bekomme ich wenigsten etwas für meine GEZ Gebühren
Ich habe hier im Forum gelesen, man kann die "zapit.conf" hin / her kopieren, etc.. aber das ist doch nicht der "wahre Jakob". Wer hat schon Lust, bei jedem neuen AlexW ständig Hand anzulegen? Mit einem aufspielen der Bouquets und Ucodes sollte es doch getan sein, beim wechseln des Image.
Ich fände gut, wenn das konfigurierbar wäre, im SetUp. Also, ob man vom letzten Kanal "booten" möchte, oder von einem vordefiniertem. Der vordefiniete kann gut und gerne Kanal 1 sein, das kann sich in den Bouquets ja gerne jeder zurechtlegen wie er möchte.
Danke fürs zuhören,
en-total
-
- Tuxboxer
- Beiträge: 2634
- Registriert: Samstag 15. November 2003, 09:00
KAnn ich bestätigen.am Wochenende habe ich mich mal wieder geärgert, weil der EPG von SAT1 gesponnen hat. Sonntag morgen auf SAT1 die dbox "gebootet", ewiges warten auf die Synchronisation der Uhrzeit, und dann ein EPG welcher erst um ca. 12:30 anfing (ich hatte um 9:00 Uhr eingeschaltet).
Jedoch lag das nicht an Neutrino.
Da ich das Problem auch mit meiner Nokia hatte auf der noch Betanova läuft, scheint es eher ein Problem des Senders gewesen zu sein, als ein "Neutrino"- oder "Linux"-technisches Problem
-
- Einsteiger
- Beiträge: 372
- Registriert: Donnerstag 18. Dezember 2003, 18:45
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Ich habe die Zeile
in meinem start_neutrino. Dadurch startet immer Neutrino mit Kanal 1. Sicherlich nicht eine Warmduscherlösung aber gets the job . Ich habe keine Nebeneffekte von dem brutalen Überschreiben von zapit.conf feststellen können.
Eine Integration in Neutrino als Benutzerkonfiguration wäre, schätze ich, relativ straight-forward.
Barf
Code: Alles auswählen
echo lastChannelTV=0 > /var/tuxbox/config/zapit/zapit.conf
Eine Integration in Neutrino als Benutzerkonfiguration wäre, schätze ich, relativ straight-forward.
Barf
-
- Senior Member
- Beiträge: 5071
- Registriert: Dienstag 18. September 2001, 00:00
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Leider muss ich mich mit Kabelempfang begnügen (Erdgeschoss, Riesenhochhaus zum Süden) so Probleme mit Diseqc-Einstellungen habe ich nicht festgestellt
Um zu verhindern dass jemand glaubt dass meine Lösung für mich für jemanden andern funktionieren wurde, mache ich folgende Ergänzung:
Z.B.
ist sicherer.
Um zu verhindern dass jemand glaubt dass meine Lösung für mich für jemanden andern funktionieren wurde, mache ich folgende Ergänzung:
Z.B.
Code: Alles auswählen
sed -e 's/lastChannelTV=.*/lastChannelTV=0/' < /var/tuxbox/config/zapit/zapit.conf > /var/tuxbox/config/zapit/zapit.conf
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
-
- Einsteiger
- Beiträge: 372
- Registriert: Donnerstag 18. Dezember 2003, 18:45
Hallo,
erstmal "Frohes neues Jahr"!
Nunja, dann doch lieber die zapit.conf ins /tmp legen, und per symlink darauf verweisen. So behelfe ich mir bisher. Ich weiss jetzt nicht mehr, wer das hier geposted hatte, funktioniert aber:
In "start_neutrino" eine statische "zapit.conf" nach /tmp kopieren, in welcher der lastchannel auf 0 steht.
Vorher natürlich die statische zapit.conf nach /var kopieren, und einen symlink nach /tmp. Also z.B.:
ln -s /var/tuxbox/config/zapit.conf /tmp/zapit.conf
Hmm.. ich hoffe das war nun verständlich, ist schon etwas spät, bzw. früh
Die DiseqC Einstellungen, usw.. bleiben somit natürlich erhalten, und es wird auch nicht ständig unnötigerweise ins FlashRom geschrieben. Ich persönlich finde das ganz sinnvoll.
Hmm.. wenn ich so darüber nachdenke, Barf: Das könnte jeder für sich in sein (Dein) ImageKit übernehmen. Dann wäre es schon nach dem flashen sofort drin, sofern man möchte.
Selbstverständlich wäre es natürlich besser, wenn man das per Neutrino Setup mit dem lastchannel einstellen könnte. Ich bin nicht der CodeFreak in C, aber ich denke mal es war weitaus schwieriger das mit dem lastchannel zu programieren, als einfach nur einen fixen Kanal zu nehmen
erstmal "Frohes neues Jahr"!
Nunja, dann doch lieber die zapit.conf ins /tmp legen, und per symlink darauf verweisen. So behelfe ich mir bisher. Ich weiss jetzt nicht mehr, wer das hier geposted hatte, funktioniert aber:
In "start_neutrino" eine statische "zapit.conf" nach /tmp kopieren, in welcher der lastchannel auf 0 steht.
Vorher natürlich die statische zapit.conf nach /var kopieren, und einen symlink nach /tmp. Also z.B.:
ln -s /var/tuxbox/config/zapit.conf /tmp/zapit.conf
Hmm.. ich hoffe das war nun verständlich, ist schon etwas spät, bzw. früh
Die DiseqC Einstellungen, usw.. bleiben somit natürlich erhalten, und es wird auch nicht ständig unnötigerweise ins FlashRom geschrieben. Ich persönlich finde das ganz sinnvoll.
Hmm.. wenn ich so darüber nachdenke, Barf: Das könnte jeder für sich in sein (Dein) ImageKit übernehmen. Dann wäre es schon nach dem flashen sofort drin, sofern man möchte.
Selbstverständlich wäre es natürlich besser, wenn man das per Neutrino Setup mit dem lastchannel einstellen könnte. Ich bin nicht der CodeFreak in C, aber ich denke mal es war weitaus schwieriger das mit dem lastchannel zu programieren, als einfach nur einen fixen Kanal zu nehmen
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Erst Korrektur zu meine frühere Post:
proggie < file > file
macht nicht was mann erwartet, weil die Shell erst file zu schreiben öffnet (dabei den Inhalt vernichtet), bevor proggie den inhalt sieht. Eine funktionierende Version überlasse ich den Leser als Übung.
proggie < file > file
macht nicht was mann erwartet, weil die Shell erst file zu schreiben öffnet (dabei den Inhalt vernichtet), bevor proggie den inhalt sieht. Eine funktionierende Version überlasse ich den Leser als Übung.
Dadurch verbietest du zapit seine Einstellungen zwischen den Reboots zu speichern (/tmp liegt in (flüchtiges) RAM, und wird bei booten gelöscht). Hat keine Vorteile, es sei denn, du glaubst dass häufiges Schreiben in Flash den Lebensdauer verkurzt. Eine andere Lösung wäre zapit.conf händisch zu editieren, und danach schreibschützen (eigentlich keine schlechte Lösung; unterbindet auch das Schreiben).Nunja, dann doch lieber die zapit.conf ins /tmp legen, und per symlink darauf verweisen.
Genau dazu sind die my-* skripte da.Hmm.. wenn ich so darüber nachdenke, Barf: Das könnte jeder für sich in sein (Dein) ImageKit übernehmen. Dann wäre es schon nach dem flashen sofort drin, sofern man möchte.
Das Problem ist dass zapit kein Tel von Neutrino ist: kann selbständig laufen, wird auch von Enigma, Lcars benutzt(?). zapit wird ausserdem gestartet bevor neutrino, so dass zapit nicht neutrino als userparameterserver benutzen kann. Eine einfache und natürliche Lösung sehe ich z.Z. nicht.Selbstverständlich wäre es natürlich besser, wenn man das per Neutrino Setup mit dem lastchannel einstellen könnte.
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
zu 1.Barf hat geschrieben:[...]
1. Eine andere Lösung wäre zapit.conf händisch zu editieren, und danach schreibschützen (eigentlich keine schlechte Lösung; unterbindet auch das Schreiben).
[...]
2. Eine einfache und natürliche Lösung sehe ich z.Z. nicht.
Damit liessen sich aber auch andere Ptrameter nicht mehr speichern
zu 2. ... als Plugin: "immer mit diesem Kanal starten"
Schon gelesen ???
ENIGMA-DOC
ENIGMA-DOC
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
... sagst du uns wie dein Plugin mit dem zapit der nach nächstem Reboot startet kommuniziert?zu 2. ... als Plugin: "immer mit diesem Kanal starten"
Mann könnte z.B. zapit so modifizieren, dass beim start eine Datei, z.B. /var/tuxbox/config/zapit/last_channel.conf gesucht wird; falls existierend und sinnvoll wird Startkanal davon entnommen. Dann kann neutrino/enigma/lcars/plugins oder der Benutzer direkt diese Datei manipulieren.
Aber, als "einfach" und "natürlich" (aus Programmierersicht) sehe ich eine solche Lösung nicht.
-
- Einsteiger
- Beiträge: 372
- Registriert: Donnerstag 18. Dezember 2003, 18:45
Hi,
alle wieder unter den Lebenden?
alle wieder unter den Lebenden?
Nunja, dann doch lieber die zapit.conf ins /tmp legen, und per symlink darauf verweisen.
Das ist mir klar. Allerdings wäre das nur von Nachteil, wenn ich Einen anderen DiseqC Schalter kaufen würde. Ansonsten geschehen meines Wissens nach keine relevanten Änderungen in zapit.conf.Dadurch verbietest du zapit seine Einstellungen zwischen den Reboots zu speichern (/tmp liegt in (flüchtiges) RAM, und wird bei booten gelöscht).
Das ist in der Tat so. Flash Bausteine sind immer für "xxxxxxx" Schreibzyklen ausgelegt. Ich glaube ja auch nicht, das man die jemals erreicht (ist meistens irgendwas um die 1 Million), aber es ist nicht von Nachteil unnötigen Zugriff zu vermeiden. Ich meine, warum sollte ich ständig etwas in die zapit.conf schreiben, was ich eh nicht drin haben möchte?Hat keine Vorteile, es sei denn, du glaubst dass häufiges Schreiben in Flash den Lebensdauer verkurzt.
Das ist leider nicht möglich, daran hatte ich auch schon gedacht. Allerdings wird mit root Rechten in die Datei geschrieben, und der hat immer Schreibrechte, auch bei chmod 400Eine andere Lösung wäre zapit.conf händisch zu editieren, und danach schreibschützen (eigentlich keine schlechte Lösung; unterbindet auch das Schreiben).
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
Als Shellscript:Barf hat geschrieben:... sagst du uns wie dein Plugin mit dem zapit der nach nächstem Reboot startet kommuniziert?zu 2. ... als Plugin: "immer mit diesem Kanal starten"
Code: Alles auswählen
echo lastChannelTV=0 >/var/tuxbox/config/zapit.start
grep -vi lastChannelTV= /var/tuxbox/config/zapit.conf >>zapit.start
Code: Alles auswählen
#!/bin/sh
/bin/sectionsd
/bin/timerd
mv /var/tuxbox/config/zapit.start /var/tuxbox/config/zapit.conf
...
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Folgende Patch zu zapit.cpp sollte die "dirty tricks" eliminieren. Mit dem -a option wird die gewünschte Startkanal von /var/tuxbox/config/zapit/start_channel.conf gelesen. Mehr info im Code. essu, du kannst jetzt loslegen und dein Plugin schreiben.
Mit -r (readonly) wird zapit.conf nicht geschrieben, was flash-schreibzykel spart. (Dadurch bekommt mann auch eine Möglichkeit, immer mit dem selben Kanal zu starten.)
Mit -r (readonly) wird zapit.conf nicht geschrieben, was flash-schreibzykel spart. (Dadurch bekommt mann auch eine Möglichkeit, immer mit dem selben Kanal zu starten.)
Code: Alles auswählen
--- zapit.cpp.orig 2003-12-20 12:41:09.000000000 +0100
+++ zapit.cpp 2004-01-01 18:11:17.000000000 +0100
@@ -22,6 +22,32 @@
*
*/
+/*
+ Options:
+ -d Debugmode: Don't fork, additionally generate debugging messages
+
+ -q Be quiet.
+
+ -r (readonly) Normally, zapit writes the values of some internal
+ parameters to the configuration file
+ /var/tuxbox/config/zapit/zapit.conf. These include the last selected
+ (TV or Radio) channel, and some satellite related parameters. If
+ this is not desired, e.g. due to concern about "wearing out"
+ flashmemory, or simply because remembrance of the last channel
+ selected is not desirable, the -r option will inhibit the saving,
+ however not the reading of the configuration file.
+
+ -a (alternative_configuration_file) Using this option, zapit when
+ starting will look for an alternative configuration file,
+ /var/tuxbox/config/zapit/start_channel.conf. If found, and with
+ sensible content it will be used to select the inital channel. The
+ first line should contain the channel number (one minus the number
+ the user sees). Optionally, if the second line is present and starts with the
+ letter 'r', the channel will be considered a radio channel.
+ In all other cases, it is interpreted as a TV channel.
+*/
+
+
/* system headers */
#include <csignal>
#include <fcntl.h>
@@ -91,6 +117,10 @@
bool playbackStopForced = false;
int debug = 0;
+bool readonly = false;
+bool alternative_config_file = false;
+#define ALTERNATIVE_CONFIG_FILENAME "/var/tuxbox/config/zapit/start_channel.conf"
+
int waitForMotor = 0;
int motorRotationSpeed = 0; //in 0.1 degrees per second
diseqc_t diseqcType;
@@ -131,6 +161,8 @@
void saveSettings(bool write)
{
+ if (readonly)
+ return;
if (channel) {
config.setInt32("lastChannelMode", (currentMode & RADIO_MODE) ? 1 : 0);
@@ -152,13 +184,32 @@
CZapitClient::responseGetLastChannel load_settings(void)
{
CZapitClient::responseGetLastChannel lastchannel;
-
+ bool success = false;
+ if (alternative_config_file) {
+ lastchannel.mode = 't';
+ FILE *f = fopen(ALTERNATIVE_CONFIG_FILENAME, "r");
+ if (f) {
+ char s[1000];
+ success = fgets(s, 1000, f) != NULL;
+ if (success) {
+ sscanf(s, "%d", &lastchannel.channelNumber);
+ if (fgets(s, 1000, f)) {
+ lastchannel.mode = s[0] == 'r' ? 'r' : 't';
+ }
+ printf("**** Found channel %d, type %c\n", lastchannel.channelNumber, lastchannel.mode);
+ }
+ fclose(f);
+ }
+ }
+ if (!success) {
+
if (config.getInt32("lastChannelMode", 0))
lastchannel.mode = 'r';
else
lastchannel.mode = 't';
lastchannel.channelNumber = config.getInt32((currentMode & RADIO_MODE) ? "lastChannelRadio" : "lastChannelTV", 0);
+ }
return lastchannel;
}
@@ -1591,6 +1642,11 @@
fprintf(stdout, "$Id: zapit.cpp,v 1.339 2003/12/19 23:35:47 derget Exp $\n");
for (int i = 1; i < argc ; i++) {
+ if (!strcmp(argv[i], "-r")) {
+ readonly = true;
+ } else if (!strcmp(argv[i], "-a")) {
+ alternative_config_file = true;
+ } else
if (!strcmp(argv[i], "-d")) {
debug = true;
}
@@ -1607,7 +1663,7 @@
close(fd);
}
else {
- fprintf(stderr, "Usage: %s [-d] [-q]\n", argv[0]);
+ fprintf(stderr, "Usage: %s [-d] [-q] [-r] [-a]\n", argv[0]);
return EXIT_FAILURE;
}
}
-
- Tuxboxer
- Beiträge: 2452
- Registriert: Montag 21. Oktober 2002, 10:04
Der start_neutrino muss sowieso geändert werden:
das plugin:
----edit---
so habs angepasst.
Bei dieser Lösung wird beim ersten Aufruf des Plugins der aktuelle Kanal als Startkanal festgelegt, beim nächsten Aufruf des Plugins wird wie gewöhnlich mit dem letzten Kanal gestartet und so weiter hin und her.
Es gäbe auch noch ne Variante mit zwei Shellscripten, muss aber nicht sein oder?
Die -r Option für zapit finde ich ehrlich gesagt überflüssig
Code: Alles auswählen
#!/bin/sh
/bin/sectionsd
/bin/timerd
/bin/zapit -a
if [ -x /var/bin/camd2 ]; then
...
Code: Alles auswählen
#!/bin/sh
if [ -e /var/tuxbox/config/zapit/start_channel.conf ];then
rm /var/tuxbox/config/zapit/start_channel.conf
elif
grep -i lastChannelTV= /var/tuxbox/config/zapit/zapit.conf >/var/tuxbox/config/zapit/start_channel.conf
fi
#und weiterer Code um die cfg umzuschreiben, spar ich mir jetzt;)
so habs angepasst.
Bei dieser Lösung wird beim ersten Aufruf des Plugins der aktuelle Kanal als Startkanal festgelegt, beim nächsten Aufruf des Plugins wird wie gewöhnlich mit dem letzten Kanal gestartet und so weiter hin und her.
Es gäbe auch noch ne Variante mit zwei Shellscripten, muss aber nicht sein oder?
Die -r Option für zapit finde ich ehrlich gesagt überflüssig
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
Hallo
Ich finde da ganz gut
Ich hab mir die aktuelle zappit.cpp (1.357)mal angeschaut. Da gibt es die Optionen -d -q -u . Wre es nicht toll, das mal auf den aktuellen cvs stand anzupassen ?? ich komm ab hier net weiter
@@ -152,13 +184,32 @@
CZapitClient::responseGetLastChannel load_settings(void)
.
.
Hat jemand nen Tip für das ändern ??
Ich finde da ganz gut
Ich hab mir die aktuelle zappit.cpp (1.357)mal angeschaut. Da gibt es die Optionen -d -q -u . Wre es nicht toll, das mal auf den aktuellen cvs stand anzupassen ?? ich komm ab hier net weiter
@@ -152,13 +184,32 @@
CZapitClient::responseGetLastChannel load_settings(void)
.
.
Hat jemand nen Tip für das ändern ??
-
- Developer
- Beiträge: 1475
- Registriert: Dienstag 4. Februar 2003, 22:02
Der Patch oben ist nicht mehr aktuell, und wird nicht aktualisiert. Auf meinem d-box-Page habe ich den nach "Obsolete" verschoben. Der Grund ist dass mann schon in dem CVS-zapit startverhältniss der Box wählen kann: falls in zapit.conf es steht
saveLastChannel=false
bekommt wird die dbox sich nicht den letzten Kanal erinnern, sondern startet mit dem in lastChannelTV (oder lastChannelRadio) gespeicherte Kanal. (Dies ist kein Versuch Dokumentation zu schreiben ) Kein Beate Uhse mehr am Morgen
@fernsehass: Dies antwortet auch dein Email an mich. Sorry dass es etwas dauerte...
saveLastChannel=false
bekommt wird die dbox sich nicht den letzten Kanal erinnern, sondern startet mit dem in lastChannelTV (oder lastChannelRadio) gespeicherte Kanal. (Dies ist kein Versuch Dokumentation zu schreiben ) Kein Beate Uhse mehr am Morgen
@fernsehass: Dies antwortet auch dein Email an mich. Sorry dass es etwas dauerte...
-
- Einsteiger
- Beiträge: 297
- Registriert: Sonntag 13. Oktober 2002, 22:02
Kein Problem
Ich möchte aber nun das so lösen, das ich den eintrag auf true und false aus dem Image heraus ändern kann. Gibts da ne "saubere" Lösung ??
Hab ich von dir weiter oben
sed -e 's/SaveLastChannel=.*/SaveLastChannel=true/' < /var/tuxbox/config/zapit/zapit.conf > /var/tuxbox/config/zapit/zapit.conf
wenn true als option ?
sed -e 's/SaveLastChannel=.*/SaveLastChannel=false/' < /var/tuxbox/config/zapit/zapit.conf > /var/tuxbox/config/zapit/zapit.conf
wenn false als option ?
Kann man das im Image mit system("...."); machen ???
Ich möchte aber nun das so lösen, das ich den eintrag auf true und false aus dem Image heraus ändern kann. Gibts da ne "saubere" Lösung ??
Hab ich von dir weiter oben
sed -e 's/SaveLastChannel=.*/SaveLastChannel=true/' < /var/tuxbox/config/zapit/zapit.conf > /var/tuxbox/config/zapit/zapit.conf
wenn true als option ?
sed -e 's/SaveLastChannel=.*/SaveLastChannel=false/' < /var/tuxbox/config/zapit/zapit.conf > /var/tuxbox/config/zapit/zapit.conf
wenn false als option ?
Kann man das im Image mit system("...."); machen ???