Mittwoch, 8. Oktober 2014

Vollbild bei Maxdome mit zwei Monitoren - ein kleiner Fix

Maxdome-Nutzer mit zwei Monitoren kennen das Problem: Will man gemütlich auf einem Monitor einen Film schauen und gleichzeitig nebenher auf dem zweiten Monitor was arbeiten oder sonstige Dinge tun, so verliert auf dem Maxdome-Monitor immer das Vollbild, sobald man etwas anderes anklickt, somit der Film den Fokus verliert. Was bei anderen VOD-Anbietern und selbst bei den illegalen Streamingseiten problemlos möglich ist, geht bei Maxdome nicht, obwohl bereits in den letzten Jahren immer wieder die Nutzer danach verlangten, was man unter anderem an den Facebook Kommentaren sieht. Da mir der Maxdome Support vor wenigen Tagen bestätigte, dass dieses Feature des dauerhaften Vollbilds auch zukünftig nicht angedacht ist (Stand Okt. 2014), habe ich verzweifelt nach einer Lösung gesucht, wie man eventuell mit einem Trick dieses Problem umgehen kann. Denn der Silverlight Player ist hierzu eigentlich in der Lage. Wieso sich Maxdome dagegen sträubt, das Feature zu aktivieren, ist mir also schleierhaft. Immerhin habe ich letztendlich eine Lösung gefunden, die zwar nicht ganz so toll ist, aber dennoch zufriedenstellend. Diese funktioniert jedoch nur mit dem Mozilla Firefox oder dem Google Chrome Browser.

Generelle Idee: 
Wir können bei Maxdome das Video immer im kleinen Fenster laufen lassen, unabhängig was wir sonst so am Rechner machen. Also zoomen wir einfach mit dem Browser rein. Wer sich jetzt denkt, dass das Bild doch dann unscharf etc. wird, der täuscht sich. Hat man den Zoom erstmal richtig gesetzt, so sieht man keinen Unterschied zum Vollbild. Allerdings werdet ihr schnell merken, dass man "nur mit kurz mal reinzoomen" kein zufriedenstellendes Ergebnis bekommt, denn zum einen fehlen einem die schwarzen Balken, da man nun unter und über dem Video die Webseite sieht, zum anderen nerven die Scrollbars und wiederum lässt sich der Zoom der Browser standardmäßig gar nicht passend einstellen. Deswegen hier ein paar Fixes:

Wer es lieber als Video sehen will oder beides:

Anleitung Firefox: Youtube Video

Anleitung Chrome: Youtube-Video

Generell gestaltet sich das ganze im Google Chrome Browser einfacher! 

