AlbumArtFix by tommce
Version 1.3.2

Einleitung
Inspiriert von @Spyn Doctor's Grundlagenforschung und Tool-Implementierung (1, 2) habe ich auch nach einer Lsung fr das Cover-Problem im Vista Media Center (VMC) gesucht. Das Problem besteht darin, dass bei den meisten Musikalben ab dem 2. Titel kein Cover angezeigt wird.

Beschreibung
Aufbauend auf den Erkenntnissen wurde die Methode immer weiter verbessert und nutzt die neuen Mglichkeiten von Vista. Implementiert wird die Methode durch das angehngte Skript AlbumArtFix.vbs.
Die Schritte der Methode im Einzelnen:

   1. Automatisches Verlinken (siehe unten) des originalen Cover Caches nach Rckfrage auf den ausgelagerten VMC Cache.
   2. Auslesen aller Songs aus der Windows Media Player (WMP) Bibliothek und Ermitteln der GUID, die in der Bibliothek TrackingID heit.
   3. Suche des Album Covers (Folder.jpg bzw. alternativer Name) im Albumordner und verlinken bzw. kopieren in den VMC Cache (sofern noch nicht vorhanden) mit entsprechend aus der TrackingID gebildetem Namen (AlbumArt_<TrackingID>_Large.jpg).
      Mgliche Cover-Behandlung fr den VMC Cache
          * Hardlink erzeugen (Standard)
            Eine platzsparende Variante, die auch von Nicht-Administratoren genutzt werden kann. Allerdings muss sich der Zielordner (=VMC Cache) auf der selben Partition befinden wie die verlinkten Covers. Bei Verteilung der Mediendateien auf unterschiedliche Partitionen kann diese Methode nicht verwendet werden!
          * Symbolischen Link erzeugen
            Eine ebenfalls platzsparende Variante, bei der der Zielordner (=VMC Cache) auf einer beliebigen Partition liegen darf. Allerdings muss man zum Einrichten der Links ber administrative Berechtigungen verfgen.
          * Einfache Dateikopie
            Fr jeden Titel wird ein eigenes Cover mit entsprechendem Platzverbrauch erzeugt. Der Zielordner (=VMC Cache) darf auf einer beliebigen Partition liegen.
   4. Wird als Cover-Name Folder.jpg gewhlt, wird mit dieser Datei im Albumordner gearbeitet. Das ist gleichzeitig der vom WMP verwendete Name, so dass der WMP ebenfalls die korrekten Covers darstellt.
      Wenn das Cover im Albumordner einen anderen Namen tragen soll (empfohlen!), so wird die Datei Folder.jpg aus dieser Datei als Kopie erstellt und umgekehrt.
      Man erhlt also automatisch 2 Covers im Albumordner.

Vorarbeiten

    * Ggf. mssen vor der ersten Ausfhrung die Parameter im Skript angepasst werden.
          o Der verwendetet Cover-Name lautet Cover.jpg.
          o Der Pfad zum ausgelagerten VMC Cache lautet "D:\Art Cache".
          o Cover-Behandlung: Hardlink, Symbolischer Link, Kopie
    * Um den Cover-Bestand von Grund auf neu aufzubauen, empfehle ich, den vorhandenen Inhalt des VMC Caches an einen sicheren Ort zu kopieren und dann den Cache zu leeren.

Ausfhrung
Das Skript AlbumArtFix.vbs wird ber die Batchdatei AlbumArtFix.cmd im selben Ordner gestartet, damit cscript als Interpreter gewhlt wird.

    * Der erste Lauf (bei leerem VMC Cache) wird einige Minuten dauern. Bildschirmausgaben informieren ber den Fortschritt.
    * Nach dem Hinzufgen von neuen Songs zur WMP Bibliothek sollte das Skript erneut gestartet werden. So werden schnell die fehlenden Covers ergnzt.

Cache-Optimierung (Extender-Betrieb)
Da alle VMC Caches aller Benutzer den selben Inhalt haben (sollten), macht es keinen Sinn, die Bilder mehrfach abzulegen.
Empfohlen ist das Erzeugen eines neuen Ordners fr den VMC Cache. Die einzelnen Cache Ordner in den Benutzerdaten werden durch Links (Junctions/Verbindungen) ersetzt.
Der Befehl hierfr lautet sinngem:
mklink /j "D:\Art Cache" "C:\Users\Benutzername\AppData\Local\Microsoft\ehome\Art Cache"

Erluterungen zu Links
Die Technik der Links ist Einigen vielleicht aus dem Unix-/Linux-Umfeld bereits ein Begriff. Wenig bekannt ist, dass Windows seit Windows 2000 (und damit auch in Windows XP) bereits zwei verschiedene Formen der Links kennt:

    * Hardlinks, die auf Dateien verweisen, und damit die Dateien unter einem weiteren Namen (in einem anderen Ordner) adressierbar machen
    * Junctions/Verbindungen, die eine Ordnerumleitung darstellen (Beispiel: Mounten einer Partition in einem NTFS-Ordner)

Mit Vista sind nun noch die Symbolischen Links hinzugekommen:

    * Symbolische Links vereinen die Eigenschaften der vorhandenen Linkformen und drfen sogar ins Netzwerk zeigen.

Angelegt werden die Links mit dem neuen Kommandozeilenbefehl mklink, der vom Skript AlbumArtFix.vbs auch unsichtbar aufgerufen wird.
Symbolische Links knnen standardmig nur von Administratoren eingerichtet werden, alternativ muss man die Berechtigungen ber den Gruppenrichtlinieneditor (gpedit.msc) "aufweichen" (Computerkonfiguration\Administrative Vorlagen\System\NTFS-Dateisystem\Auswertung symbolischer Links selektiv zulassen).

Hinweise und Beschrnkungen

    * Z.Zt. keine.

Disclaimer
Ich bin nicht verantwortlich, fr das, was ich tue. wink.gif
Auch wenn ich das Skript vielfach getestet habe, empfehle ich dennoch eine Sicherung der Daten (insbesondere des VMC Caches).


Viel Erfolg
Thomas

Version / Datum / Bemerkung
1.3.2 / 27.10.2007 / Bildschirmausgaben gendert
1.3.1 / 12.10.2007 / Erweiterte Fehlerbehandlung
1.3 / 08.10.2007 /
Optimierung der Analyse von WMP-Bibliothek
- Smtliche Audio-Typen werden jetzt bearbeitet
Vereinfachung der Steuer-Parameter
1.2 / 10.08.2007 / Automatische Verlinkung des Original VMC Caches
1.1 / 06.08.2007 / Weitere Optimierungen
- WMP Cache wird nicht mehr bearbeitet
- Verlinkung aller Titel-Cover auf eine Datei je Album
1.0 / 16.07.2007 / Erste Version


Links
1) http://www.mce-community.de/forum/index.php?showtopic=16655&view=findpost&p=119880
2) http://www.mce-community.de/forum/index.php?showtopic=16655&view=findpost&p=142956