Xulrunner, MLT, Processing, OpenCV - Problem in e4 kepler Entwicklung

Hi an alle,

ich schreibe gerade einen Multimediaplayer als RCP (e4) - Anwendung. Momentan setzt dieser noch auf jlayer auf, bin jedoch gerade dabei auf das MLT-Framework und OpenCV umzustellen.

  1. Frage: MLT habe ich mit swig erstellt und aus den classes mir eine jar gebaut. Jedoch bekomme ich schon bei einem einfachen Test den Fehler „unable to load file“, beim Aufruf:

        static {
            System.loadLibrary(„mlt_java“);
        }
        @Execute
        public void execute() {
            System.out.println((this.getClass().getSimpleName() + " called"));
            Factory.init(null );
            Profile profile = new Profile( „“ );
            Producer p = new Producer( profile, „avformat:/home/xxx/Downloads/vd3.mp4“, null );
            if ( p.is_valid() ) {
                p.set („eof“, „loop“);
            
                Consumer c = new Consumer( profile, „sdl“, null);
                c.set(„rescale“, „none“);
                c.connect§;
                c.start();

Producer ist in dem Fall nicht valid, Fehler beim kompilieren mit swig gab es keine. Hat jemand Erfahrung mit MLT-Programmierung unter Linux (egal welche Sprache)?

  1. Frage Xulrunner: Ich hab 2 Perspectiven, eine für youtube und eine für verschieden Streaming-Hoster (Man kann sich Film-Ordner anlegen, Playlisten usw.) Das ganze funktioniert mit swt.browser (SWT.WEBKIT), nachdem ich mittlerweile den Browser stabilisieren konnte (Aufruf andere Handler, Perspectivewechsel bei laufenden Youtubvideo) bin ich bis dahin ganz zufrieden, jedoch wollte ich noch ein Möglichkeit zum Downloaden der Videos integrieren, wofür ich aber SWT.MOZILLA benötige. Die Fehlermeldung beim Aufruf:
    Could not instantiate Browser: No more handles [Could not detect registered XULRunner to use]

Der Xulrunner liegt unter /opt/xulrunner und ist verlinkt zu /usr/bin (Probleme in Eclipse Kepler (interner Browser=Firefox) gibt es nicht, jedoch bei meiner Anwendung. Ich habe schon probiert im Product-Plugin eine eigene config.ini zu verwenden mit dem Eintrag:
-Dorg.eclipse.swt.browser.XULRunnerPath=/usr/bin/xulrunner/

Bin da gerade echt ratlos! Hatte mich eigentlich an das SWT-FAQ gehalten… Versionen stimmen überein (Firefox 26, Xulrunner 26)

  1. Frage: OpenCV: Neben mlt wollte ich noch Opencv verwenden ( es soll später, eine Videobearbeitungs-Funktion beinhalten: Hier kommt der Fehler:
    org.eclipse.e4.core.di.InjectionException: java.lang.UnsatisfiedLinkError: hypermedia.video.OpenCV.loadMovie(Ljava/lang/String;II)V

Ich habe Opencv aus den Sourcen installiert und bin dabei nach der Anleitung (war besser dokumentiert als die auf Opencv) http://www.mon-club-elec.fr/mes_docs/docs_opencv/ma_…  vorgegangen… ( da hat sich 5 Jahre französisch mal endlich „bezahlt“ gemacht :wink: …zumindest schreibt er weiter unten, dass in seinem Fall javacv die Version OpenCV 2.3 benutzt, ich habe jedoch 2.4. Hat jemand hier schon mal mit Opencv und java programmiert und kann mir evtl. einen Tipp geben?

  1. Frage Processing: Ich habe eine Processing Layer geschrieben der auf dem Layer SWT-AWT aufbaut, der Sinn war auf einfach Art und Weise ein „professionelles“ Display für den Mediaplayer zu verwirklichen (Balken-Spekrum, Playtime usw.). Jedoch dauert mir die Initialisierung zu lange (3-4s) zusätzlich geht mein Xorg auf 100%, wenn ich mehrere Parts mit Processing-rendering aufrufe (vermutlich Opengl-Treiber-Problem) und würde gern Processing wieder rausverwerfen, jedoch würde so ein Display mit SWT + (java2d) mindestens eine Woche dauern, was man mit Processing in 1-2 Stunden umsetzen kann.
    Meine Frage kennt jemand vielleicht ein Javaframework oder Library womit ich relative einfach so ein Display umsetzen kann?

Sorry für den langen Text, es würde schon genügen, wenn jemand mir zumindest in einem Punkt der 4 Fragen weiterhelfen könnte.

Gruß XXD

Frage 1,3,4 gelöst…bleibt noch Frage 2

  1. Frage: MLT habe ich mit swig erstellt und aus den classes
    mir eine jar gebaut. Jedoch bekomme ich schon bei einem
    einfachen Test den Fehler „unable to load file“, beim Aufruf:

MLT fehlten noch eine Menge an Libraries (hatte ffmpeg gar nicht drauf + z.B ladspa-sdk) insgesamt habe ich ca. 40 lib*-dev’s nachinstalliert…geholfen hatte ein nochmal ausführen von ./configure + aufmerksamen lesens!
Das war mit weitem Abstand der wichtigste Punkt!!! :wink:

  1. Frage: OpenCV: Neben mlt wollte ich noch Opencv verwenden (
    es soll später, eine Videobearbeitungs-Funktion beinhalten:
    Hier kommt der Fehler:
    org.eclipse.e4.core.di.InjectionException:
    java.lang.UnsatisfiedLinkError:
    hypermedia.video.OpenCV.loadMovie(Ljava/lang/String;II)V

Habe das gefunden und funktoniert: http://code.google.com/p/javacv/

  1. Frage Processing: …
    Meine Frage kennt jemand vielleicht ein Javaframework oder
    Library womit ich relative einfach so ein Display umsetzen
    kann?

Da ich nun das MLT-Framework einsetzen kann, hat sich die Frage auch erledigt, da dieses Framework alles mitbringt.

Bleibt nur noch Frage 2, Wie nutze ich SWT.MOZILLA ???

Gruß XXD