Test Movieplayer mit "(c) Wabber-Queue"

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Kann ich eigentlich aktuell im JTG vom 10.03.06 die Puffergröße selbst ändern ?
Oder nur mit der oben beschriebenen Methode im ts File zu patchen ?
soweit ich weis geht das mit dem TS patchen nur in der Version 9 - eingecheckt is Version6. lad die 9 von gmo's seite pack sie nach var bin und starte sie aus der start neutrino
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Also ich hab jetzt alles mögliech und unmögliche probiert - ich krieg genpsi nicht für die Box kompiliert. Wäre nett wenns jemand tun könnte.

powerpc-tuxbox-linux-gnu-c++ scheint bei mir irgendwie gar nichts zu machen :gruebel:

Edit:
hat sich erledigt habs scheinbar hingekriegt
Zuletzt geändert von Tommy am Sonntag 12. März 2006, 14:47, insgesamt 1-mal geändert.
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
PauleFoul
Wissender
Wissender
Beiträge: 1839
Registriert: Sonntag 17. August 2003, 01:39

Beitrag von PauleFoul »

Tommy hat geschrieben:Also ich hab jetzt alles mögliech und unmögliche probiert - ich krieg genpsi nicht für die Box kompiliert. Wäre nett wenns jemand tun könnte.

powerpc-tuxbox-linux-gnu-c++ scheint bei mir irgendwie gar nichts zu machen :gruebel:
Das zum Thema: Puffergröße einstellbarmachen. Und wenn nicht über die
GUI, wenigstens als Parameter in der Movieplayer.conf.

Und wir wären alle schon viel weiter...


Gruß
____Paule
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Tommy hat geschrieben:Also ich hab jetzt alles mögliech und unmögliche probiert - ich krieg genpsi nicht für die Box kompiliert. Wäre nett wenns jemand tun könnte.

powerpc-tuxbox-linux-gnu-c++ scheint bei mir irgendwie gar nichts zu machen :gruebel:

Edit:
hat sich erledigt habs scheinbar hingekriegt
Ich stelle mich vermutlich echt zu doof an - kann mir mal jemand sagen welchen compiler (aus dem CDK) ich mit welchen optionen nehmen muß um c++ für tuxbox zu compilieren?
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
Houdini
Developer
Beiträge: 2183
Registriert: Mittwoch 10. Dezember 2003, 07:59

Beitrag von Houdini »

powerpc-tuxbox-linux-gnu-g++
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

@gmo18t & all

Habt ihr euch mal die "englishen" Aenderungen angeschaut...? :gruebel:
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Houdini hat geschrieben:powerpc-tuxbox-linux-gnu-g++
also wenn ich den über konsole in /cdkflash/cdk/bin aufrufe kommt "unknown command" :gruebel:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
saruman
Erleuchteter
Erleuchteter
Beiträge: 682
Registriert: Samstag 13. Juli 2002, 10:05

Beitrag von saruman »

Mach mal ./powerpc-tuxbox-linux-gnu-g++ in dem Verzeichnis oder ruf den mit dem kompletten Pfad auf: /cdkflash/cdk/bin/powerpc-tuxbox-linux-gnu-g++, Du hast das wahrscheinlich nicht im Pfad, daher findet deine Shell das nicht auf Anhieb,
mb405
Tuxboxer
Tuxboxer
Beiträge: 2331
Registriert: Donnerstag 24. März 2005, 21:52

Beitrag von mb405 »

@PT-1
also der unterschied vin deiner angehängten version zu meiner ist die erweiterte dateiabspielfunktion.

Code: Alles auswählen

#ifdef MOVIEBROWSER  
	moviebrowser = NULL;			
#endif /* MOVIEBROWSER */

	tsfilefilter.addFilter ("ts");
	vlcfilefilter.addFilter ("mpg");
	vlcfilefilter.addFilter ("mpeg");
	vlcfilefilter.addFilter ("m2p");
	vlcfilefilter.addFilter ("avi");
	vlcfilefilter.addFilter ("vob");
	vlcfilefilter.addFilter ("mwv");
	vlcfilefilter.addFilter ("m2v");
	vlcfilefilter.addFilter ("bin");
	vlcfilefilter.addFilter ("iso");
	vlcfilefilter.addFilter ("nrg");

	filebrowser->Filter = &tsfilefilter;
}
dann ist in deiner version die einträge neu. was bewirken die ??
Zeile 473

Code: Alles auswählen

addurl += "?control=add&mrl=";
Zeile 1133+1135

Code: Alles auswählen

