[GELÖST] ProjectX läuft einfach nicht

  • Hallo,


    zahlreiche Stunden sind inzwischen an konfig-Aufwand in Projectx geflossen und es läuft immer noch nicht. Aber zumindest war ich noch nie so weit.


    nach einigen falschen Anläufen bin ich mit dieser Anleitung ziehmlich weit gekommen:


    http://www.vdr-portal.de/board/thread.php?postid=296634#post296634


    was immer noch nicht automatisch klappt ist das starten von Xvfb. Das habe ich aber fürs erste manuell gelöst. In einer konsole habe ich Xvfb folgendermassen gestartet.


    Code
    /usr/bin/X11/Xvfb :1
    _XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
    _XSERVTransOpen: transport open failed for inet6/Erde:1
    _XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
    Could not init font path element /usr/X11R6/lib/X11/fonts/TTF/, removing from list!
    Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!
    FreeFontPath: FPE "/usr/X11R6/lib/X11/fonts/misc/" refcount is 2, should be 1; fixing.
    Could not init font path element /usr/X11R6/lib/X11/fonts/TTF/, removing from list!
    Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!


    Zum testen habe ich ein 70MB grosses vdr-file erzeugt. Das leider nicht funktioniert.
    Vielleicht liest jemand mit, der sich auskennt. im vdr2dvd.log wird behauptet, dass


    Code
    Loading last Config or Standard File...
    Fehler beim Laden der ini Datei: java.io.FileNotFoundException: /var/lib/video.00/film/tmp/vdr2dvd/VDRSYNC.vd4U3H/X.ini (No such file or directory)
    Loading Language -> 'en'


    die x.ini datei fehlt. Da dies der erste fehler ist der Auftritt, könnten die nachfolgenden Fehler Folgefehler sein. Weis jemand, wo dieses X.ini Datei herkommen soll ?


    bin für jede Idee dankbar...


    bernie



    ps nachfolgend noch das komplette log



  • Schaut irgendwie seltsam aus :)

    Code
    nice -n 15 /usr/lib/j2re1.4-sun/bin/java -jar /usr/lib/vdrconvert/share/vdrconvert/pX/pX.jar -c /usr/lib/vdrconvert/share/vdrconvert/pX/pX.ini -o /var/lib/video.00/film/tmp/vdr2dvd/VDRSYNC.vd4U3H /var/lib/video.00/McLeods_Töchter/2006-03-29.15.03.50.99.rec/001.vdr


    Gibts die pX.ini in /usr/lib/vdrconvert/share/vdrconvert/pX/pX.ini?
    Erstell mal ne Datei, egal ob mit oder ohne Inhalt, oder kopier ihm von Win ne X.ini in das Verzeichnis?


    Oder ändere Das Script und gib ihm mit -ini /usr/lib/vdrconvert/share/vdrconvert/pX/pX.ini fix ne Datei vor?

  • Hallo wilderigel


    die Datei gibt es schon immer komisch oder ?



    ls -l /usr/lib/vdrconvert/share/vdrconvert/pX/
    insgesamt 745
    -rwxrw-rw- 1 uwe uwe 6144 2003-09-29 00:00 AC3.bin
    -rwxrw-rw- 1 uwe uwe 18337 2003-07-12 00:00 Copying
    -rwxr-xr-x 1 root root 282 2006-03-29 14:45 pX.ini
    -rwxr-xr-x 1 root root 660108 2006-02-18 19:52 pX.jar
    -rwxrw-rw- 1 uwe uwe 3584 2003-08-15 00:00 ReadMe.txt
    -rwxrw-rw- 1 uwe uwe 56797 2003-10-01 00:00 ReleaseNotes.txt

  • Ich mach ja das ganze über burn und ProjectX, das würfelt sich für jeden Auftrag ne eigene X.ini zusammen.


    Klappt ganz gut bisher.


    Was meinst du übrigens mit Xvfb, ich hab nur ProjectX mit java am laufen, brauchte da nix zusätzliches.
    Denke das war eventuell bis ProjectX 0.80.x notwendig.

  • Hallo wilderigel


    Zitat

    Original von wilderigel
    Ich mach ja das ganze über burn und ProjectX, das würfelt sich für jeden Auftrag ne eigene X.ini zusammen.


    Klappt ganz gut bisher.


    Was meinst du übrigens mit Xvfb, ich hab nur ProjectX mit java am laufen, brauchte da nix zusätzliches.
    Denke das war eventuell bis ProjectX 0.80.x notwendig.


    ohne xvfb bekomme ich mit vdrconvert und Projects (auc mit der akutellen Version von Projectx) ein X-server_fehler.


    mit xvfb tritt der nicht auf!


    bernie

  • Hallo!


    Zitat

    Original von bernie:
    !> an error has occured.. (please inform the authors at 'forum.dvbtechnics.info')
    java.lang.NoSuchMethodException: net.sourceforge.dvb.projectx.xinput.file.XInputFileImpl.<init>(java.lang.String)


    Hast du ProjectX selbst kompiliert oder eine vorkompilierte Version irgendwo heruntergeladen? Der Fehlermeldung nach kann er nämlich eine interne Methode (in C/C++ nennt man sowas eher Funktion) nicht finden. Und das kann eigentlich nur dran liegen, dass die entsprechende Sourcecode-Datei nicht kompiliert wurde. Also nochmal kompilieren und peinlich genau drauf achten, ob Fehlermeldungen erscheinen (wenn ja, welche?).


    Viele Grüße,
    Peter

  • Hallo,
    ich habe bis vor 5 Minuten auch mit Px gekämpft.
    Bei mir machten die Umlaute Probleme.
    Es geht nur mit LC_ALL=en_US (de_DE... tut nicht!)
    Stimmt die übertragung des .vdr namens? bei mir sahen die Meldungen ähnlich aus aus, umlaute wurden durch jave mit '?' ersetzt, daher hat ers nicht gefunden.


    Nochmals Danke and WilderIgel für die Vorarbeit.

    Grüße, Dieter :)

  • hallo Peter,


    Zitat

    Original von peterw2k
    Hallo!


    Hast du ProjectX selbst kompiliert oder eine vorkompilierte Version irgendwo heruntergeladen? Der Fehlermeldung nach kann er nämlich eine interne Methode (in C/C++ nennt man sowas eher Funktion) nicht finden. Und das kann eigentlich nur dran liegen, dass die entsprechende Sourcecode-Datei nicht kompiliert wurde. Also nochmal kompilieren und peinlich genau drauf achten, ob Fehlermeldungen erscheinen (wenn ja, welche?).



    ich habe es selber kompilieren,es gab keine Fehler aber 9 Warnings, die scheinen mir aber unkritische oder ?


    bernie


  • hallo dieter,



    heist das,dass du auf deinem vdr eine Englische/Amerikansiche Tastaturbelegung hast ?


    Deinen Vorschlag kann ich leider erste morgen früh testen, da ich jetzt noch weg muss....


    bernie

  • Eigentlich sollten die Warnings unkritisch sein ("... has been deprecated" bedeutet nur, dass die genutzte Funktion in Zukunft mal aus dem Java-Sprachstandard rausfliegen soll). Interessanterweise ist aber die Datei src/net/sourceforge/dvb/projectx/xinput/ftp/XInputFileImpl.java bei den Meldungen dabei.


    Neue Idee: Kannst du mal mit "tar tf ProjectX.jar" (oder wie die jar-Datei genau heißt) dir den Inhalt der Jar-Datei anzeigen lassen und schauen ob die genannte Datei kompiliert wurde - dann müsste es eine XInputFileImpl.class geben. Falls diese fehlt, wäre wenigstens klar, warum's nachher nicht läuft...

  • Hier liegt das Problem:


    Code
    No matching FileType found or file doesn't exist: '-c'


    Alles was danach gemeldet wird ist unsauberes Fehlerhandling. Anscheinend ist irgendwann zwischen Version 0.80 und 0.90 der Parameter zur Angabe der INI-Datei von "-c" auf "-ini" geändert worden. In deinem Fall wird "-c" nicht mehr als Option erkannt, sondern als Datei interpretiert (die es natürlich nicht gibt). Der später angegebene INI-Pfad ist wohl eine Default-Einstellung wie "wenn nichts angegeben ist, nimm ./pX.ini".


    Such mal in vdrconvert.sh nach OLDPX. Falls es das gibt, dann setze es in der vdrconvert-Konfigurationsdatei (bei meiner gentoo-Version 0.2 /etc/vdr/vdrconvert/verconvert.global) auf "no". Und dann musste ich bei mir noch PX von pX.jar auf PX.jar udn PXINI von pX.ini auf PX.ini umstellen (alles von vdrconvert 0.2 mitgebracht):


    Code
    OLDPX="no"
    PX="/usr/share/vdrconvert/pX/PX.jar"
    PXINI="/usr/share/vdrconvert/pX/PX.ini"
    JAVA="/opt/blackdown-jdk-1.4.2.03/bin/java"


    Ansonsten musst du evtl. hardcore in vdrconvert.sh ($PXINI) oder vdr2dvd.sh rumpfuschen. Hat wilderigel ja schon vorgeschlagen.


    Zitat

    Bei mir machten die Umlaute Probleme.
    Es geht nur mit LC_ALL=en_US (de_DE... tut nicht!)
    Stimmt die übertragung des .vdr namens? bei mir sahen die Meldungen ähnlich aus aus, umlaute wurden durch jave mit '?' ersetzt, daher hat ers nicht gefunden.


    Ja, Umlaute und einige Sonderzeichen wie Kommata im Pfadnamen sind Gift, hab ich festgestellt. Bitte Info, wenn jemand eine Lösung hat.


    Ob's an pX liegt oder irgendwo anders, hab ich nicht verfolgt. Zumindest bei den Kommata und Leerzeichen scheitert's vermutlich schon in den Shell-Scripten. Da fehlen bestimmt noch irgendwo die Quotes ("") um die Variablen für die Dateinamen. Müsste man wohl alle mal durchchecken.

  • Hallo womble





    du scheinst auf dem richtigen Weg zu sein. Ich habe die vdrconvert version 1.0 und die Möglichkeit den von Dir vorgeschlagenen Parameter zu setzen habe ich leider nicht.


    Nachdem ich die 0.82.1 verwendet habe, kommt der bisherige Fehler nicht mehr. Dafür kommt jetzt ein anderer Fehler :


    Code
    java.lang.Exception:
    commons-net library not accessible! see readme.txt [ii]
    ensure the correct location/classpath, related to the executed .jar


    muß mal im Readme nachsehen.


    bernie

  • Zitat

    Original von bernie
    Hallo womble


    ...Ich habe die vdrconvert version 1.0 und die Möglichkeit den von Dir vorgeschlagenen Parameter zu setzen habe ich leider nicht.
    ....


    bernie


    und wenn in der vdr2dvd.sh , in der Zeile

    Code
    nice -n $PRIO $JAVA -jar $PX -c $PXINI -o ${UniqueDir[Number]} $pxfiles > ${LOG[Number]} 2>&1


    das c durch das -ini ersetzt wird ?
    mfg

  • Zitat


    und wenn in der vdr2dvd.sh , in der Zeile

    Code
    nice -n $PRIO $JAVA -jar $PX -c $PXINI -o ${UniqueDir[Number]} $pxfiles > ${LOG[Number]} 2>&1


    das c durch das -ini ersetzt wird ?
    mfg



    Ja genau, und weils mir grade ins Auge fällt: -o durch -out ersetzen.

  • Zitat


    Nachdem ich die 0.82.1 verwendet habe, kommt der bisherige Fehler nicht mehr. Dafür kommt jetzt ein anderer Fehler :


    Code
    java.lang.Exception:
    commons-net library not accessible! see readme.txt [ii]
    ensure the correct location/classpath, related to the executed .jar


    Genau das hatte ich auch mit 0.90.3.01/31.01.2006, als ich /usr/share/projectx/lib/projectx.jar benutzte (die Datei aus dem separaten Package projectx). Als ich stattdessen die mit vdrconvert 0.2.1 installierte Datei /usr/share/vdrconvert/pX/PX.jar (0.90.2.00/05.11.2005) benutzte, hat's funktioniert.


    Frage an Java-Freaks: So sieht bei mir /usr/bin/projectx aus:


    exec $(java-config -J) -Xms32m -Xmx512m -cp $(java-config -p projectx,commons-net,jakarta-oro-2.0) net.sourceforge.dvb.projectx.common.Start "$@"


    Wenn man das vorab expandiert, lautet der Aufruf (ohne Zusatzparameter, als "$@" leer):


    exec /opt/blackdown-jdk-1.4.2.03/bin/java -Xms32m -Xmx512m -cp /usr/share/projectx/lib/projectx.jar :/usr/share/commons-net/lib/commons-net.jar:/usr/share/jakarta-oro-2.0/lib/jakarta-oro.jar net.sourceforge.dvb.projectx.common.Start


    Wenn man nun den Aufruf so umschreibt, dass er dem von vdrconvert entspricht (Keine Start-Klasse direkt angeben, sondern JAR-Datei) müsste exakt das Gleiche bewirken (denn in MANIFEST.MF von projectx.jar ist dieselbe Startklasse angegeben wie beim expliziten Aufruf):


    exec /opt/blackdown-jdk-1.4.2.03/bin/java -Xms32m -Xmx512m -cp /usr/share/commons-net/lib/commons-net.jar:/usr/share/jakarta-oro-2.0/lib/jakarta-oro.jar -jar /usr/share/projectx/lib/projectx.jar


    Aber in diesem Fall kommt der obige Fehler. Ich bin ratlos, was dem Java-Interpreter hier fehlt.


    Vorschlag für Pragmatiker: Wenn man eh schon in vdr2dvd.sh fummelt, dann gleich auch noch den Aufruf ändern: commons-net.jar, jakarta-oro.jar und natürlich projectx.jar als classpath angeben und die Start-Klasse direkt angeben:


    nice -n $PRIO $JAVA -cp $PX:/path/to/commons-net.jar:/path/to/jakarta-oro.jar net.sourceforge.dvb.projectx.common.Start -ini $PXINI -out ${UniqueDir[Number]} $pxfiles > ${LOG[Number]} 2>&1

  • Hallo Bernie,
    nein eine Deutsche, aber der Rest ist English (alle meine PCs sind English, teils aus beruflichen Gründen).
    Es ist dann einfacher mit Fehlermeldungen im inet was zu finden.


    Das LC_ALL=en_US ist trotzdem seltsam, ich würde das nichtfuktionieren mit de_DE... als Bug einstufen (bin allerdings kein java freak).
    Vom Gefühl her hätte ich das umgekehrte Verhalten erwartet.


    Das burn plugin läuft jetzt sauber durch mit Umlauten.


    womble: Mit den Shell-Variablem und quotes hast Du sicher auch recht. kennst Du dich da aus wie man richtig quoted (was fürn Wort)?


    Für meinen Geschmack machen wir sowiso viel zuviel mit der Shell herum. Scripte sind schlecht zu lesen erst recht schlecht zu testen. Eine Kompilierte Sprache hat viel mehr Prüfungen drin. Und c++ code (oder gar c#) ist viel besser zu lesen (kann man aber auch vergewaltigen).

    Grüße, Dieter :)

    Einmal editiert, zuletzt von Dieter ()

  • Hallo


    Zitat

    Original von womble



    Genau das hatte ich auch mit 0.90.3.01/31.01.2006, als ich /usr/share/projectx/lib/projectx.jar benutzte (die Datei aus dem separaten Package projectx). Als ich stattdessen die mit vdrconvert 0.2.1 installierte Datei /usr/share/vdrconvert/pX/PX.jar (0.90.2.00/05.11.2005) benutzte, hat's funktioniert.


    Kann mir diese Version von pX vielleicht mal jemand zur Verfügung stellen ?


    Zitat


    Vorschlag für Pragmatiker: Wenn man eh schon in vdr2dvd.sh fummelt, dann gleich auch noch den Aufruf ändern: commons-net.jar, jakarta-oro.jar und natürlich projectx.jar als classpath angeben und die Start-Klasse direkt angeben:


    nice -n $PRIO $JAVA -cp $PX:/path/to/commons-net.jar:/path/to/jakarta-oro.jar net.sourceforge.dvb.projectx.common.Start -ini $PXINI -out ${UniqueDir[Number]} $pxfiles > ${LOG[Number]} 2>&1


    Das hat bei mir leider nicht gewirkt. Wobei das auch daran liegen kann, das ich die Zeile nich verstanden habe und deshalb nicht in der Lage war, sie auf mein System anzupassen.
    Mit -cp wird der CLASSPATH gesetzt, dann werden die Pfade zu commons-net und zu jakarta.oro gesetzt. Soweit glaube ich das ganze verstanden zu haben. Was macht aber


    Code
    net.sourceforge.dvb.projectx.common.Star


    Wo muß das px.jar dann liegen, damit es so gestartet werden kann?


    ich habe folgendes (allerdings auch ohne Erfolg) in der dvd2vdr.sh versucht:

    Code
    # Project X starten
                  export CLASSPATH=CLASSPATH$:/usr/lib/vdrconvert/share/vdrconvert/pX
                  nice -n $PRIO $JAVA -jar $PX -ini $PXINI -out ${UniqueDir[Number]} $pxfiles > ${LOG[Number]} 2>&1
                  status=$?
                  [ "$DEBUG" = "yes" ] && cat ${LOG[Number]} >> $LOGFILE


    bernie

  • habe ich vom WildenIgel
    EDIT: LINK entfernt.


    ich hoffe er ist mir nun nicht böse.

    Grüße, Dieter :)

    Einmal editiert, zuletzt von Dieter ()

  • Zitat

    Original von Dieter
    habe ich vom WildenIgel


    ich hoffe er ist mir nun nicht böse.


    Von mir aus kannst das ProjectX gerne verwenden was ich kompiliert habe, aber bitte poste keinen Link auf die Seite, wo ich selber nedmal ProjectX mit meiner Projectseite in Verbindung bringe.

  • SORRY!!!

    Grüße, Dieter :)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!