# Videoskalierung mit JMF



## Rolff (3. Sep 2009)

Hallo zusammen,
jetzt habe ich mich endlich mal in diesem mir mittlierweile während meines Projektes sehr ans Herz gewachsenen Forum registriert

Ich brauche eure Hilfe, wie sollte es auch anders sein.
Viele Stunden des Suchens sind leider ergebnislos geblieben, daher muss ich jetzt hier und heute diese Frage stellen:

Ich habe einen MediaPlayer (JMF) mittels des passenden Konstruktoraufrufs erzeugt.
Jetzt muss ich die Original-Video-Proportion auslesen, um die Ausgabe proportional an die Bildschirmgrösse anpassen zu können.

Hierfür scheint es eine Methode 'VideoFormatControl' zu geben, die in einem Package org.dvb.media verpackt ist.

Wo zum T....l kann ich dieses Package herbekommen?

Wenn ich nämlich bei einer 16:9-MPG-fullHD-Datei mit MediaPlayer.getVisualComponent.getPreferredSize() die Auflösung auslese, bekomme ich nicht 1920x1080, sondern leider nur 1440x1080, und das ist 4:3;(

Bitte helft mir hier weiter!!!

Habe auch schon was von einem DAR Override im MPEG header gelesen, komme aber an diese Headerinfos nicht ran.

Bin wahrscheinlich schon etwas betriebsblind und ausserdem noch totaler Autodidakt, nebenbei natürlich auch noch ein wenig Anfänger.

Könntet ihr da irgendwo einen Lösungsansatz sehen und mir mitteilen?

Gruß an alle Forenmitglieder vom Rolff


----------



## Kr0e (5. Sep 2009)

1. Nutzt du wirklich nur JMF ? Oder ein darauf basierendes Plugin?
Fobs4JMF ist meiner Meinung nach, das beste... Die anderen sind noch nicht ausgereift... Außerdem kannst du garantiert nicht HD Movies ohne ein Zusatzgedöhns abspielen...

Zum Thema mit der Skalierung: "Es geht viel einfacher als du denkst!"

Wie man die Größe aus der DAtei ausliest kann ich dir nicht sagen, aber du kannst einfach nen eigenen Renderer schreiben oder einen Vorgefertigten erweitern... Z.b. den Java2DRenderer... und dann auf das Image warten und dessen Größe auslesen...

Ich muss jetzt wissen, wie gut deine Kenntnisse sind... Sonst schreib ich hier nur iwas, was dir nix bringt...

Gruß Chris


----------



## Rolff (7. Sep 2009)

Hi Chris,

vielen Dank für Deine Antwort.
Werde mich mit den vorgeschlagenen Methoden befassen und schauen, dass ich auf diese Weise irgendwie an die tatsächliche Auflösung des MPG rankomme.

Was meinen Jaba-Stand angeht:
Seit Januar entwickle ich hier ein Programm, mit dem Bilder einzeln und als Diashow angezeigt werden können und das eben auch Videofiles in Vollbild darstellen kann.

Die eingentlichen Probleme sind mir erst jetzt, nach Beinahabschluß des Projekts aufgefallen: eben erst beim 1920x1080.

Aber ein Kollege meinte heute Früh, dass alles mit 1080 eh 16:9 sei.
Damit könnte ich dann ja einfach die Höhe, die ja korrekt ausgelesen wird, nutzen um 16:9 festzusetzen.

Ich nutze tatsächlich den Mediaplayer aus dem JMF (player = new Mediaplayer(); player.setMediaLocation(mediaFile); ), der spielt auch den FullHD ab, nach dem ich den Player in ein JPanel gesetzt hab, das ich gerne passend skalieren möchte.

Werde die Idee mit dem Renderer verfolgen und ein 'Bild' des Films abmessen.
Somit sollten dann die letzten Anzeigeprobs aus der Welt geschafft sein.

Danke Dir!

Grüsse
Rolff


----------



## Kr0e (8. Sep 2009)

Hmm, mal ne Frage : Ich muss ganz ehrlich sein,dass ich new MediaPlayer nicht kenne, ist das ein Java Bean ?? Ich hab das immer mit Manager.createRealizedPlayer() gemacht!! Erleuchte mich xD


Gruß Chris


----------

