Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von MOnsDaR
Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Gut, dass ich die Mail-Benachrichtigung bei Antworten hier noch drin hab ;)

Ich glaub am einfachsten guckst du es dir am Code selbst an:
https://www.assembla.com/code/codtracker/subversion/nodes

Kannst den Code nutzen wie dir beliebt, ich stell ihn hiermit unter WTFPL. Auch jeder andere kann natürlich einen Blick darauf werfen.

Im SVN liegt auch ein Ordner Documentation. Er enthält eine txt mit den damaligen Events, die der Promod mitloggt. Weiterhin eine Enterprise Architect-Datei, die den Aufbau des Tracker in UML darstellt.

Ich bin leider sogut wie garnicht mehr in der COD-Szene aktiv. Weiß deshalb auch nicht, welche Promod-Version aktuell ist und ob sich am Tracking was geändert hat. Damals haben mir die beiden Promod-Coder trivve und Ingram sehr gut weitergeholfen (vor allem letzterer). Versuch sie einfach mal im XFire oder IRC zu erreichen.

Bleibt noch zu sagen, dass das Projekt ja inzwischen schon fast ein Jahr auf dem Buckel hat. Glaub zuletzt hab ich im August 09 was daran geändert. Ich hoffe dass im Repository alles soweit aktuell ist (und auch die Doku noch passt). Frag ruhig, wenn du etwas hast, aber ich kann nicht versprechen, dass ich selbst noch weiß, wie es ging ;)

Erstmal viel Spaß beim Code studieren und viel Erfolg für dein Projekt.

Schöne Grüße,
MOnsDaR

Thema: HTTPSaver
Am im Forum: Projekte

Einfach in einer Admin-Shell (Command prompt als Admin ausführen)
"net start npf" und es läuft.

Funktioniert zumindest mit Wireshark auf meinem System wunderbar.

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Den Promod richtig installieren ;)
Hab ich selbst nie gemacht, bin ja auch nur "Endverbraucher" ;)

Google hilft dir da sicherlich

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Es sind keinerlei DVars des Promods gesetzt.

zB wird nach der DVar __promod_version geschaut, ob eine passende Version installiert ist. Dieser DVar ist garnicht vorhanden.
Auch andere DVars zB __promod_mode oder __promod_ticker fehlen.

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Dann geb mir bitte mal ip:port.

Alle von mir getesteten Server funktionieren einwandfrei.
Sicher, dass auf dem von dir getesteten Server auch der Scorebot vom Promod aktiviert ist?

Die unter "Supported Servers" gelisteten Server gehen soweit ich weiß alle. Auf Public-Servern ist der Scorebot allerdings ausgestellt und man erhält lediglich ein "Gathering Info"

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Bedingt durch Umzug hatte ich in den vergangenen 2 Wochen nur sporadisch Zugriff aufs Internet. Jetzt sollten Updates allerdings wieder häufiger erscheinen.

Anpassungen an 2.04 sind bereits gemacht, muss nurnoch testen.

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Ein neuer Mod für COD4 ist erschienen. Gleichzeitig habe ich den Tracker komplett überarbeitet.

NEWS:
http://www.mymtw.com/cod/de/article/82/PromodLIVE_v2_und_CODTracker_released/Same_game_just_some_useful_additions.html

Download:
http://mymtw.com/cod/de/file/download-99/

Thema: Mashup MediaPlayer *work in progress*
Am im Forum: Projekte

Nachdem wir doch schon recht weit waren (Datenbank-Layer war in Arbeit, GUI fast fertig etc), kamen uns leider die Abschlussprüfungen und andere Projekte dazwischen, weshalb wir das Projekt anno dazumal auf Eis legen mussten.

Ich würde nach wie vor gern dieses Projekt realisieren, allerdings habe ich bisher nicht die Zeit finden können. Auch jetzt habe ich noch einige andere Projekte, die von der Priorität einfach höher liegen.

Vielleicht werd ich das Projekt mittel bis langfristig nochmal reaktivieren.

Schöne Grüße,
MOnsDaR

Thema: GameNizor.cs - einfaches auslesen des Arbeitsspeichers
Am im Forum: Projekte

Zitat
und für welche spiele funzt das?

Gegenfrage: Für welche Spiele funzt das nicht :P

Thema: YASST - Yet Another Screenshot Tool
Am im Forum: Projekte

@MrLeeh: Ist nicht genau DAS die Funktionalität von dem Tool? Oder hab ich was falsch verstanden?