std::string emptyurl = baseurl;
...
emptyurl += "?control=empty";
jimjack
Interessierter
Interessierter
Beiträge: 24
Registriert: Montag 13. März 2006, 07:51

Beitrag von jimjack »

Hallo und guten Morgen,

ich habe eine Sagem Kabel-Box mit JtG-Neutrino 2.1 und aktuellem Snapshot (Squashfs) vom 10.03. und die neue Neutrino-Bin (neutrino-9) von gmo18t.
ich wollte den streamer, der auf einer NSLU2 läuft und den neuen Movieplayer mit streamer-Unterstützung auf der Box probieren. Neutrino(-9) nach /var/bin kopiert und chmod 755 gemacht. Danach wollte ich das alte Neutrino stoppen (killall -9 neutrino) und das neue Neutrino aus /var/bin starten.
Leider schaltet sich die Box nach killall... aus (Deep-Standby).
Gibt es eventuell noch eine andere Möglichkeit das neue Neutrino zu testen?

MfG
Steffen
saruman
Erleuchteter
Erleuchteter
Beiträge: 682
Registriert: Samstag 13. Juli 2002, 10:05

Beitrag von saruman »

Du musst vorher das start_neutrino abschiessen - das fährt ansonsten nach dem Beenden des Neutrino-Prozesses die Box runter.

Und neutrino bitte nicht mit kill -9 runterfahren, das wäre als würdest Du Dein Auto ausschalten indem Du den Motor rausreisst. Ein kill reicht völlig.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

ist klar da nach dem beenden von neutrino die start_neutrino weiter abgearbeitet wird - das heißt die box heruntergefahren wird

baue statt dem aufruf neutrino -f -u
folgendes in die start_neutrino ein:

Code: Alles auswählen

if [ -e /var/bin/neutrino]; then 
chmod +x /var/bin/neutrino
/var/bin/neutrino -f -u
echo "alternative neutrino gestartet"
else
neutrino -f -u
fi 
dann wird bei jedem start geprüft ob in var/bin eine neutrino liegt und die ggf gestartet. Macht sich zum testen verschiedener Versionen richtig gut - reinkopieren + neustart und gut :lol:
jimjack
Interessierter
Interessierter
Beiträge: 24
Registriert: Montag 13. März 2006, 07:51

Beitrag von jimjack »

Hmmm, sorry, das mit der start_neutrino hatte ich auch schon gelesen, war aber der Meinung die start_neutrino steht im nicht schreibaren Teil des Filesystems.
Kann ich die start_neutrino bei einem Squashfs überhaupt editieren?
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

jimjack hat geschrieben:Hmmm, sorry, das mit der start_neutrino hatte ich auch schon gelesen, war aber der Meinung die start_neutrino steht im nicht schreibaren Teil des Filesystems.
Kann ich die start_neutrino bei einem Squashfs überhaupt editieren?
die start_neutrino liegt in /var/etc/init.d/ und ist bearbeitbar. Sie ist nur nach /etc/init.d verlinkt. Sollte das bei Dir nicht so sein, kannst Du die start_neutrino von /etc/init.d/ nach /var/etc/init.d/ kopieren und dort bearbeiten. Am beste unter telnet:

Code: Alles auswählen

cp /etc/init.d/start_neutrino /var/etc/init.d/start_neutrino
aber bitte vorher gucken ob sie tatsächlich nicht schon in var liegt
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
jimjack
Interessierter
Interessierter
Beiträge: 24
Registriert: Montag 13. März 2006, 07:51

Beitrag von jimjack »

Aha, danke.
Das mit dem Link habe ich nicht gesehen, war wohl gestern abend schon zu dunkel. Dann werde ich das demnächst mal ausprobieren.
jimjack
Interessierter
Interessierter
Beiträge: 24
Registriert: Montag 13. März 2006, 07:51

Beitrag von jimjack »

@saruman:
Okay, das ist ein Argument. Ich nehme bei meinem Auto eigentlich auch den Zündschlüssel...
Stimmt, das Beenden des start_neutrino habe ich auch gelesen, aber nicht ernst genommen. Nun wundert mich nichts mehr.
gmo18t
Erleuchteter
Erleuchteter
Beiträge: 553
Registriert: Freitag 27. Februar 2004, 14:30

Beitrag von gmo18t »

Hi,

