EPG Titel im LCD
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Kann bitte mal jemand meinen Fix aus dem letzten Post ins CVS einchecken? Ich bin der festen Überzeugung, dass der funktioniert.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
Patch nochmals aktualisiert, die Reihenfolge der Locale-Einträge dürfte nun endlich korrekt sein.rhabarber1848 hat geschrieben:Patch aktualisiert, wieder etwas dazugelernt, danke!rhabarber1848 hat geschrieben:neutrino_lcd_nameshort.diff
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
Konntest Du schon ein Image selbst kompilieren? Hast Du Deinen Code testen können?Gaucho316 hat geschrieben:Kann bitte mal jemand meinen Fix aus dem letzten Post ins CVS einchecken? Ich bin der festen Überzeugung, dass der funktioniert.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Ich habe mir ja jetzt am Wochenende eine Kompilierumgebung zusammengebaut. Ein Image aus dem CVS-Code habe ich testweise auch schon erstellt. Mehr aber leider aus Zeitmangel noch nicht. Ich werde demnächst mal alle meine Patches zusammenfassen und bei mir ausprobieren. Ich melde mich dann im Commit-Wünsche-Thread wieder.
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: EPG Titel im LCD
@rhabarber1848Gaucho316 hat geschrieben:Ich glaube, dass ich die Lösung für dieses Problem gefunden habe. Dieser Patch ist aber wie immer ungetestet.Gaucho316 hat geschrieben:Hat man beim Abspielstart eine Tonspur auszuwählen bzw. drückt die Tonwahltaste (grüne Taste) während des Abspielens, erscheint nach Auswahl einer Tonspur die falsche LCD-Anzeige, also Sendername und Sendungstitel des zuletzt gesehenen Senders statt dem Namen der Aufnahmedatei.
Der Dir bekannte LCD Fix , bringt auch diesen Fehler ins reine.
Allerdings habe ich, patchunabhängig, bei der testerei festgestellt, das das Bild einfriert, wenn
man während der Film läuft, die Tonspur erneut auswählt. Ton läuft weiter. Natürlich nur im MP1
Vielleicht hilft ein "softreset"?? seife kann bestimmt etwas dazu sagen.
Hier nochmal der Patch falls einer drüberblicken möchte.
Code: Alles auswählen
Index: apps/tuxbox/neutrino/src/gui/movieplayer.cpp
===================================================================
RCS file: /cvs/tuxbox/apps/tuxbox/neutrino/src/gui/movieplayer.cpp,v
retrieving revision 1.164
diff -U3 -r1.164 movieplayer.cpp
--- a/apps/tuxbox/neutrino/src/gui/movieplayer.cpp 16 Jan 2009 16:19:35 -0000 1.164
+++ b/apps/tuxbox/neutrino/src/gui/movieplayer.cpp 3 Feb 2009 20:18:03 -0000
@@ -348,6 +348,7 @@
#endif /* MOVIEBROWSER */
if(bookmarkmanager)
delete bookmarkmanager;
+ CLCD::getInstance()->setMode(CLCD::MODE_TVRADIO);
g_Zapit->setStandby (false);
g_Sectionsd->setPauseScanning (false);
@@ -420,9 +421,7 @@
// tell neutrino we're in ts_mode
CNeutrinoApp::getInstance ()->handleMsg (NeutrinoMessages::CHANGEMODE, NeutrinoMessages::mode_ts);
// remember last mode
- m_LastMode =
- (CNeutrinoApp::getInstance ()->
- getLastMode () | NeutrinoMessages::norezap );
+ m_LastMode = (CNeutrinoApp::getInstance()->getLastMode() | NeutrinoMessages::norezap);
// Stop sectionsd
g_Sectionsd->setPauseScanning (true);
@@ -487,7 +486,7 @@
startfilename = theBookmark->getUrl();
sscanf (theBookmark->getTime(), "%lld", &g_startposition);
int vlcpos = startfilename.rfind("vlc://");
- CLCD::getInstance()->setMode (CLCD::MODE_TVRADIO);
+ CLCD::getInstance()->setMode(CLCD::MODE_MOVIE);
if(vlcpos==0)
{
PlayStream (STREAMTYPE_FILE);
@@ -515,7 +514,7 @@
}
// Restore last mode
- if (true == g_ZapitsetStandbyState)
+ if (g_ZapitsetStandbyState)
{
g_Zapit->setStandby (false);
}
@@ -530,13 +529,13 @@
// Restore last mode
CNeutrinoApp::getInstance ()->handleMsg (NeutrinoMessages::CHANGEMODE, m_LastMode);
g_RCInput->postMsg( NeutrinoMessages::SHOW_INFOBAR, 0 );
+ CLCD::getInstance()->setMode(CLCD::MODE_TVRADIO);
- CLCD::getInstance()->showServicename(g_RemoteControl->getCurrentChannelName());
// always exit all
if(bookmarkmanager)
{
delete bookmarkmanager;
- bookmarkmanager=0;
+ bookmarkmanager = NULL;
}
if(moviebrowser != NULL && movieBrowserDelOnExit == true)
@@ -977,7 +976,7 @@
//-- lcd stuff --
int cPercent = 0;
int lPercent = -1;
- g_lcdSetting = g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME];
+
CURLcode httpres;
struct dmx_pes_filter_params p;
ssize_t wr;
@@ -1203,10 +1202,8 @@
if (counter == 0 || counter == 120) {
cPercent = (VlcGetStreamTime() * 100) / length;
if (lPercent != cPercent) {
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME] = g_lcdSetting;
lPercent = cPercent;
- CLCD::getInstance()->showPercentOver(cPercent);
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME] = 1;
+ CLCD::getInstance()->showPercentOver(lPercent, true, CLCD::MODE_MOVIE);
}
counter = 119;
} else {
@@ -1260,7 +1257,6 @@
checkAspectRatio(vdec, false);
}
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=g_lcdSetting;
ioctl (vdec, VIDEO_STOP);
ioctl (adec, AUDIO_STOP);
@@ -1328,7 +1324,7 @@
StrSearchReplace(lcd,"_", " ");
break;
}
- CLCD::getInstance()->showMoviename(lcd);
+ CLCD::getInstance()->setMovieInfo("", lcd);
}
// GMO snip start ...
@@ -2358,7 +2354,6 @@
if(ctx->isStream) break;
if(g_lcdSetting != -1)
{
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=g_lcdSetting;
g_lcdUpdateTsMode=true;
}
if(g_settings.streaming_use_buffer)
@@ -2899,7 +2894,6 @@
//-- lcd stuff --
int cPercent = 0;
int lPercent = -1;
- g_lcdSetting = g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME];
//== (II) player loop: consists of "writer" in this thread and ==
//== "reader" in an extra thread encapsulated by a queue object, ==
@@ -2929,10 +2923,8 @@
{
if (lPercent != cPercent)
{
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=g_lcdSetting;
lPercent = cPercent;
- CLCD::getInstance()->showPercentOver(cPercent);
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=1;
+ CLCD::getInstance()->showPercentOver(lPercent, true, CLCD::MODE_MOVIE);
}
}
}
@@ -2963,7 +2955,7 @@
//lcd
short last_prozent=1;
g_prozent = 0;
- g_lcdSetting=g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME];
+
while( (ctx->itChanged == false) &&
(g_playstate >= CMoviePlayerGui::PLAY) )
{
@@ -2995,11 +2987,9 @@
g_prozent=(ctx->pos*100)/ctx->fileSize;
if((last_prozent !=g_prozent && g_lcdSetting!=1) || g_lcdUpdateTsMode)
{
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=g_lcdSetting;
- last_prozent=g_prozent;
- g_lcdUpdateTsMode=false;
- CLCD::getInstance()->showPercentOver(g_prozent);
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=1;
+ last_prozent = g_prozent;
+ g_lcdUpdateTsMode = false;
+ CLCD::getInstance()->showPercentOver(last_prozent, true, CLCD::MODE_MOVIE);
}
//-- write stream data now --
write(ctx->dvr, ctx->tmpBuf, rd);
@@ -3007,7 +2997,6 @@
}
//-- restore original lcd settings --
- g_settings.lcd_setting[SNeutrinoSettings::LCD_SHOW_VOLUME]=g_lcdSetting;
//-- close input stream --
//------------------------
@@ -3430,7 +3419,7 @@
break;
}
- CLCD::getInstance()->setMode (CLCD::MODE_TVRADIO);
+ CLCD::getInstance()->setMode(CLCD::MODE_MOVIE);
update_lcd = true;
}
@@ -4138,8 +4127,8 @@
if(g_playstate == CMoviePlayerGui::STOPPED)
break;
}
-
- CLCD::getInstance ()->setMode (CLCD::MODE_TVRADIO);
+ CLCD::getInstance()->setMode(CLCD::MODE_MOVIE);
+
}
if(update_info)
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Ersetzt dieser Patch also die von mir "geworkaroundeten" Sachen aus diesem Posting?
http://tuxbox-forum.dreambox-fan.de/for ... 77#p364677
Das wäre ja wunderbar. Es richtig zu lösen ist natürlich besser. Dafür fehlt mir aber wohl noch etwas der Durchblick.
Eine Optimierung in movieplayer.cpp, die sich im Code unter obigem Link versteckt, kann aber trotzdem eingecheckt werden. Ich spreche von der Verschiebung von Guckt euch das mal im verlinkten Code an. Falls unklar ist, was ich meine, kann ich ein Diff posten.
http://tuxbox-forum.dreambox-fan.de/for ... 77#p364677
Das wäre ja wunderbar. Es richtig zu lösen ist natürlich besser. Dafür fehlt mir aber wohl noch etwas der Durchblick.
Eine Optimierung in movieplayer.cpp, die sich im Code unter obigem Link versteckt, kann aber trotzdem eingecheckt werden. Ich spreche von der Verschiebung von
Code: Alles auswählen
#endif /* MOVIEBROWSER */
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
committedrhabarber1848 hat geschrieben:Patch nochmals aktualisiert, die Reihenfolge der Locale-Einträge dürfte nun endlich korrekt sein.rhabarber1848 hat geschrieben:Patch aktualisiert, wieder etwas dazugelernt, danke!rhabarber1848 hat geschrieben:neutrino_lcd_nameshort.diff
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
*schieb*
Könnte die Kombination aus den folgenden zwei verlinkten Patches aus diesem Thread bitte endlich ins CVS wandern? Ich möchte nicht, dass die verloren gehen.
http://tuxbox-forum.dreambox-fan.de/for ... 36#p365036
http://tuxbox-forum.dreambox-fan.de/for ... 48#p365048
Könnte die Kombination aus den folgenden zwei verlinkten Patches aus diesem Thread bitte endlich ins CVS wandern? Ich möchte nicht, dass die verloren gehen.
http://tuxbox-forum.dreambox-fan.de/for ... 36#p365036
http://tuxbox-forum.dreambox-fan.de/for ... 48#p365048
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
So, ich habe mal die ganzen Patches zusammengepackt,
aber ohne white-space-Änderungen: EDIT: Patch ist im CVS
@ alle Beteiligten: Bitte schaut Euch nochmal den Patch an, ich habe ihn nicht getestet.
aber ohne white-space-Änderungen: EDIT: Patch ist im CVS
@ alle Beteiligten: Bitte schaut Euch nochmal den Patch an, ich habe ihn nicht getestet.
Zuletzt geändert von rhabarber1848 am Sonntag 1. März 2009, 15:04, insgesamt 2-mal geändert.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Die Zeile "break; // do not process the old stuff" kann auch noch "rausgedifft" werden. Das break nach dem "#endif /* MOVIEBROWSER */" wird ja in jedem Falle ausgeführt.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
Aktualisiert, aber immer noch von mir ungetestet: EDIT: Patch ist im CVSGaucho316 hat geschrieben:Die Zeile "break; // do not process the old stuff" kann auch noch "rausgedifft" werden
Zuletzt geändert von rhabarber1848 am Sonntag 1. März 2009, 15:04, insgesamt 1-mal geändert.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
Patch ist im CVS
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Danke.
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: EPG Titel im LCD
Dito.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Durch den heute veröffentlichten JtG-Snap konnte ich die Änderungen endlich auch mal sehen. Funktioniert gut. Allerdings ist die Anzeige des Audio-Typs im LCD im Movieplayer verloren gegangen. Ist das ein Bug oder Feature? Ich habe mir das mal in lcdd.cpp angesehen. Laut dortigem Code könnte es Absicht sein, muss aber nicht.
Außerdem ist die Funktion "showMoviename" in lcdd.cpp nun wohl überflüssig und kann entfernt werden.
Außerdem ist die Funktion "showMoviename" in lcdd.cpp nun wohl überflüssig und kann entfernt werden.
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: EPG Titel im LCD
Sieht wohl so aus.Gaucho316 hat geschrieben:Außerdem ist die Funktion "showMoviename" in lcdd.cpp nun wohl überflüssig und kann entfernt werden.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
@seife
Also nochmal die Frage: Ist es ein Bug oder Feature, dass die Anzeige des Audio-Typs im LCD im Movieplayer durch eine deiner Änderungen verloren gegangen ist? Konkret handelt es sich um einen Teil der folgenden Änderung: http://cvs.tuxbox.org/lists/tuxbox-cvs- ... 00175.html
Also nochmal die Frage: Ist es ein Bug oder Feature, dass die Anzeige des Audio-Typs im LCD im Movieplayer durch eine deiner Änderungen verloren gegangen ist? Konkret handelt es sich um einen Teil der folgenden Änderung: http://cvs.tuxbox.org/lists/tuxbox-cvs- ... 00175.html
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: EPG Titel im LCD
Finde mal raus, um welchen Teil es sich handelt. (ich vermute, um diesen:
Welches Feature ist das genau? Das dolby/stereo-Icon? Ich habe das nicht eingestellt, drum ist es mir nicht aufgefallen ;-)
Also anders ausgedrückt: nein, Absicht ist es nicht.
Code: Alles auswählen
-void CLCD::showPercentOver(const unsigned char perc, const bool perform_update)
+void CLCD::showPercentOver(const unsigned char perc, const bool perform_update, const MODES m)
{
+ if (mode != m)
+ return;
+
Also anders ausgedrückt: nein, Absicht ist es nicht.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
Ja genau, es geht um das Stereo-/DD-Icon. Schuld müsste folgende Änderung sein: Dadurch wird das Zeichnen des Audio-Symbols im Movieplayer nicht mehr ausgeführt.
Code: Alles auswählen
- if(g_RemoteControl != NULL)
+
+ if (g_RemoteControl != NULL && mode == MODE_TVRADIO)
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: EPG Titel im LCD
ich schau's mir an.
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: EPG Titel im LCD
In diesem Thread geht's weiter mit der Lösung des Problems der fehlenden Anzeige des Audio-Typs im LCD im Movieplayer.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: EPG Titel im LCD
SnowHead hat den EPG-LCD-Code etwas abgewandelt, was mir persönlich besser gefällt,
da in der Einstellung "Kanal kurz / Sendung" die Anzeige der Sendernamen länger ist.
Allerdings wird dafür ein kleinerer Zeichensatz verwendet.
Bevor ich etwas ins CVS committe, möchte ich hier einige lcshots zeigen:
Links immer die veränderte Version, rechts das CVS-Original:
Hier der Patch zum Thema: lcdd.diff
da in der Einstellung "Kanal kurz / Sendung" die Anzeige der Sendernamen länger ist.
Allerdings wird dafür ein kleinerer Zeichensatz verwendet.
Bevor ich etwas ins CVS committe, möchte ich hier einige lcshots zeigen:
Links immer die veränderte Version, rechts das CVS-Original:
Hier der Patch zum Thema: lcdd.diff
-
- Erleuchteter
- Beiträge: 625
- Registriert: Samstag 8. September 2007, 16:17
-
- Contributor
- Beiträge: 1509
- Registriert: Donnerstag 27. Dezember 2007, 12:59
Re: EPG Titel im LCD
Dito.
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: EPG Titel im LCD
Was - ausser dem Zeichensatz - ist da jetzt anders?
Ansonsten - Coding style:mussheissen, bitte und als
vermutlich noch ein paar mehr
Ansonsten - Coding style:
Code: Alles auswählen
if(namelines==1 && eventlines==1)
Code: Alles auswählen
if (namelines == 1 && eventlines == 1)
Code: Alles auswählen
if(maxnamelines>1)
Code: Alles auswählen
if (maxnamelines > 1)
Code: Alles auswählen
lcentered=false;
Code: Alles auswählen
lcentered = false;