Aktueller sectionsd und weitere Ambitionen?

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Ich habe grad mal versucht den Arzka Patch wieder auszuschalten.
Leider klappt das nicht so ganz.
Kann mir jemand sagen was ich hierbei ändern muss?

Beispiel:

Code: Alles auswählen

	#ifdef MULTI_LANGUAGE_EPG
	for (std::map<std::string, std::string>::const_iterator
		i = langName.begin() ;
		i != langName.end() ;
		i++) {
		if (i->second.length()) {
			fprintf(file, "\t\t\t<name lang=\"%s\" string=\"", i->first.c_str());
			saveStringToXMLfile(file, i->second.c_str());
			fprintf(file, "\"/>\n");
		}
	}
	#else
	if(langName().length()) {
		fprintf(file, "\t\t\t<name string=\"");
		saveStringToXMLfile(file, langName().c_str());
		fprintf(file, "\"/>\n");
	}
	#endif
Als Vorlage diente Houdini Patch alter Patch, nur an diesen save xml Stellen happerts.
Boardgeist
Einsteiger
Einsteiger
Beiträge: 107
Registriert: Freitag 15. Juli 2005, 08:44

Beitrag von Boardgeist »

mb405 hat geschrieben:die aktuelle sectionsd frisst auch wieder extrem den speicher.
Kann ich nur bestätigen, selbst wenn ich bei den Einstellungen auf 3 TAGE und z.B. 3000 Events gehe, wird's schon verdammt zäh.
Ich persönlich würde mir einen sectionsd ohne sämtlichen "Zusatz" wünschen, der wenigstens schnelles zappen und problemloses Aufnehmen zuläßt.


gruß boardgeist
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Ich nutze folgende Einstellungen:

Cachen 1 Tag im voraus
180 Minuten rückwirkend
6000 Events

Das ist die einzige Einstellung wo man halbwegs Speicher frei behält.
Boardgeist
Einsteiger
Einsteiger
Beiträge: 107
Registriert: Freitag 15. Juli 2005, 08:44

Beitrag von Boardgeist »

Naja, 1 Tag ist ja nicht gerade die Welle, aber ich versuch's mal, danke.


gruß boardgeist
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Nico 77 hat geschrieben:Ich habe grad mal versucht den Arzka Patch wieder auszuschalten.
Leider klappt das nicht so ganz.
Kann mir jemand sagen was ich hierbei ändern muss?

Beispiel:

