CD-Manager Update

In den letzten Tagen habe ich mich wieder ein wenig mit meinem CD-Manager beschäftigt. Der eigentliche Grund dafür war, dass ich mich ein wenig mit dem MEF (Managed Extensibility Framework) beschäftigen wollte. Der CD-Manager bot sich da an. Die Umstellung hat so weit auch sehr gut geklappt. So gut, dass ich demnächst die Import / Export Funktionalität implementieren möchte – natürlich auch auf Basis von MEF.

Eher durch Zufall bin ich dann über einen Bug in einer Third-Party Klasse gestolpert, der sich gravierend auf meine CD-Daten auswirkt bzw. die letzte drei Jahre ausgewirkt hat, ohne dass es mir aufgefallen ist. Über diese Klasse ermittle ich die Spieldauer der Tracks, damit ich die nicht von Hand eingeben muss. Bei Enhanced CDs gibt es aber einen kleinen Punkt zu beachten. Bei Enhanced CDs ist zwischen dem letzten Audiotrack und dem Datentrack eine ‚Lücke‘ von 152 Sekunden. Die Klasse (und einige einfache Ripper) erkennen dies leider nicht korrekt. Sprich bei allen Enhanced CDs war die Dauer des letzten Tracks um 02:32 Minuten zu lang. (Enhanced CD Wikipedia)
Ich habe mir dann eine Validate Funktion geschrieben, die mir die Dauer meiner MP3s ermittelt und diese mit den CD-Daten vergleicht. Bei Abweichungen > 2 Sekunden habe ich die Dauer automatisch korrigieren lassen. Unglaublich wie viele Tippfehler / Zahlendreher sich so einschleichen …

Hmm, und da der Quellcode schon mal offen war … Hab‘ dann gleich noch einen kleinen Bug behoben und ein paar Stellen etwas optimiert. Nachdem sich die ‚Qualität‘ der CD-Daten im CD-Manager durch den automatischen Abgleich der Daten nochmal gesteigert wurde, war ich natürlich auf die Statistik gespannt. Dabei ist mir wieder mein selbst gezeichnetes Tortendiagramm ins Auge gestochen. *Bäh* *Pfui*. Im Jahre 2011 kann man das sicherlich auch schöner machen. Da war doch ein Artikel in der dotnetPro. Microsoft hat im 4er Framework doch eine Charts Bibliothek hinzugefügt. Die musste ich gleich ausprobieren und das Ergebnis ist gar nicht so schlecht geworden. (Die Farben hab‘ ich vom alten übernommen ;-))

CD-Statistik - mit neuer 3D Torte

Da ich heute wieder gefragt wurde, wie lange ich denn eigentlich schon an dem CD-Manager arbeite bin ich wieder ins grübeln gekommen. Ich bin mir selber noch nicht ganz sicher, aber ich habe mich auf ’seit 1997′ festgelegt – wobei es durchaus auch 1996 gewesen sein könnte, als ich angefangen habe. Zahlreiche Versionen gab‘ es dazwischen und gibt es teilweise auch heute noch.

Aktuell aktiv sind meine Desktop Version (C#, .NET), eine Version für Windows CE (C#, .NET CF), eine PHP Version und der Anfang einer Silverlight Version.

Nicht mehr genutzt:
– Eine Java Version (für mein altes Nokia)
– Diverse .NET Test-Versionen (Auch mit Delphi.NET)
– Einige Delphi Versionen
– Einen CD-Viewer in Flash

Nicht mehr Verfügbar:
╔═══════════════════════════════════╗
  Einige alte DOS Versionen – NOSTALGIE-RAHMEN
╚═══════════════════════════════════╝

Wie immer sagen Bilder mehr als tausend Worte:

CD-Manager (Delphi, 2007)

CD-Manager (Delphi, 2007)

CD-Manager (CSharp, 2011) (Icons by DryIcons)

CD-Manager (C#, 2011)


CD-Viewer (Flash, 2003):

CD-Viewer (Flash, 2003)

Ein Kommentar

  1. Pingback: Dauer einer MP3 Datei ermitteln « Project Medlan

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.