@Topic:
Auch wenn es nur ein kleines Tool ist, muss es ja nicht nützliche Funktionen außen vor lassen. Vllt sollte man die Anwendungsfälle mal durchgehen, weshalb ein User eigtl einen Screenshot macht. Mir fallen spontan ein:

Dokumentation schreiben
- Der User macht ein Foto von einem Teilbereich/Fenster
- Der User möchte das Bild möglichst einfach einfügen

Was das Tool für sowas können sollte:
- Nicht nur Teilbereiche, auch Objekte (Fenster) müssten ausgewählt werden können als "Bildbereich"
- Gemachtes Foto automatisch in Zwischenablage speichern. Dann muss der User nur noch Strg+V drücken und bekommt das grad eben gemacht Bild

Infos weitergeben
- Der User macht ein Foto von einem Teilbereich/Fenster
- Der User möchte via IM, Forum o.ä. das Bild weitergeben, um einem andren User etwas zu zeigen

Was das Tool können sollte:
- Bild direkt auf 1ClickHoster oder FTP hochladen (abload.de, imageshack.us und wie sie alle heißen). Link könnte man in die Zwischenablage schreiben. Somit würde ein User einen Screenshot machen und müsste nurnoch Strg+V drücken, um den Link dorthin zu posten

Infos mailen
- User möchte Bild per Mail versenden

Was das Tool können sollte:
- Mailprogramm öffnen und evt schon das Bild als Anhang platzieren


Weitere Features wären natürlich noch das abspeichern der Bilder in versch. Formaten.

Das ist nur das was mir einfällt. So wäre das Tool trotzdem handlich und alle größeren Anwendungsfälle wären abgedeckt. weiterhin würde es sich von den Funktionen von anderen Programmen dieser Art abheben.

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Habe mir schon gedacht, dass viele nichts mit dem Programm anzufangen wissen. Trotzdem schön zu wissen, dass das Programm auch abseits der Funktionalität gefällt. Danke scarecraft.

In COD- Kreisen schlägt das Tool im übrigen große Wellen. Auf der größten deutschen Szene- Seite gibts ne News + Interview:
NEWS + INTERVIEW

Thema: PAMTracker für COD4 *UPDATE*
Am im Forum: Projekte

Projekt: PAMTracker 4.02 für COD4

Beschreibung:
Da ich davon ausgehe, dass viele Leser mit dem Gebiet eSport, ESL und dem Spiel Call of Duty 4 (COD4) nicht allzu nahestehen, habe ich bei der Beschreibung etwas weiter ausgeholt.

Das Spiel Call of Duty 4 ist diese Saison erstmals in der European Pro Series, der Königsklasse der ESL vertreten. Vergleichbar ist diese Spielklasse in etwa mit der Fussball-Bundesliga. Details 1 Details 2
Die Spiele der teilnehmenden Teams sind auf höchstem Niveau und viele Spieler möchten diese verfolgen. Allerdings ist es nicht bei jedem Match möglich, dieses via TV-Stream zu tun.

Doch es gibt eine weitere Möglichkeit:
Es wird eine modifizierte Version des Spieles COD4 genutzt. Im sogenannten PAM- Mod ist eine Trackingfunktion integriert. Alle 10 Sekunden werden die jüngst mitgeloggten Ereignisse in eine auslesbare Servervariable geschrieben.
Bisher gab es keine bzw nur ungenügende Programme, die diese Logginginfos darstellen können. Auf Grund der jüngsten Ereignisse (EPS) habe ich mich entschlossen, eine ausgereifte Trackingsoftware zu schreiben.

Allgemeine Infos zu COD4 im entsprechenden Wiki-Eintrag

Features:
Das Programm kann alle logbaren Ereignisse (Mapchange, Kill, Bombplant, ...) in einer ansprechenden Form ausgeben.
Es ist weiterhin möglich, Statistiken über die Spieler der Teams zu sehen. Auch wird eine kleine Serverinfo inkl. gespielter Map und angewandter Regeln angezeigt.

Neben der Hauptfunktionalität ist das Programm mit einer Anzahl an Extras angereichert:
- Auf einer externen Homepage lässt sich mittels Feedback- Button Rückmeldung an den Entwickler geben
- Der KUpdater von Klaus Moster ist integriert. Updates lassen sich so einfach installieren und verwalten.
- Der ClipboardReader erleichtert die Eingabe einer IP:Port- Kombination.
- Via GameMonitor lassen sich unterstützte Server anzeigen.