Maxdome Fix für Mozilla Firefox:

  • Anpassen der Zoomwerte in Firefox: Standardmäßig kann man in Firefox nur bis 300% Zoomen, zu wenig für den Maxdome Player, wenn er auf eine Breite von 1920px gebracht werden soll. Deswegen tippen wir in die Adresszeile "about:config" ein, bestätigen den Sicherheitshinweis und ändern nun folgende Werte:
    zoomManager.zoomValues = .3,.5,.67,.8,.9,1,1.1,1.2,1.33,1.5,1.7,2,2.4,3,3.2,3.3,3.5,3.7,4
    zoom.maxPercent = 400
    Ersteres setzt die Zoomskalierung, also die Schritte in denen Firefox zoomt. Je nach Bildschirmauflösung müssen diese Werte eventuell angepasst werden. Für 1920px ist 3.2(=320%) ein recht guter Wert. Der zweite Wert erlaubt, dass wir überhaupt über 300% hinaus zoomen dürfen.
    Damit die Werte aktiv werden starten wir den Firefox neu. 
    so muss es nach dem Umstellen aussehen, gleiches gilt für zoomManager.zoomValues
  • Stylish: Stylish ist ein kostenloses Firefox Addon zum Manipulieren des Aussehens des Browsers und der Webseite. Dieses müssen wir nun, wenn nicht bereits getan, installieren (Download) Danach installieren wir einen neuen Style: 
    Mit diesem Style setzen wir das leicht transparente Overlay das beim Starten eines Films erscheint auf ganz Schwarz und erhöhen die Weite, da es durch dem Zoom nicht mehr den ganzen Hintergrund bedeckt. Dadurch erhalten wir um unser Video eine schwarze Fläche, die unsere späteren schwarzen Balken werden. Außerdem blenden wir noch das Feedbacksymbol am linken Rand aus. Da es zum einen beim Zoomen stört und zum anderen Maxdome anscheinend sowieso nicht viel auf Feedback legt, wenn sie solch ein Wunsch konsequent ignorieren. Desweiteren wird das Video nicht mehr zentriert sondern an den linken Rand geschoben, so dass wir beim späteren zoomen das Video genau zentriert haben. Der Style ist für eine Bildschirmhöhe von 1200px eingestellt. Für andere Auflösungen muss der Style eventuell angepasst werden. (hier zu einfach den Style bearbeiten und die entsprechende markierte Zeile im Code anpassen). Es handelt sich hierbei nur um die Videohöhe bzw. der Abstand des Videos zum oberen Bildschirmrand, die korrigiert werden muss, damit das Video mittig sitzt. Einfach Werte ausprobieren! Im Falle von 16:9 Auflösungen wie 1920x1080px den Wert auf 0px setzen.

    Desweiteren benötigen wir noch einen weiteren Styles um die Scrollbars auszublenden. Hierbei sei jedoch gesagt, dass sich dieser Style auf den ganzen Browser auswirkt und daher immer ein und ausgeschaltet werden sollte, es sei denn, es gefällt einem. Was der Style macht: Er blendet die die Scrollbars komplett aus und macht sie nur sichtbar, wenn man mit der Maus zum Rand fährt. Dadurch entsteht auch mehr Platz für die Webseite und dem Fullscreen steht nichts mehr im Weg. Folgenden Styles installieren:
    So sieht es nun aus, wenn wir einen Maxdomefilm starten:
    Maxdome im Vollbild mit zwei Monitoren - Vorbereitung
  • Als letztes müssen wir noch die Styles aktivieren, was jedoch eigentlich bereits automatisch geschehen sein sollte. Manche Styles wirken sich direkt auf die entsprechenden Seiten aus, aber sicherheitshalber immer die Seite neuladen/aktualisieren. Gerade die Scrollbars werden erst nach einer Aktualisierung richtig angezeigt.
  • Möchten wir nun einen Film im Vollbild schauen, starten wir diesen ganz normal. Wir sehen sofort, dass der Hintergrund wie gewollt tiefschwarz wird. Nun wechseln wir mit F11 in den Vollbildmodus des Firefox (nicht des Players). Der Player darf hierfür nicht fokusiert sein, einfach neben den Player klicken. Nun können wir mit "STRG" + "+" reinzommen, bzw. "STRG" + "-" hinauszommen, auch hier darf der Player nicht fokusiert sein (sonst passiert nichts). Sobald wir die für uns geeignete Zoomstufe erreicht haben, läuft unser Video in gewohnter Qualität im Vollbild und wir können nebenher arbeiten. Natürlich handelt es sich hierbei nur um ein Pseudo-Vollbild, aber es funktioniert und ist gar nicht mal soviel Aufwand. Wir müssen lediglich jedes mal die Styles einschalten (den Maxdome-Style kann man auch dauerhaft aktiv lassen, da er an der eigentlichen Webseite nichts ändert und den Scrollbar - Style je nach Geschmack), Vollbild aktivieren und in das Bild hineinzoomen müssen.
  • Mit "STRG" + "0" zoomen wir auf 100% zurück und mit F11 verlassen wir auch wieder den Browser-Vollbild-Modus. 
  • Das Ergebnis sieht dann so aus. Die Schaltflächen sind zwar riesig und unscharf, das Bild bleibt jedoch scharf. Die Schaltfächen blenden sich nach kurzer Zeit aus!
    Maxdome im Vollbild mit zwei Monitoren
    So kann das ganze am Ende aussehen, das Menü etc. blendet sich natürlich noch aus.
Wir ihr seht, es ist möglich und der Aufwand hält sich in Grenzen. Im Chrome-Browser geht das ganze noch ein wenig einfacher, wie wir im folgenden sehen werden. Wer ab und dann auch normal schauen will und sich von den Änderungen gestört fühlt, kann den Style einfach deaktivieren und der Maxdome Film spielt wieder normal ab (eventl. Reload der Seite notwendig).

Maxdome Fix für Chrome:

Für Chrome geht das ganze ein wenig einfacher zum einrichten, da es zum einen ein geschicktes Zoom-Addon gibt, zum anderen weil man im Chrombrowser die Scrollbar direkt mittels CSS modifizieren kann, somit die Scrollbar nur auf maxdome.de verschwindet und sich auf allen anderen Seiten normal verhält.

  • Stylish: Wir installieren das Stylish Addon für Chrome, mit dem wir Webseiten Clientseitig manipulieren können: Stylish für Chrome
  • Zoom: Wir installieren das Chrome Addon Zoom, mit welchem wir in einem bliebigen Zoomgrad in Webseiten zoomen können:Zoom-Addon für Chrome - Download  
    Anmerkung: Der Standardzoom von Chrome alleine reicht nicht, da dieser nur in festen Zoomschritten zoomt.
  • Installieren des Stylish Maxdome Styles: Maxdome Fix Mit diesem Style setzen wir das leicht transparente Overlay das beim Starten eines Films erscheint auf ganz Schwarz und erhöhen die Weite, da es durch dem Zoom nicht mehr den ganzen Hintergrund bedeckt. Dadurch erhalten wir um unser Video eine schwarze Fläche, die unsere späteren schwarzen Balken werden. Außerdem blenden wir noch das Feedbacksymbol am linken Rand aus. Da es zum einen beim Zoomen stört und zum anderen Maxdome anscheinend sowieso nicht viel auf Feedback legt, wenn sie solch ein Wunsch konsequent ignorieren. Desweiteren wird das Video nicht mehr zentriert sondern an den linken Rand geschoben, so dass wir beim späteren zoomen das Video genau zentriert haben. Der Style ist für eine Bildschirmhöhe von 1200px eingestellt. Für andere Auflösungen muss der Style eventuell angepasst werden. (hier zu einfach den Style bearbeiten und die entsprechende markierte Zeile im Code anpassen). Es handelt sich hierbei nur um die Videohöhe, die korrigiert werden muss, damit das Video mittig sitzt. Einfach Werte ausprobieren! Im Falle von 16:9 Auflösungen wie 1920x1080px den Wert auf 0px setzen.
  • Damit alle Effekte in Kraft treten, die Maxdomeseite aktualisieren! Das Ergebnis seht ihr oben in der Firefox Erklärung.
  • Möchten wir nun einen Film im Vollbild schauen, starten wir diesen ganz normal. Wir sehen sofort, dass der Hintergrund wie gewollt tiefschwarz wird. Nun wechseln wir mit F11 in den Vollbildmodus des Firefox (nicht des Players). Der Player darf hierfür nicht fokusiert sein, einfach neben den Player klicken. Nun klicken wir auf das "Z" im Browser, dass durch das Zoom-Addon hinzugekommen ist und wählen die passende Zoomstufe. Für 1920x1200 eigent sich ein Wert um die 320%. Sobald wir die für uns geeignete Zoomstufe erreicht haben, läuft unser Video in gewohnter Qualität im Vollbild und wir können nebenher arbeiten. Natürlich handelt es sich hierbei nur um ein Pseudo-Vollbild, aber es funktioniert und ist gar nicht mal soviel Aufwand. Wir müssen lediglich jedes mal die Styles einschalten (den Maxdome-Style kann man auch dauerhaft aktiv lassen, da er an der eigentlichen Webseite nichts bis auf die Scrollbars ändert), Vollbild aktivieren und in das Bild hineinzoomen.
  • Mit einem Klick im Zoomaddon auf "Default" zoomen wir auf 100% zurück und mit F11 verlassen wir auch wieder den Browser-Vollbild-Modus. 
  • Das Ergebnis sieht dann so aus. Die Schaltflächen sind zwar riesig und unscharf, das Bild bleibt jedoch scharf. Die Schaltfächen blenden sich nach kurzer Zeit aus!
    Siehe Bild oben!
  • Wer ab und dann auch normal schauen will und sich von den Änderungen gestört fühlt, kann den Style einfach deaktivieren und der Maxdome Film spielt wieder normal ab (eventl. Reload der Seite notwendig).
 

Donnerstag, 26. Juni 2014

Bilder mit getResource() in Java laden für .jar s