Code: Alles auswählen

	#ifdef MULTI_LANGUAGE_EPG
	for (std::map<std::string, std::string>::const_iterator
		i = langName.begin() ;
		i != langName.end() ;
		i++) {
		if (i->second.length()) {
			fprintf(file, "\t\t\t<name lang="%s" string="", i->first.c_str());
			saveStringToXMLfile(file, i->second.c_str());
			fprintf(file, ""/>\n");
		}
	}
	#else
	if(langName().length()) {
		fprintf(file, "\t\t\t<name string="");
		saveStringToXMLfile(file, langName().c_str());
		fprintf(file, ""/>\n");
	}
	#endif
Als Vorlage diente Houdini Patch alter Patch, nur an diesen save xml Stellen happerts.
Hab den Fehler gefunden.

Wem das lahme Bouquetaufzappen auch stört, Source liegt hier:

http://home.arcor.de/mybase/arzka_patch_off.rar

Multilang EPG geht dann natürlich nicht mehr.
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

@Nico
Hab noch einen anderen Patch gemacht um das Aufklappen zu beschleunigen.
Riker hat glaub ich auch schon einen snap gemacht, wird bald eingecheckt.

Houdini
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Das ist natürlich dann noch besser, thx. :)

Könntest du den manuellen Kanalsuche Patch mit Satbetreiber Auswahl mal gegen das aktuelle CVS diff'en?
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

jo, einen Patch dazu mach ich morgen

Edit: da isser
http://home.arcor.de/houdini/dbox/neutr ... 7-40.patch
- OK Aufzapbeschleunigung
- Manueller Scan mit Satauswahl
Innuendo
Einsteiger
Einsteiger
Beiträge: 281
Registriert: Mittwoch 8. Dezember 2004, 21:45

Beitrag von Innuendo »

das aufklappen der menüs ist deutlich besser geworden. da ich nur astra habe muss das scannen mit sat-auswahl wer anders testen.

danke für den patch houdini :D

frage am rande:
ich bekomme mit aktueller cvs sectionsd regelmäßig "[sectionsd] readNbytes: received POLLERR" im log
wenn ich

Code: Alles auswählen

static DMX dmxEIT(0x12, 384);
ändere auf (war mal in irgendeinem alten patch so)

Code: Alles auswählen

static DMX dmxEIT(0x12, 1024);
kommen diese nicht mehr. warum wurde dmxEIT die reservierung wieder auf 384 gedrosselt?

regards
Innu
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Gegenfrage: Was stört an den POLLERR?
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Houdini hat geschrieben:jo, einen Patch dazu mach ich morgen

Edit: da isser
http://home.arcor.de/houdini/dbox/neutr ... 7-40.patch
- OK Aufzapbeschleunigung
- Manueller Scan mit Satauswahl
Super, danke! :)
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

@Houdini
hast ein printf zu viel drin, in der dvb/zapit/src/scan.cpp

Code: Alles auswählen

+	printf("[scan_transponder] scanning sat %s diseqc %d\n", providerName, diseqc_pos);
+	printf("[scan_transponder] freq %d rate %d fec %d pol %d\n", TP->feparams.frequency, TP->feparams.u.qpsk.symbol_rate, TP->feparams.u.qpsk.fec_inner, TP->polarization);
 
 	printf("[scan_transponder] scanning sat %s diseqc %d\n", providerName, diseqc_pos);
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

Thanx
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

:) das kann ich grad noch sehen, das es doppelt ist. vieles andere kann ich nicht mal nachvollziehen :(

ps. woran kann das liegen, das nach änderungen in der channellist.cpp ich immer wieder probleme mit dem abkacken der box bei kanaldirekteingabe habe ?? :gruebel:
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

beschreib mal näher, gibts ne meldung in log?
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Ich habe sowas jetzt auch paar mal gehabt aber es hängt nicht mit direkt mit der channellist zusammen sondern mit dem sectionsd tritt ist mir aber erst seit dem Patch aufgefallen.

Hier ist es so das wenn der dns nicht aufgelöst wird und ich dann die Menüs aufrufe(Bouquetlist z.b.) bleibt die Box komplett hängen.

Code: Alles auswählen

rdate: time.fu-berlin.de: Host name lookup failure
[LCDFONT] FTC_Face_Requester (Fix12/Regular)
[sectionsd] getUTC: read: Connection timed out
rdate: time.fu-berlin.de: Host name lookup failure
[sectionsd] getUTC: read: Connection timed out
rdate: time.fu-berlin.de: Host name lookup failure
[sectionsd] getUTC: read: Connection timed out
[timeThread] Time set via NTP, going to sleep for 1800 seconds.
Der manuelle Kanalsuche Patch der mit integriert ist macht keine Probleme im Kabel auch nicht. deort funktioniert die normale suche weiterhin.
Auch die Zapit haut es nun nach einer Kanalsuche nicht mehr weg, kannst du erklären was nach der Suche nun anders gemacht wird?
Für mich der wichtigste Patch seit langem. :)

Falls der Patch ins CVS commited wird, sollte man vielleicht die manuelle Suche in ein Untermenü erstellen wie die diseqc Einstellungen.

Ps: Bei dem rusischen Dev hier funkt die manuelle Suche auch im Kabel, dort wäre die ja besonders wichtig wenn Leute krumme Symbolraten haben die nicht in der cables.xml stehen.
Vielleicht hat ja jemand einen guten Draht zu, ich habs nicht geschafft den Source rauszuleiern. :-?

Edit: Was muss ich für den channellist Patch ausklammern, möchte mal ohne probieren und schaue wie sich das dann hier verhält?
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

also im log erscheint garnichts.
es reagiert nur keine fernbedienung mehr.
ich habe das problem immer dann, wenn ich dummerweise die channellist.cpp mit kwrite (mein standardeditor) bearbeite. jetzt hab ich das mit patch -p0 ...... gemacht, und siehe da es ging.
es ist nur komisch, das die eine datei da rumspinnt. solange ich mich erinnern kann, ist das schon paar jahre so.
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Nico 77 hat geschrieben:Ich habe sowas jetzt auch paar mal gehabt aber es hängt nicht mit direkt mit der channellist zusammen sondern mit dem sectionsd tritt ist mir aber erst seit dem Patch aufgefallen.

Hier ist es so das wenn der dns nicht aufgelöst wird und ich dann die Menüs aufrufe(Bouquetlist z.b.) bleibt die Box komplett hängen.

Code: Alles auswählen

rdate: time.fu-berlin.de: Host name lookup failure
[LCDFONT] FTC_Face_Requester (Fix12/Regular)
[sectionsd] getUTC: read: Connection timed out
rdate: time.fu-berlin.de: Host name lookup failure
[sectionsd] getUTC: read: Connection timed out
rdate: time.fu-berlin.de: Host name lookup failure
[sectionsd] getUTC: read: Connection timed out
[timeThread] Time set via NTP, going to sleep for 1800 seconds.
Könnte hier mal jemand beim sectionsd reinschauen, also das liegt natürlich nicht an Channellist Patch.
Wenn der dns nicht sofort ausgelöst wird und keine DVB Zeit vorhanden ist schmiert die Box irgendwann Weg wenn sie die Zeit dann doch per NTP bekommt.

Ausprobieren kann man das in dem man auf einen Sender geht den man nicht empfängt, also der kein DVB Signal sendet.

Hier ein Log dazu, sagt aber glaube ich nicht wirklich viel aus.
Anscheinend ist es wohl nicht der sectionsd denn das Log rennt weiter. :gruebel:

http://home.arcor.de/mybase/sectionsd-ntp-log.rar
Zuletzt geändert von Nico 77 am Samstag 3. Juni 2006, 22:45, insgesamt 1-mal geändert.
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

ich schau es mir morgen an
AudioSlyer
Erleuchteter
Erleuchteter
Beiträge: 450
Registriert: Sonntag 28. Juli 2002, 01:18

Beitrag von AudioSlyer »

Wow, der NTP-Patch ist ziemlicher Murks, wenn ich das sagen darf.
first_time liegt brach rum und die zeit wird nicht mehr gegengecheckt, ob valid. Da verrennt sich aber einer, wenn er keine korrekte Zeit vom NTP bekommt.
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Houdini hat geschrieben:jo, einen Patch dazu mach ich morgen

Edit: da isser
http://home.arcor.de/houdini/dbox/neutr ... 7-40.patch
- OK Aufzapbeschleunigung
- Manueller Scan mit Satauswahl
Das war ja jetzt das diff wie es im cvs ist, dieser läuft zwar besser wie ohne Patch aber wenn man große Bouquets hat z.b. das 'Andere' und sich da mittlerweile EPG daten gesammelt haben dann braucht Neutrino zum Umschalten mehrere Sekunden bis sich was tut.

Vor dem kompletten Arzka Patch kann man die Bouquets so durchzappen ohne das bei großen Bouquets zum Stillstand kam.

Der Arzka Patch ist wirklich nicht gut gelungen so wie er im CVS enthalten ist. :(
Zuletzt geändert von Nico 77 am Mittwoch 12. Juli 2006, 14:37, insgesamt 1-mal geändert.
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Könnte mir jemand sagen wo ich den sectionsd wieder so hinbiegen kann das EPG in der alte Reihenfolge gescannt wird wie vor den ganzen Patches?

Es geht nach wie vor um das von mir beschriebene Problem das immer wieder Sendungen im EPG unter rote Taste fehlen und es nicht gerade toll ist das man einen Sender immer mehrere Minuten laufen lassen muss nach dem man diesen einen Tag nicht geschaut hat bis man die fehlenden Info's hat.

Beim sectionsd 1.184 wurde es noch so gescannt und ich würde gerne den EPG wieder so haben wenn ich ihn mit rote Taste aufrufe:
aktuelle Sendung->darauf folgende Sendungen
Also es kamen jeweils die ersten beiden Sendungen und dann alle darauf folgenden.

Beim aktuellen Sectionsd ist das so:
aktuelle Sendung->neuste Sendungen und events->auf aktuelle Sendung folgende Sendungen scannen
Hier werden auch die beiden aktuellen Sendungen als erstes angezeigt, dann kommen die ganzen neuesten Events und dann erst die Sendungen die nach den beiden ersten Sendungen folgen dazwischen geschoben.
Nirvana
Erleuchteter
Erleuchteter
Beiträge: 646
Registriert: Mittwoch 16. April 2003, 14:12

Beitrag von Nirvana »

Nico 77 hat geschrieben: Beim sectionsd 1.184 wurde es noch so gescannt und ich würde gerne den EPG wieder so haben wenn ich ihn mit rote Taste aufrufe:
aktuelle Sendung->darauf folgende Sendungen
Also es kamen jeweils die ersten beiden Sendungen und dann alle darauf folgenden.
Ich formuliere so neutral wie möglich und bitte dies nur als meine eigene bescheidene Meinung zu werten. (Wie alles was schreibe...)

Ich glaube nicht, dass das je so gewesen sein könnte. Dazu hätte der sectionsd ja auf den "Karussellanfang" warten müssen. Warum sollte er das getan haben?
Nico 77
Semiprofi
Semiprofi
Beiträge: 1383
Registriert: Freitag 18. April 2003, 15:12

Beitrag von Nico 77 »

Flash dir ein Image von Juli 2005 und du wirst das direkt feststellen, notfalls mache ich dir auch gerne ein Video davon.

Kann man auf allen Sendern beobachten(die mehrtägigen EPG Senden), nach den ersten beiden Sendungen werden direkt die darauf folgenden gescannt.
Beim neuen immer durcheinander und bis alles da ist muss man immer paar Minuten warten oder ständig hin/her zappen.

Meine Frage beschränkt sich lediglich darauf wo ich ansetzen muss, um mir das meinen Bedürfnissen anpassen zu können dann Versuch ich mir das schon zurecht zu fuddeln. :D
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

@Nico
schau mal ob dieser Patch die Lahmheit der großen Bouquets behebt

Code: Alles auswählen

RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/channellist.cpp,v
retrieving revision 1.179
diff -u -r1.179 channellist.cpp
--- a/channellist.cpp	8 Jun 2006 20:19:43 -0000	1.179
+++ b/channellist.cpp	12 Jul 2006 20:51:46 -0000
@@ -126,11 +126,11 @@
 	t_channel_id *p_requested_channels = NULL;
 	int size_requested_channels = 0;
 
-	if (chanlist.size()) {
-		size_requested_channels = chanlist.size()*sizeof(t_channel_id);
+	if (listmaxshow) {
+		size_requested_channels = listmaxshow*sizeof(t_channel_id);
 		p_requested_channels 	= (t_channel_id*)malloc(size_requested_channels);
-		for (uint count=0; count<chanlist.size(); count++){
-			p_requested_channels[count] = chanlist[count]->channel_id;
+		for (uint count=0; count<listmaxshow; count++){
+			if (liststart+count<chanlist.size()) p_requested_channels[count] = chanlist[liststart+count]->channel_id;
 		}
 	}
 
@@ -234,7 +234,7 @@
 	y=(((g_settings.screen_EndY- g_settings.screen_StartY)-( height+ info_height) ) / 2) + g_settings.screen_StartY;
 
 	paintHead();
-	updateEvents();
+//	updateEvents();
 	paint();
 
 	int oldselected = selected;
@@ -534,7 +534,7 @@
 
 	selected= pos;
 	CChannel* chan = chanlist[selected];
-  lastChList.store (selected, chan->channel_id, forceStoreToLastChannels);
+	lastChList.store (selected, chan->channel_id, forceStoreToLastChannels);
 
 	if ( pos!=(int)tuned )
 	{
@@ -1102,6 +1102,7 @@
 void CChannelList::paint()
 {
 	g_Sectionsd->setPauseSorting( true );
+	updateEvents();
 
 	liststart = (selected/listmaxshow)*listmaxshow;
 	int lastnum =  chanlist[liststart]->number + listmaxshow;