Viele kleine Features erleichtern die Benutzbarkeit und verbessern die Darstellung.

Download:
***UPDATE***
Eine erste Version ist soweit getestet, dass sie sich Release nennen kann.
DOWNLOAD

Screenshots:
Im Dateianhang befindet sich ein Screenshot des PAMTrackers in action.
Dargestellt wird ein Trainingsmatch zwischen den beiden Topteams n!faculty und den Enro Griffins. Beide werden ab März in der EPS um viel Geld und Ruhm spielen.

Thema: AppDater (ehemals K_Updater)
Am im Forum: Projekte

Zunächst einmal großes Lob, geile Komponente!

Habe leider einen Bug gefunden:
Die Auswertung der Statistiken geht nur bis 2008. 09 ist nicht in der Dropdownlist enthalten.

Thema: Invoke will nicht (TargetInvocationException)
Am im Forum: GUI: WPF und XAML

Sooo, auch dieses Problem ist gelöst :)

Anstatt dem o.g. Konstrukt habe ich die Funktion

ListBoxTracker.ScrollIntoView(anyObject);
genutzt.
Diese scrollt zum angegebenen Objekt. Wenn ich also nach dem hinzufügen eines neuen Objektes direkt diese Funktion mit dem Objekt aufrufe, wird immer ans Ende gescrollt.

Manchmal ist die Lösung doch weitaus näher als man annimmt :)

Das Projekt geht in großen Schritten voran und wird sicherlich demnächst im Projekte- Bereich von mir vorgestellt werden.

@eichhoernchen: Danke für den Tipp mit den Delegaten, mein Code ist nun weitaus übersichtlicher.

Thema: Invoke will nicht (TargetInvocationException)
Am im Forum: GUI: WPF und XAML

e.Content beinhaltet die Daten, die ins Stackpanel geschrieben werden sollen (vereinfacht kann man sagen eine Liste mit Strings)

Das mit dem Delegaten werd ich nachher zuhause mal anpassen. Aber das wird keine Auswirkungen auf das Scrollviewer- Problem haben denke ich?!

Thema: ClipBoardReader
Am im Forum: .NET-Komponenten und C#-Snippets

Das habe ich auch schon überlegt. Weiterhin wäre es etwas leichter zu bedienen, wenn man dann eine Stop()- Methode hätte und Running private wäre.

So könnte man via Start() und Stop() alles regeln.

Habe zur Zeit leider einiges um die Ohren, werde mich dem aber annehmen, sobald etwas mehr Zeit zur Verfügung steht.

Thema: ClipBoardReader
Am im Forum: .NET-Komponenten und C#-Snippets

ClipboardReader:

Da ich in mehreren Projekten von mir die Technik genutzt habe, Daten aus dem Clipboard zu lesen, habe ich vor einiger Zeit mal einen ClipBoardReader geschrieben.

Einführung:
Ich beziehe mich in der Erklärung auf folgenden Beispielcode:

private ClipboardReader reader;

//init the reader
reader = new ClipboardReader();

//store some regEx to the reader
reader.Add("http://www\\.youtube\\.com/watch\\?v=[a-zA-Z0-9-_]{11}");
reader.Add("gr[ae]y");

//register the eventhandler
reader.ResultFound += reader_ResultFound;

//start the reader
Thread thread = new Thread(reader.Run);
thread.SetApartmentState(ApartmentState.STA);
thread.Start();

Nach der Initialisierung des Readers ist es möglich mit der Methode Add() reguläre Ausdrücke in Stringform hinzuzufügen. Im Beispiel wird zum Einen die Erkennung von Youtube- URLs und zum Anderen die Erkennung des Wortes gray oder grey hinzugefügt.

Das Event ResultFound muss abonniert werden. Über dieses werden die Ergebnisse ausgegeben.

Zuletzt kann man die Run()- Methode des Readers in einem Thread ausführen.

Laufzeitverhalten:
Wenn die Methode Run() läuft, wird in einem bestimmten Intervall (lässt sich einstellen, Standard ist 200ms) das Clipboard nach Texten geprüft, die den übergebenen Regular Expressions entsprechen.
Sobald ein solcher Text gefunden wird, wird das ResultFound- Event ausgelöst. in den EventArgs befindet sich dann eine Liste mit gefundenen Einträgen.

Zu beachten:
- Der Thread muss den ApartmentState.STA gesetzt haben. Dies liegt im Zugriff auf eine Systemkomponente begründet. (Soweit ich das verstanden habe)
- Um den Reader zu beenden, muss man die Eigenschaft Running auf false setzen.