im CVS ist - dank Houdini - alles korrekt angekommen: "wabber-edition: v0.8" (entspricht 'neutrino-8' einem binary basierend auf Original CVS noch ohne die Funktion "privates TS-Paket".

Im Gegensatz dazu ist 'neutrino-9' ja ein "streamer enhanced" binary mit der Funktion "privates TS-Packet, dazu gibt's keine Patches für CVS.

Nun hab ich basierend auf dem heutigen CVS-Stand noch ein paar Änderungen gemacht, die ab sofort als neues 'movieplayer-patch.tar' zum Download bereitstehen und eingecheckt werden können, falls das entsprechende 'neutrino-10' ("wabber edition: v1.0") vernünftig läuft.

Die Änderungen im Einzelnen:
  • die max. Anzahl Segmente wird auch hier nun aus dem TS-Stream entnommen, wenn dieser entspr. gepatched ist (neues genpsi).

    Default-Wert für max. Anzahl Segmente ist 24 (war, glauch ich, schon so?).

    Der Optimalwert ist immer noch 3/4 von max wird aber u.U. begrenzt auf 24, damit der "Refill" auch bei große Puffern mit Max. gegen 128 nicht zulange dauert.

    Die Pointer-Queue (also der Puffer) wird nun nicht mehr in einem Stück allokiert, sondern in einzelnen Segmenten, damit auch bei fragmentiertem Speicher nicht so schnell Resourcenmangel eintritt. Es werden auch nur soviele Segmente (mind. aber 6) allokiert wie Speicher vorhanden ist -> das Belassen einer Reserve ist aber noch nicht optimal gelöst :)
viel Spaß beim Testen (und beim Einchecken-Lassen ins CVS) !

- GMo -
Zuletzt geändert von gmo18t am Montag 13. März 2006, 14:15, insgesamt 1-mal geändert.
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

mb405 hat geschrieben:@PT-1
also der unterschied vin deiner angehängten version zu meiner ist die erweiterte dateiabspielfunktion.

Code: Alles auswählen

#ifdef MOVIEBROWSER  
	moviebrowser = NULL;			
#endif /* MOVIEBROWSER */

	tsfilefilter.addFilter ("ts");
	vlcfilefilter.addFilter ("mpg");
	vlcfilefilter.addFilter ("mpeg");
	vlcfilefilter.addFilter ("m2p");
	vlcfilefilter.addFilter ("avi");
	vlcfilefilter.addFilter ("vob");
	vlcfilefilter.addFilter ("mwv");
	vlcfilefilter.addFilter ("m2v");
	vlcfilefilter.addFilter ("bin");
	vlcfilefilter.addFilter ("iso");
	vlcfilefilter.addFilter ("nrg");

	filebrowser->Filter = &tsfilefilter;
}
dann ist in deiner version die einträge neu. was bewirken die ??
Zeile 473

Code: Alles auswählen

addurl += "?control=add&mrl=";
Zeile 1133+1135

Code: Alles auswählen

std::string emptyurl = baseurl;
...
emptyurl += "?control=empty";
Wie schon korrekt erkannt mehr Dateiformate die durch VLC unterstuetzt werden und die andere Aendrung hilf wenn VLC abstuertzt.

So wenn Du oder gmo Lust hast koenntet ihr euch dies ja gerne in die Finale Version uebernehmen.
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

also die 9 war schon ein super Wurf. Ich habe mir "In enemy's hand" dieses WE komplett angeschaut mit Buffer 100. Der Film ist ohne "puffern" durchgelaufen. Zweimal gings bis auf 60 runter lief aber normal weiter. Man beachte - alles über WLAN-g. Ich glaube "Wabber" ist das Ende des ruckelns.

Die 10 teste ich heute Abend, obwohl ich kaum glaube das man noch Verbesserungen (mit bloßem Auge) feststellen kann. :D

@Gmo:
Du wirst im meine abendlichen Gebete mit eingeschlossen :lol:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

@MB & GMO

hier die Email von dem englishe User:
Original 1.123, starts line 213:

#ifdef MOVIEBROWSER
moviebrowser = NULL;
#endif /* MOVIEBROWSER */

tsfilefilter.addFilter ("ts");
vlcfilefilter.addFilter ("mpg");
vlcfilefilter.addFilter ("mpeg");
vlcfilefilter.addFilter ("m2p");
vlcfilefilter.addFilter ("avi");
vlcfilefilter.addFilter ("vob");

My alterations:

#ifdef MOVIEBROWSER
moviebrowser = NULL;
#endif /* MOVIEBROWSER */

tsfilefilter.addFilter ("ts");
vlcfilefilter.addFilter ("mpg");
vlcfilefilter.addFilter ("mpeg");
vlcfilefilter.addFilter ("m2p");
vlcfilefilter.addFilter ("avi");
vlcfilefilter.addFilter ("vob");
vlcfilefilter.addFilter ("wmv");
vlcfilefilter.addFilter ("m2v");


