[ANNOUNCE] Vodcatcher Helper 0.5 - Unterstützung für RSS-Feeds

  • bezüglich DB: man kann die DB auch im server mode starten. Mach ich zum Entwickeln auch. Die Konfigurationsparameter sehen dann so aus:

    Code
    db.connection.host=localhost
    db.connection.url=jdbc:hsqldb:hsql://<db.connection.host>/<db.name>

    und der Server lässt sich folgendermaßen starten:

    Code
    MAVEN_REPOSITORY=~/daten/maven/repository
    java -cp $MAVEN_REPOSITORY/hsqldb/hsqldb/1.8.0.1/hsqldb-1.8.0.1.jar org.hsqldb.Server -database.0 file:../../../data/hsqldb -dbname.0 VODCH

    Pfade musst Du natürlich anpassen und es unterscheiden sich die Datenbankinhalte. So kann man also entweder nur im server mode oder nur im embedded mode arbeiten, aber nicht hin- und herwechseln. Das geht vll auch, aber ich hatte keine Lust da lange hinterherzusuchen.


    bezüglich ZDFmediathek: diesmal liegt es nicht am ZDF, sondern am W3C. Die haben so viele Zugriffe durch XML-Parser, die DTDs und Schemata runterladen, dass sie das jetzt eingeschränkt haben. Daher kommt VCH nicht mehr an die xhtml DTD und kann die Einstiegsseite nicht mehr parsen.

  • Hallo hampelratte!


    Zitat

    Original von hampelratte
    Ich habe gerade Version 0.5.4 hochgeladen, die nur das Problem des ZDF Parsers behebt. Sonst gibt es keine Änderungen.


    Parsen von "ZDF" funktioniert 1a!! Merci


    Gruss
    Wolfgang

    TT S2-6400 - saa716x kompilieren unter 20.04(Focal)

    Einmal editiert, zuletzt von wolfi.m ()

  • hampelratte


    Es ist ein ziemlicher murks das teil unter mysql ans laufen zu bringen.
    So wie in der hilfe beschrieben hab ich es nicht hinbekommen.


    Was ich tun musste (alles unter ubuntu 804), installiert habe ich in /opt/VodcatcherHelper-0.5.3



    - sudo apt-get install libmysql-java
    - die mysql-connector-java-5.1.5.jar aus /usr/share/java nach /opt/VodcatcherHelper-0.5.3/lib kopieren linken.
    - die startServer.sh wie folgt ändern


    Bash
    #!/bin/sh
    
    
    VCH_HOME=`dirname $0`
    cd $VCH_HOME
    CLASSPATH=VodcatcherHelper.jar
    for lib in `ls lib/*.jar`; do
        CLASSPATH=$lib:$CLASSPATH
    done
    java -Xmx128m -Djava.util.logging.config.file=logging.properties -cp $CLASSPATH de.berlios.vch.http.HTTPServer


    - das jar file VodcatcherHelper.jar öffnen (geht z.B ganz gut mit mc)
    - die datei /vodcatcherhelper.properties wie folgt editieren:



    - die datei /sql/com.mysql.jdbc.Driver/updates_order.txt wie folgt editieren:


    Code
    initial
    0.1
    0.3
    0.4
    0.4.1
    0.5


    - die datei /sql/com.mysql.jdbc.Driver/updates/0.5.sql wie folgt erzeugen:


    Code
    create table USER_FEED (
        LINK VARCHAR(255) NOT NULL,
        CHANNELKEY VARCHAR(255),
    
    
        primary key (link)
    );
    
    
    alter table USER_FEED add FOREIGN KEY (channelkey) REFERENCES channel(link);



    Das archiv wieder schliessen und dann erst die startServer.sh ausfuehren


    Klaus

  • War wohl doch nicht so eine gute idee mit der mysql db ....


    Code
    AM FEINSTEN: Downloading page http://www.ardmediathek.de/ard/servlet/content/2522376 
    Jun 10, 2009 10:32:46 PM de.berlios.vch.parser.ardmediathek.ProgramParser parse WARNUNG: Couldn't get channel from DB. Can't check for parsed items org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout wa iting for idle object


    system reagiert in dem fall von aussen gar nicht mehr ....


    klaus

  • hi,


    ja sorry - wollte das teil mal ausreizen ........


    Hab heute auch wieder mehr oder weniger den ganzen tag rumexperimentiert denn der beschriebene fehler tritt nur ab und an auf.


    Allerdings hast du recht - im grossen und ganzen funktioniert die mysql version nicht richtig. Auch mein patch (bzgl userdefinierte feeds) bringt bloss exceptions wenn man ihn nutzen will ....
    Auch sind viele feeds leer, obwohl die db schön angefüllt ist...
    Also wenns dir nix ausmacht - guck doch mal ob das nicht wieder grade gezogen werden kann.


    Was anderes:


    Der zdf parser tuts wieder - danke (ich hatte das schon gesehen mit der dtd exception, aber man konnte das schema per webbrowser noch laden, von daher dachte ich eher an eine falsche fehlermeldung)


    Auch der timeout bug scheint behoben, letzte nacht war er waehrend des ip-wechsels am parsen. Zwar konnte er auch den folgenden /parse aufruf nicht abwickeln, aber den darauf folgenden wieder. Auch hier ein fettes danke.


    Wenn ich sonstwie behilflich sein kann bitte nur zu.


    klaus

  • So, es gibt jetzt Version 0.5.5, bei der auch wieder MySQL voll unterstützt wird. Ich habe auch den Abschnitt in der Hilfe aktualisiert. Vorraussetzung für MySQL ist eigentlich nur, dass der Benutzer die Rechte hat, Datenbanken anzulegen. Der Rest geschieht automatisch, nachdem man die Schritte aus der Hilfe erledigt hat. Und was mir gerade einfällt und nicht explizit in der Hilfe steht: Es muss ein MySQL 5.0er Treiber sein, der 5.1er tuts nicht.

  • Hi!


    Ich habe die gleichen Probleme im VCH mit dem OSDServer SVDRP Befehl zu xineliboutput.
    Allerding scheint es an dem xineliboutput plugin zu liegen (cvs 1.0.90)!!!


    Logge ich mich manuell mit 'telnet localhost 2001' auf den OSDServer ein und sende 'PLUG xineliboutput PMDA /tmp/vch.pls' springt xineplugin zwar kurz an, aber nach kurzem, schwarzen Bildschirm kehrt er zum LiveTV zurück.Das ist das gleiche Phänomen wir beim Abspielen vom VCH aus!
    Ich habe es auch schon versucht direkt Videos ohne pls abzuspielen 'PLUG xineliboutput PMDA /tmp/test.mp4', aber das zeigt die gleiche Reaktion.
    Wenn man in den xineliboutput Quellen stöbert, sieht man, dass beim Abspielen von einzelnen Videodateien xineliboutput selbst eine Playlist erstellt und die dann öffnet. Ich denke, damit ist es auch unwahrscheinlich das es ander vch.pls vom VCH liegt!


    Wie schon vorher von iNOB angemerkt, funktioniert es über das normal VDR Menu und xineliboutput prima eine pls oder mp4 abzuspielen, nur über die OSDServer Schnittstelle nicht. An den Codecs kann es also nicht liegen...


    Ich weiß auch nicht, in wie weit der OSDServer Befehl PMDA im cvs von xineliboutput getestet wurde. Oder ist der noch buggy?


    NaNoo

  • Moin,


    Also die neue version iss am start - funzt aber noch nicht ganz korrekt.


    Die installation als dreizeiler:


    Bash
    #!/bin/sh
    ln -s /usr/share/java/mysql-connector-java-5.1.5.jar /usr/lib/jvm/java-6-sun-1.6.0.07/jre/lib/ext/mysql-connector-java-5.1.5.jar
    unzip -p VodcatcherHelper.jar vodcatcherhelper.properties | grep db. | grep -vh '^#' >> vodcatcherhelper.properties
    mcedit vodcatcherhelper.properties


    ok, danach starten alles normal, danke fuer die tips bzgl "lagerort" von mysql-java, das man die props auch ausserhalb des jars editieren kann ebenfalls wichtige info.


    Danach alle parser aktiviert (bis auf rtl):


    Im arte-parser tritt ein fehler auf - der kommt x-mal:


    Code
    SCHWERWIEGEND: Couldn't parse program page http://plus7.arte.tv/de/detailPage/1697660,CmC=2680890,scheduleId=2692746.html
    java.sql.SQLException: SQL String can not be NULL Query: null Parameters: [Le p'tit bal (Der kleine Ball)]
            at org.apache.commons.dbutils.QueryRunner.rethrow(QueryRunner.java:359)
            at org.apache.commons.dbutils.QueryRunner.query(QueryRunner.java:240)
    --



    Dann irgendwann hat er wohl den kanal voll und es kommt der pool error


    Code
    SCHWERWIEGEND: Couldn't save channel
    org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object
            at org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104)
            at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
    --


    Danach geht nix meht ........


    Was funktioniert ist das einfügen von userdef feeds. Parse ich nur zdf und ard iss auch alles im lack. Ich nehme mal an zwischen fehler 1 und fehler 2 besteht ein kausalzusammenhang.



    klaus

  • Ich zitiere mich selbst:

    Zitat

    Original von hampelratte
    MySQL 5.0er Treiber sein, der 5.1er tuts nicht.


    Probiers mal mit einem 5.0er. Der sollte generell besser funktionieren. Dein Fehler scheint aber noch eine andere Baustelle zu sein. Schaue ich mir später an. Jetzt muss ich erstmal Packesel bei meiner Cousine spielen und Fliesen schleppen :(


  • Ich denke ich werde mal xineliboutput im Debugmodus laufen lassen, um zu sehen woran es hackt...

  • Zitat

    Original von NaNoo


    Ich denke ich werde mal xineliboutput im Debugmodus laufen lassen, um zu sehen woran es hackt...


    Anscheinend macht der PMDA-Befehl irgendetwas anders als der Aufruf über das xineliboutput-Menu. Gut, dass Du Dir das genauer anschauen möchtest. Ich bin da ja etwas eingeschränkt, weil die CVS-Version von xineliboutput bei mir nur ein schwarzes Bild liefert.

  • Bin auch mit der xineliboutput CVS 1.0.90 unterwegs...


    Gruß
    iNOB

  • Version 0.5.6 ist hochgeladen. Es fehlte noch ein SQL Statement für MySQL. Der Fehler tritt auch nur beim Parsen von Arte auf, weil nur der Parser den SQL benutzt. (Vll sollte ich mal noch ein paar unit tests für die DAOs schreiben, damit mir solche Dinger eher auffallen, aber eigentlich habe ich dazu keine Lust ;) )

  • Hi


    Danke, so wie ich das sehe sind jetzt alle db-basierten fehler weg - alle parser aktiv.


    Test units: Also ich bin schwer dafür: :lehrer1


    Guck mal ab version 0.5.2 waren alles nur bugfixes, keine einzige (erkennbare) neuerung.
    Eigentlich brauchts hier in dem fall ja noch nicht mal ausgefeilte units.


    Ich hab hier z.B. ne virtuelle maschine mit ubuntu 8.04, der habe ich 512 MB ram spendiert, da drauf laufen zur zeit zwei instanzen vom vod-catcher, diese werden vom cron regelmaessig angesteuert (zdf+ard bitte steinigt mich nicht), eine lauscht auf 8080 die andere auf 8081, eine benutzt hsql, die andere mysql.


    Nach jedem lauf werden alle exceptions aus dem log gefischt, dann haste deine testumgebung.



    Bei interesse kannst du dir diese testmaschine gerne laden - hab vdsl ....


    also danke nochmal


    klaus

  • Ich hab mich bisher nur wenig mit diesem Thema beschäftigt, von daher mal ein paar Fragen:


    Woran denkst Du denn dabei ?
    Da xine und mplayer ja rtmp noch nicht supporten - willst du einen rtmp-sauger in den vodcatcher implemetieren, der einem dann die files lokal zum abspielen präsentiert ?
    Wäre natürlich das "killer-feature" .... meine Freundin hat sich bereits beschwert das so wichtige Angebote wie z.b. "Sturm der Liebe" in der vdr-mediathek fehlen .....


    Was ich auch nicht so ganz kapierere: bei dem red5 projekt (http://red5.googlecode.com/svn/java/example/trunk/) gibt es ja bereits jetzt (java)code für rtmp, wofür ist die Offenlegung der Spezifikation durch Adobe denn so wichtig gewesen ??


    Klaus

Jetzt mitmachen!

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