Einsatzbeispiele:
Ich benutze in meinen Projekten diese Komponente um dem User die Eingaben zu erleichtern.
- Ein Programm erwartet nach dem Start eine IP:Port- Kombination. Befindet sich eine solche im Clipboard, wird sie bereits in die entsprechenden TextBoxes eingefügt
- Ein weiteres Programm ermöglicht es, URLs bestimmter Webseiten (Youtube, MyVideo etc) hinzuzufügen. Dies geschieht teils über den ClipboardReader.

Lizenz:
Die Komponente kann in ihrer hier bereitgestellten Form in kommerziellen wie auch nonkommerziellen Projekten eingesetzt werden. Es steht euch frei, sie zu verändern. Auf gutdeutsch: Macht was ihr wollt damit.
Es wäre natürlich schön, hin und wieder zu erfahren, ob und wo ihr den Reader eingesetzt habt.

Über Feedback werde ich mich sicherlich nicht beklagen.

Viel Spaß bei der Nutzung,
MOnsDaR

Clipboard Zwischenablage ClipboardReader Reader Regex Regular Expression

Thema: Invoke will nicht (TargetInvocationException)
Am im Forum: GUI: WPF und XAML

Sooo, wurd leider etwas später als Sonntag.
Das Ganze funktioniert nun einwandfrei. Eingehende Daten werden in ein Stackpanel gepackt welches widerrum in die Listbox geadded wird.

Allerdings hat sich direkt das nächste Problem aufgetan:
Ich möchte bei jedem eingehenden Item gern die ListBox ToBottom scrollen. Hierfür kann man ja die ScrollView aus der ListBox "extrahieren" und muss deren Methode "ToBottom()" aufrufen.
Dies löst leider eine InvocationException aus und ich kann trotz aller Versuche dieses nicht verhindern.

private delegate void ItemReceivedDelegate(List<MessageContent> givenContent);
void tracker_ListItemReceived(object sender, ListItemEventArgs e)
{
      Dispatcher.Invoke(DispatcherPriority.Normal,
      (ItemReceivedDelegate)delegate(List<MessageContent> givenContent)
      {
            [..hier wird ein StackPanel gebaut..]
            AddNewListItem(newStackPanel);
      }, e.Content);
}


private void AddNewListItem(StackPanel givenStackPanel)
{
     ListBoxTracker.Items.Add(givenStackPanel);

     //Scroll down listbox
     ScrollViewer sv = VisualTreeHelper.GetChild(ListBoxTracker, 0) as ScrollViewer;
     sv.ScrollToBottom();
}

Ich hoffe ich habe nur das unwichtige gekürzt und der Codeteil ist leicht verständlich.