Result 2 lines added.


Original 1.123, starts line 464:
// add MRL
/* demo MRLs:
- DVD: dvdsimple:D:@1:1
- DemoMovie: c:\\TestMovies\\dolby.mpg
- SVCD: vcd:D:@1:1
*/
std::string addurl = baseurl;
addurl += "?control=add&mrl=";

My alterations:

// add MRL
/* demo MRLs:
- DVD: dvdsimple:D:@1:1
- DemoMovie: c:\\TestMovies\\dolby.mpg
- SVCD: vcd:D:@1:1
*/
std::string addurl = baseurl;
addurl += "?control=empty";
addurl += "?control=add&mrl=";

Result 1 line added.


Original 1.123, starts line 1128:

// stop VLC
std::string stopurl = baseurl;
stopurl += "?control=stop";
httpres = sendGetRequest(stopurl, response, false);

My alterations:

// stop VLC
std::string stopurl = baseurl;
std::string emptyurl = baseurl;
stopurl += "?control=stop";
emptyurl += "?control=empty";
httpres = sendGetRequest(stopurl, response, false);


Result 2 lines added.
MOhlmann
Einsteiger
Einsteiger
Beiträge: 205
Registriert: Montag 19. April 2004, 21:09

Beitrag von MOhlmann »

@gmo18t

habe gerade die 10er getestet. Habe die Aufnahme mit genpsi auf 100 segmente gesetzt, aber er ignoriert das irgendwie. Hier noch die log ausgaben

Code: Alles auswählen

[mp] setting parental to (0)
[mp] Startplay
[mp] PlayFileThread starts
[mp] buffer description in TS-stream found, (100) segments proposed
[mp] found pida[0]: 0x007D, ac3=1
[mp] found pida[1]: 0x0079, ac3=0
[mp] found pida[2]: 0x0082, ac3=2
[mp] found pida[3]: 0x0078, ac3=0
[movieplayer.cpp] apid changed to 121
[mp] plain TS file with vpid=(0x006E) apid=(0x0079) ac3=(0)
[mp] buffer (1633344 bytes) created, using (24) total segments, opt = (18)
[mp] entering player loop
[mp] reader thread started ...
[mp] buffering ...
[mp] ... reader thread terminated
[mp] leaving player loop ...
Gruß Michael
gmo18t
Erleuchteter
Erleuchteter
Beiträge: 553
Registriert: Freitag 27. Februar 2004, 14:30

Beitrag von gmo18t »

MOhlmann hat geschrieben:@gmo18t

habe gerade die 10er getestet. Habe die Aufnahme mit genpsi auf 100 segmente gesetzt, aber er ignoriert das irgendwie. Hier noch die log ausgaben

Code: Alles auswählen

[mp] setting parental to (0)
[mp] Startplay
[mp] PlayFileThread starts
[mp] buffer description in TS-stream found, (100) segments proposed
...
[mp] buffer (1633344 bytes) created, using (24) total segments, opt = (18)
...
wahrlich - ich schau mal schnell eben nach für'n Fix ...

- GMo -
gmo18t
Erleuchteter
Erleuchteter
Beiträge: 553
Registriert: Freitag 27. Februar 2004, 14:30

Beitrag von gmo18t »

... sooo, 'neutrino-10' und 'movieplayer-patch.tar' sind jetzt gefixt, bitte erneut laden und testen ...

Edit:
Achtung upload hat geklemmt -> bitte jetzt erst laden !"


- GMo -
Sagem 1x Kabel, AVIA600_vb028, cam-alpha 01_02_105D, int. ucode, .sp_ts + .hw_sections
MOhlmann
Einsteiger
Einsteiger
Beiträge: 205
Registriert: Montag 19. April 2004, 21:09

Beitrag von MOhlmann »

@gmo18t

Könntes du das genpsi binary für linux nicht auch zum Download anbieten. Ich kann das leider nicht selbst Compelieren.

Gruß Michael
MOhlmann
Einsteiger
Einsteiger
Beiträge: 205
Registriert: Montag 19. April 2004, 21:09

Beitrag von MOhlmann »

Hab mal ein bischen mit der 10er getestet. Läuft ganz prima.

Wenn ich allerding mit genpsi die segmente auf 100 setzt und dann das netzwerkkabel abziehe, kommt kein Puffern, sondern der Player geht in den File-Modus zurück.

Habe danach mit verschiedenen Segmentgrößen probiert, bis 60 ist alles OK und ab 80 kommt dan kein Puffern mehr.

Gruß Michael