Erst neulich stand ich wieder vor einem nervigem Problem. Ich wollte mit Eclipse eine .jar erstellen für einen kleines Spiel, das ich geschrieben hatte. Das Problem: Ich habe es einfach nicht hinbekommen mittels getRessources() den richtigen Pfad oder überhaupt den richtigen Aufruf anzugeben und die Bilder richtig zu laden. Im Internet gibt es zu diesem Thema bereits einige Informationen, auch auf StackOverflow, aber keine hatte bei mir irgendwie geholfen und dann half ich mir einfach selbst. 

Mein Problem: Ich hatte ein main-Package das einen resources-Ordner samt Bilder, sowie ein java-package mit dem Code und vielen weiteren unter Packages beinhaltete. In einem dieser unter Packages hatte ich nun eine Klasse ImageLoader, die für mich die Bilder laden sollte. Das funktionierte im Debugging soweit so gut. Also ich nun aber auf getResources() umstellen wollte, kam das Problem mit den Pfaden, den die alten Pfade, die mit mit new File("pfad") angegeben hatte gingen nicht mehr. Ich probierte unendlich viele Varianten, kam aber nicht drauf. Letztendlich war die Lösung folgende:

ImageLoader.class.getClassLoader().getResource("main/resources/" + imageName + ".png")

 Per ausprobieren fand ich heraus, dass der Befehl generell erstmal 

X.class.getClassLoader().getResource()

lautet wobei X = der Klassenname ist, in der das Bild geladen wird, in meinem Fall der ImageLoader. Das Problem war nun immer der Pfad, doch den kann man ganz einfach herausfinden. Man platziert einfach folgendes

System.out.println(ImageLoader.class.getClassLoader().getResource(""));

an der Stelle bevor man das Bild lädt. Debuggt man nun das Ganze, so erscheint auf der Konsole der entsprechende Klassen Pfad, was in meinem Fall einfach der bin-Ordner im Projekt-Ordner war. Mit diesem Wissen kann man nun einfach den Pfad ab den bin-Ordner fortsetzen. In meinem Fall war das der Packagename + der Ordnername: also "main/resources/" hängt man jetzt noch den Bildnamen an, wie bereits oben geschehen, so sollte es keine Probleme geben.

Sonntag, 22. Juni 2014

Visual Studio 2013 Projekt in Visual Studio 2012 öffnen

Erst neulich stand ich vor dem Problem, dass ich in Visual Studio 2012 ein Visual C++ Projekt mit Windows Forms öffnen wollte, dass ich zuvor auf einem anderem Rechner mit Visual Studio 13 erstellt hatte. Das Öffnen funktionierte soweit auch problemlos. Als ich es jedoch kompilieren wollte, kam es zu einigen Kompilierfehlern. Die Lösung für dieses Problem ist eigentlich recht simpel:

1. Öffne deine Visual Studio 13 Projektmappe mit Visual Studio 12.
2. Gehe oben in der Menüleiste auf "Projekt->Vorlage-Eigenschaften..."

3. Im sich öffnenden Fenster wähle Links "Allgemein"
4. Setze dann rechts das Plattformtoolset vom unbekannten "v112 Comiler" auf den "v110-Compiler" von Visual Studio 2012. 

5. Nun sollte das Programm wieder fehlerfrei debuggen.

Das ganze funktioniert eventuell auch für andere Projekte. Weitere Infos bzgl. der Kompatibilität gibt es bei Mircosoft: Link

Samstag, 8. Februar 2014

Audio-CD mit CD-Text brennen

Das Problem:

Wer kennt das nicht. Da kauft man sich online ein Album und brennt eine Audio-CD, schiebt es dann in einem beliebigen CD-Spieler und statt nun die Namen der einzelnen Songs präsentiert zu bekommen, steht bei jedem Lied etwas wie "Unbekannter Titel" oder "Titel 1" und das obwohl die .mp3's doch alle richtig getagt waren, also in den Eigenschaften der Songdateien alles richtig stand. Lustigerweise tritt dieses Problem auch bei fast allen gekauften Audio-CDs auf.

Der Grund:

Natürlich kann das Problem auf mehreren Ursachen basieren, aber meistens liegt der Fehler bereits beim Brennvorgang. Das Stichwort heißt "CD-Text". Denn die meisten Freeware-CD/DVD-Brenner wie CD-Burner-XP, Windows Media Player aber auch Shareware-CD/DVD-Brenner besitzten dieses Feature nicht, setzen es nur in manchen Fällen richtig um oder haben es so versteckt, dass man es kaum findet. Standardmäßig ist es normalerweise nämlich nicht aktiv. Ebenso findet man eben auch kaum gekaufte Audio-CDs mit diesem Feature, was meiner Meinung nach sehr schade ist. Denn so kann man bspw. gemütlich zum seinem gewünschten Titel schalten, ohne die Tracklist auswendig zu können oder sich jeweils in die ersten Sekunden reinzuhören. Aber anscheinend ist man der Ansicht, dass in unseren heutigen Welt, sowieso alles mit allem vernetzt ist und somit die entsprechenden Daten kurzerhand aus dem Internet geladen werden können. Im Folgenden werde ich daher anhand eines Freeware-Brenners kurz erklären, wie man Audio-CDs brennt, bei denen letztendlich auch die Titel beim Namen angezeigt werden.

Vorraussetzung: 

Damit das gewünschte Abspielgerät die Titel auch anzeigt, muss es natürlich auch CD-Text unterstützen, was meiner Erfahrung nach die meisten Geräte können, aber eben nicht alle. Das gleiche gilt übriens auch für Musikplayer am PC. Windows Media Player oder PowerDVD können dies bspw. nicht, wohingegen der VLC-Player die Daten auslesen kann.

 Anleitung:

  1. Wir laden uns das kostenlose Brennprogram ImgBurn herunter und installieren es normal.
  2. Nun starten wir das Programm. Es öffnet sich ein Hauptfenster und ein Logfenster. Wir widmen uns dem Hauptfenster und wählen unter dem Menüpunkt "Tools"->"Create CUE File".

  3. Im sich nun öffnendem Fenster fügen wir unsere gewünschten Liedtitel hinzu indem wir sich einfach per Drag'n'Drop in das Fenster fallen lassen oder rechts oben das Symbol anklicken und entsprechende Dateien auswählen. Hat man dies gemacht, so analysiert das Programm die Dateien, was ein paar Sekunden Zeit in Anspruch nehmen kann. Danach erhalten wir unsere Songliste. 
  4. Setzen des CD-Text: Zuerst klicken wir oben auf "Disc" und stellen nun weiter unten die CD-Text-Option nach unserem Wunsch ein. Im Falle von "Disc" stellen wir nun den Interpreten und den Name des Albums ein. Die Optionen sind eigentlich selbsterklärend. Bei "File-Name" wird der Dateiname als CD-Text genommen, bei "Tag" werden die Daten aus den Metadaten der Datei geladen und bei "Custom" können wir den CD-Text beliebig setzen. Bei "Disc" empfiehlt sich daher "Custom", es sei denn, man hat ein komplettes digitales Album, dass man brennen möchte, dann sollte auch bei "Tag" der Albumname geladen werden. So verfährt nun auch mit den übrigen Einträgen, wobei man bei den einzelnen Songs eben Titel und Interpret festlegt. Das "Session" steht hierbei für alle Lieder auf der Disk, das heißt setzt man bei Session den CD-Text auf "Tag", so wird automatisch bei allen Songs die Option auf "Tag" gesetzt, so lässt sich eine Menge Arbeit sparen. Was beim Tag ausgelesen wird, sieht man immer in der ausgegrauten Vorschau. Sollte man mal nicht zufrieden sein oder das Feld leer bleiben, da keine Metadaten vorhanden sind , kann man mit "Custom" die Songdaten entsprechend anpassen bzw. selber eintragen.
  5. Weitere Optionen: Zusätzlich stellen wir unten rechts die Dropdownmenüs  noch auf unsere gewünschte Option. Ebenfalls interessant ist die "PreGap"-Option über dem CD-Text, mit der man die Pause zwischen den einzelnen Songs einstellen kann.
  6. Ist alles wie gewünscht eingestellt, klicken wir auf OK und speichern unsere CUE-Datei an einen beliebigen Ort und das Fenster schließt sich.
  7. Im noch offenen Hauptfenster wählen wir nun "Write image file to disc"
  8. Unter "Source" öffnen wir nun unsere soeben gespeicherte CUE-Datei. Die Songs werden so automatisch geladen.
  9. Nun nur noch brennen und fertig ist die Audio-CD mit CD-Text.