- Wenn ich den Teil mit der Scrollbar entferne, geht es perfekt (also keine Invoc.Exception von ListBoxTracker
- Wenn ich den ScrollViewer- Teil reinnehme, o.g. Exception

Müsste der Code nicht komplett im Kontext der GUI ausgeführt werden? Warum wird bei der ListBox keine Exception geschmissen?
Wenn ich die Scrollview nochmal mit einem Dispatcher/Delegat-Konstrukt umschließe wie in der oberen Funktion kommt auch die TargetInvocationException

Mir schwirrt der Kopf, ich hoffe jemand kann mir helfen...

Danke,
MOnsDaR

Thema: Invoke will nicht (TargetInvocationException)
Am im Forum: GUI: WPF und XAML

Alles klar, werde im Laufe des Wochenendes mein Design umbauen (Thread übergibt Daten im Event, Daten werden per Databinding dann an die ListBoxItems gebindet) und mich wahrscheinlich Sonntag dann melden inwieweit das Ganze läuft.

Danke für die Antwort, hab mir schon gedacht, dasses nicht die tollste Lösung ist, die Stackpanel im Thread anzulegen. Dachte allerdings nicht, dass es solche Probleme hervorrufen wird.

Thema: Invoke will nicht (TargetInvocationException)
Am im Forum: GUI: WPF und XAML

Moin!

Ich weiß, dass das Thema Invoke schon bis zum Erbrechen durchexerziert wurde und ich habe auch die Suche schon ordentlich bemüht. Leider übersehe ich scheinbar bei jedem Lösungsansatz eine Kleinigkeit oder ich habe ein exotischeres Problem als ich vermute.

Ich habe im Prinzip den Standard- Invoke Fall:

Ein eigenständiger Thread erstellt bei mir in einer Funktion ein Stackpanel und sendet dieses verpackt in einem Event an meine GUI.
Meine GUI fängt dieses Event ab und soll dann das StackPanel einer ListBox hinzufügen.

Inklusive Invoke kommt dann folgender Code zustande:

public partial class Window1
	{ [...]
        private delegate void ItemReceivedDelegate(object sender, ListItemEventArgs e);
        void tracker_ListItemReceived(object sender, ListItemEventArgs e)
        {
            if(ListBoxTracker.Dispatcher.CheckAccess())
            {
                ListBoxTracker.Items.Add(e.Panel);
                ListBoxTracker.Items.Refresh();
            }
            else
            {
                ListBoxTracker.Dispatcher.Invoke(new ItemReceivedDelegate(tracker_ListItemReceived),
                                 sender,
                                 e);
                return;
            }
        } 
[...]
}

Nun bekomme ich jedoch trotz allem eine TargetInvocationException. Mit Invoke habe ich bisher keine Erfahrungen gemacht (zumindest keine tiefergehenden). Kann es sein, dass ich irgendwo in diesem Code eine Kleinigkeit übersehen habe?

Ich hoffe ihr könnt mir weiterhelfen, der Google- Suchmarathon konnte es leider nicht...

Achso:
Ein ähnliches Thema ist schon einmal unbeantwortet geblieben (LINK)

Vielen Dank für die Bemühungen schonmal im Voraus,
MOnsDaR

Thema: Mashup MediaPlayer *work in progress*
Am im Forum: Projekte

Zu dem Problem des Abspielens:
Es wird möglich sein, dass ein Song mehrere Sourcen hat. D.h. wenn der Youtube- Song laggt, kann die MyVideo- Source angezapft werden. Weiterhin haben wir festgestellt, dass direkt gestreamte Videos lang nicht so schlecht abspielen, wie wenn man sie über die Youtube- Page abspielt. (Eine gute Leitung vorausgesetzt)

Das Suchen der Songs:
Die Songs in der Datenbank müssen natürlich selbst hinzugefügt werden. Viele Dienste bieten einfach nicht genug Infos, um auf ein qualitativ hochwertiges Medium schließen zu können.
Wir wollen allerdings versuchen, es dem User so einfach wie möglich zu machen, die Infos zum Song zusammenzutragen.

So gibt es verschiedene Dienste im Internet, die bei gegebenem Titel und Interpreten mehr Infos zum Song zurückgeben können. Diese Dienste kann man via Plugin nutzbar machen.
Beispiel

Weiterhin kann man auch von anderen Usern die DB zu seiner eigenen hinzufügen. So erweitert sich die Bibliothek immer weiter. Neben neuen Songs bekommen vorhandene dann auch neue Quellen.

Thema: Mashup MediaPlayer *work in progress*
Am im Forum: Projekte

Stell dir folgendes vor:

Du kennst jemanden, der hat einen Interpreten in seiner Datenbank, den du gut findest. Er kann nun alle Lieder dieses Interpreten in eine portable Playliste exportieren, dir diese Datei zusenden und du kannst diese Playliste in deine Datenbank aufnehmen.

Mit wenigen Schritten und wenig Datentransfer (so eine Datei wird keine 5KB groß sein) hast du nun deine Musikbibliothek erweitert und kannst fortan die Lieder des Interpreten für deine Playlisten verwenden.

Ein weiterer Ansatz wäre, dass man komplette externe Datenbanken importieren kann. So ist es möglich, wenn 5 User eine Datenbank mit verschiedenen Einträgen haben, diese zusammenzuführen und eine weitaus größere Datenbasis zu haben.

Unser anderer Ansatz, XML Dateien die jeweils eine Playliste darstellen, ist zwar gut, aber hat viele Nachteile:
- Lieder, die in 2 verschiedenen Playlisten vorhanden sind, werden redundant gespeichert
- Man kann nur feste Playlisten laden. Durch die Datenbank gibt es Dynamische Playlisten (was, wenn du mal Lust hast, alle deine Rock- Lieder durchzuhören o.ä.)
- In einer Datenbank ist es einfacher, pro Song mehrere Sourcen zu speichern. D.h. ich habe für mein Lied einen Link zu Youtube, einen Link zu MyVideo und falls beides mal ausfallen sollte, einen Verweis auf eine lokale MP3- Datei.
- Es geht schneller, eine darauf abgestimmte Datenbank zu durchsuchen/filtern, als dies mit XML- Dateien zu machen. (Zumindest geh ich davon aus, Quellen hab ich dafür nicht)

Das sind nur einige Nachteile, die mir spontan einfallen. Ich hoffe nun ist das mit der Datenbank etwas klarer.

Zum Rippen der Lieder: Es gibt bereits einige Tools, die sich auf diese Funktionalität beschränken. Legal ist das zumindest gemäß den AGBs der Betreiber nicht.
Wir haben vor, einem Song (Je nach Art, YoutubeSong, MyVideoSong usw) pluginmäßig Aktionen hinzuzufügen zu lassen. D.h. man könnte ein Rip- Plugin schreiben und bei Rechtsklick auf den Song würde diese Aktion im Kontextmenu erscheinen.

Mich freut es, dass doch Interesse vorhanden ist!

Thema: Mashup MediaPlayer *work in progress*
Am im Forum: Projekte

Hmmm, habe ich das Konzept schlecht erklärt, oder ist das Projekt für außenstehende nicht annähernd so interessant, wie wir uns das vorstellen?

Wir sind weiterhin auf der Suche nach jemandem, der uns GUI- mäßig unter die Arme greifen kann. Vielleicht findet sich ja jemand.

Thema: AKW-Simulator
Am im Forum: Projekte

Mein Arbeitgeber entwickelt Kraftwerksimulatoren, wann fängst du bei uns an? =D

Ne im Ernst, nettes Programm...

Thema: Mashup MediaPlayer *work in progress*
Am im Forum: Projekte

Um endlich mal meinen Beitragszähler zu entjungfern möchte ich hier ein Projekt vorstellen, an dem ich zur Zeit mit zwei Arbeitskollegen in unserer Freizeit arbeite:

MusicMasher
Sinn des Projektes ist es, einen Musicplayer zu entwickeln, der statt lokaler Dateien Musik(-videos) von verschiedenen Onlinediensten wie Youtube oder MyVideo zusammensucht (Mashup) und abspielt.
So hat man mittels Internet- Verbindung Zugriff auf ein nahezu unendlich großes Repertoire an Musik und benötigt zum Abspeichern dessen lediglich etwas Platz für die URLs.

Einige Features die wir uns überlegt und zu großem Teil auch schon implementiert haben:

Plugins
Für nahezu alle Dienste, die dem Player Daten liefern können, kann man Plugins schreiben. Es gibt Plugins um Lieder abzuspielen, um mehr Dienste nach neuen Medien zu durchsuchen oder um Informationen über ein bestimmtes Lied zu bekommen.

Abspeichern der Daten
Zur Zeit werden alle Songs mit passenden Details in XML- Dateien abgespeichert. (Eine XML- Datei stellt hierbei eine Playliste dar).
Wir sind allerdings dabei, eine SQLite- Datenbank in den Hintergrund der Anwendung zu legen. So hat man jederzeit die Übersicht über Interpreten, Alben, Genres, Playlisten etc.

Abspielen vieler verschiedener Formate
Durch den Einsatz der VLC- Library sind wir in der Lage nahezu jedes Format abzuspielen.

Es sind natürlich noch viele weitere Features enthalten, vor allem um die Benutzerfreundlichkeit zu erhöhen. So soll die GUI möglichst einfach und innovativ gestaltet werden (haben bereits einige Konzepte erstellt und TestGUIs ausprobiert).

Derzeitiger Stand:

Wie eingangs schon erwähnt, haben wir schon einen Großteil der Features implementiert. Zurzeit arbeiten wir an der Integration der SQLite- DB. Eine auf Songs im XML- Format basierende TestGUI besteht und spielt Songs von Youtube und MyVideo ab.

Unser größtes Problem ist derzeit einfach noch die GUI. Wir haben einige gute Ideen zu deren Umsetzung in WPF uns aber entweder das handwerkliche Geschick oder das künstlerische Auge fehlt.
Darum möchte ich diesen Beitrag direkt mit einem Gesuch verbinden: Wenn jemand an einem solchen Projekt mitarbeiten möchte und Lust auf die Aufgabe hat, in WPF eine GUI umzusetzen, kann er sich gern bei mir melden.
Kontaktinformationen finden sich in meinem Profil (ICQ und Skype)

Mich würde interessieren, was ihr von dem Konzept haltet. Weiterhin werde ich Projektfortschritte natürlich hier einpflegen und euch auf dem laufenden halten. Wir hoffen demnächst schon eine erste laufende Version veröffentlichen zu können.