Die Sache mit dem STATE_SEQUENCE_MODIFIED habe ich im CVS gefixt
(obwohl ich nicht weiss, wieso das bei mir dann kompiliert hat )
Für Freetype 2.0.9 war auch noch ein Tippfehler drin , das müsste jetzt auch funktionieren.
dbluelle
Die Sache mit dem STATE_SEQUENCE_MODIFIED habe ich im CVS gefixt
(obwohl ich nicht weiss, wieso das bei mir dann kompiliert hat )
Für Freetype 2.0.9 war auch noch ein Tippfehler drin , das müsste jetzt auch funktionieren.
dbluelle
Die Plugins sind jetzt im CVS.
Ich habe noch ein wenig mit dem PiP rumgespielt und da mal Double-Buffering für den Framebuffer eingebaut (analog zu Tuxtxt).
Dadurch scheint es bei mir etwas weniger zu ruckeln, das kann aber auch nur eine Illusion meinerseits sein
Eine weitere Optimierungsmöglichkeit wäre vielleicht, wenn man irgendwie einbauen könnte, dass nur die Zeilen/Spalten des Bildes dekodiert werden, die auch im PiP angezeigt werden.
Wenn ich das richtig verstanden habe, dann wird bisher jeweils das ganze Bild dekodiert und dann werden die nicht benötigten Bildpunkte rausgefiltert.
Oder gibt es irgendeine Möglichkeit, das von dem MPEG-Dekodierchip der Box machen zu lassen ?
In der libmpeg2 sind ja Assembler-Optimierungen für verschieden Architekturen drin, evtl. gibt's da ja auch was für die Dreambox...
dbluelle
ZitatOriginal von dre
Hier steht, wie du anonym drauf kommst.
Oh Mann, da hätte ich auch von selbst drauf kommen können, da mal nachzuschauen
Danke,
dbluelle
Und ich dachte schon, ich wäre der einzige nicht-DMM-Mitarbeiter, der noch was an Enigma1 macht .
Hast du den Sourcecode auch irgendwo als Tarball oder Diff oder gibt's evtl. einen anonymen CVS-Zugriff?
dbluelle
You can upload the file (or a diff) here, then I (or someone else) will commit it to the CVS.
You can also request an account for the tuxbox cvs (look in the tuxbox forum for details).
dbluelle
Naja, ich dachte, nachdem ich 3 Monate lang nix gemacht hatte, kommt's auf die paar Stunden auch nicht an...
Ist jetzt im CVS.
dbluelle
Ich habe da eben was eingecheckt (eigentlich im Rahmen des "Neutrino-auf-Dreambox-Projekts", siehe http://tuxbox-forum.dreambox-fan.de/forum/viewtopic.php?t=45343 ).
Das müsste auch für Enigma funktionieren, wenn man in cdk/Makefile.am das Target dreamboximage_root analog dreamboximage_neutrinoroot um automount erweitert.
dbluelle
ZitatOriginal von tension
Now if i put on hdd the old files too, these are deleted, not new ones, but the rcS contains the lines for removing of both types of files, old and new named..... and we are not in the init=1 condition.
I still don't understand it :(.
What do you mean by "old" and "new" files?
Do you have code for deleting /hdd/epg.dat in your rcS outside the init=1 condition ?
If that's the case then of course the file is deleted on every boot .
Perhaps you should ask the creators of your other images if they put some weird stuff into their images...
dbluelle
I think I don't quite understand your problem
The epg.dat file is saved to hdd when going to deep standby and loaded when booting again.
As I said above, it is only erased if you do a flash-erase or if you install a new image.
So there's no need to download or upload it .
Maybe something's wrong with your installed image?
Which Dreambox model do you have?
(I can only tell you how this works on my DM7000, but AFAIK it should be the same on the 7020 and the 600)
dbluelle
epg.dat on /hdd should only be removed if you do a flash-erase
or if you boot a new installed image for the first time
see in rcS:
# check if /var/.init exist .. then no flash erase is needed .. this is new !
if [ ! -e /var/.init ]; then
# new /var/.init not found.. check if old /var/tmp/init exist..
# then not flash erase ist needed
if [ -e /var/tmp/init ]; then
# ok old /var/tmp/init exist.. no create the new flash_erase detection file..
touch /var/.init
# delete /var/tmp folder now..
rm -rf /var/tmp
# create link to /tmp <- this is mounted to RAM
ln -sf /tmp /var/tmp
else
# flash erase is needed ...
init=1
fi
fi
.
.
.
.
if [ $init -eq 1 ] ; then
rm /hdd/epg.*
fi
Alles anzeigen
dbluelle
Tja, wie üblich, weil sich bisher noch keiner gefunden hat, der das einbaut .
Das ist sicher auch nicht ganz so einfach zu realisieren,
weil dann ja an allen Ecken und Enden zusätzliche Überprüfungen reinmüssen,
wo bisher einfach auf "Aufnahme läuft" getestet wurde.
Ausserdem muss die Timerverwaltung angepasst werden und
das Timeshifting dürfte auch etwas schwieriger werden...
dbluelle
AFAIK kann man eine zweite Aufnahme per Webinterface/VLC auf dem PC machen.
dbluelle
ZitatOriginal von krallekit
Wenn du so ein Linuxanhänger bist, kauf die die Box akzeptiere die lange Bootzeit, bzw. den enormen Mehrverbrauch von ca. 2W
Es ist doch gerade der "Antrieb" für die meisten Linux-Entwicklungen, daß man eben nicht den derzeitigen Stand akzeptiert, sondern nach Verbesserungen sucht.
Mich persönlich stört die lange Bootzeit auch (generell bei Linux, nicht nur auf der Dreambox), deshalb finde ich die Frage
ZitatWelche praktische Gründe sind es denn, die DMM davon abhalten, bspw. mit http://suspend2.net/ zu arbeiten?
durchaus berechtigt.
dbluelle
Ich habe das mal im CVS gefixt.
Wenn du kein neues Image bauen willst:
Über den "EPG-Overview" funktioniert die Timeraufnahme auch bisher schon.
dbluelle
Falls ihr es noch nicht mitbekommen habt:
Es gibt inzwischen hier schon recht gut funktionierende Ansätze für Neutrino auf der Dreambox
dbluelle
Erstmal vorweg: Ich habe keine DM7025 und mich mit Enigma2 noch nicht befasst, also nicht böse sein, falls ich irgendwas falsch verstanden habe
ZitatOriginal von Seddi
Das würde nur gehen wenn der tuxtxt ein Bestandteil von Enigma2 wäre (so wie bei Enigma1) also als Modul nachgeladen wird. Dies ist aber bei E2 nicht der Fall, da ist der Tuxtxt eine eigene Applikation, daher kann er auch kein cache übernehmen wenn e2 die Daten bereits cachen würde.
Heißt das, Tuxtext ist in E2 ein eigener Prozess? Das halte ich für keine besonders gute Entscheidung.
Ich fand es schon nicht besonders toll, dass Tuxtext in E1 als Plugin realisiert wurde, dadurch wurden einige Änderungen unnötig kompliziert.
(Bei E1 muss man natürlich "Rücksicht" auf Neutrino nehmen, aber das gilt ja nicht für E2...)
Der Teletext ist m.E. genauso eine Standardfunktion wie z.B. der EPG.
Wenn man Tuxtext richtig in E2 integrieren würde wären so Sachen wie Lautstärkeregelung, während Tuxtxt aktiv ist, IMHO wesentlich einfacher einzubauen.
ZitatDas Hintergrund-Caching verschwendet unnötig RAM und wenn ich anschaue wie schnell Teletext inzwischen übertragen wird, dann sehe ich da auch kein grosses Problem weil die Seiten nach dem starten des Tuxtxt innerhalb von Sekunden da sind. Sobald Tuxtxt gestartet ist fängt er ja an zu cachen und hat dann innerhalb ein paar Sekunden den gleichen Stand wie nach dem Starten bei e1 mit aktivem Hintergrundcache.
Das ist allerdings nur für die Seiten korrekt, die oft übertragen werden. Gerade wenn zu einer Seite mehrere Unterseiten gehören, kann das schon mal mehrere Minuten dauern, bis alle Unterseiten wieder da sind (und natürlich kommt nach Murphys Gesetz die Seite, die man eigentlich sehen will, immer als letzte ).
ZitatIch hab das Hintergrundcaching auch bei e1 grundsätzlich aus, da es mir wie gesagt zu wenig Vorteile bringt und zu viel Ram kostet den ich gerne anderen Prozessen zukommen lasse Vielleicht einer der Gründe warum ich auch noch nie einen Swap auf meinen e1 Boxen gebraucht habe
Der Teletext-cache braucht maximal 2MB (und wenn man mit dem Komprimier-Flag compiliert, dann kann man da nochmal bis zu 50% abziehen), das sollte doch auf der 7025 kein Problem darstellen, oder ? Zum Vergleich: Der EPG-Cache nimmt sich in E1 auch bis zu 3MB... )
Auf der DM7000 läuft der Tuxtxt-Cache jedenfalls ohne Swapfile reibungslos.
Achso, bevor jemand fragt: Ich werde das Tuxtext-Caching nicht auf E2 portieren, es sei denn jemand schenkt mir 'ne 7025 (oder 'ne 8000 ;)).
dbluelle
Mal so ins Blaue getippt:
Muss deine my_movie-Variable nicht ein char[] statt eines char sein ?
also:
...
eString my_Service;
char my_video[256];
char my_movie[] = "1:0:1:0:0:0:0:0:0:0:/hdd/movie/cube2.ts\0";
strcpy(my_video,my_movie);
my_Service = eString(my_video);
my_playService(string2ref(my_Service));
...
dbluelle