PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Audio Player mit Plugin-Sytem



Enni
29-05-2006, 12:27
Hallo zusammen,
ich habe vor einen Audio Player zu schreiben, der auf Plugins basiert.

Das Problem ist, dass ich nirgends Infos darüber finde, wie man ein Plugin-System aufbaut (Google bringt ne Menge Infos über Plugins für bestimmte Software) -> ich brauch aber Infos über den Aufbau im Allgemeinen.

Wäre nett, wenn mir jemand Links zu diesem Thema gibt, ich bin am verzweifeln! :( Danke im Voraus

MfG: Enni

SeeksTheMoon
05-06-2006, 10:31
Schau Dir einfach Software an, die Plugins hat. xmms zum Beispiel.

comrad
06-06-2006, 13:43
Ich hab sowas ähnliches wie ein Plugin-System, denke ich zumindest.

Basierend auf dem OOP-Konzept ist es meinem Music Player egal, ob ich von einer MP3 oder einer OGG-Datei abspiele. Die Befehle sind immer die gleichen und die Schnittstelle (Java Interface) definiert den Zugang (z.B. play(), stop(), getTags()).

Nun könnte man noch viele weitere Audioformate hinzufügen, indem man eine Abspielklasse hat, die das Interface implementiert.

Somit hätte man ein grundlegendens Plugin-System.

Gruss,
comrad

nul
07-06-2006, 16:17
@camrad: Ein PluginSystem definiert sich doch nicht durch ein Interface das man Implementieren kann. Erst wenn man die Einzelnen Klassen laden bzw. entladen kann.

@Enni: Welche Programmiersprache soll es denn sein? Fuer Java sollte die Java API von Sun eigentlich genug material bieten.
Fuer C++ kannst du dir mal folgendes Howto (http://www.isotton.com/howtos/C++-dlopen-mini-HOWTO/C++-dlopen-mini-HOWTO.html) durchlesen. Da erfaehrst du erst mal wie man ein PlugIn system aufbaut und es benutzt.
Du solltest dich zuerst damit befassen wie du deine Software aufbauen willst. Wenn du ein PluginSystem einsetzen willst solltest du nicht mit dem Abspielen eines liedes anfangen!

anda_skoa
08-06-2006, 19:22
@camrad: Ein PluginSystem definiert sich doch nicht durch ein Interface das man Implementieren kann. Erst wenn man die Einzelnen Klassen laden bzw. entladen kann.

In Java ist das ziemlich äquivalent, weil das Class Loading eingebaut ist. Da braucht man für Plugins ansich nur ein Interface auf das man Casten kann :)

Ciao,
_

Enni
12-06-2006, 12:37
Erst mal vielen Dank für eure Ratschläge :) und sorry, dass ich jetzt erst schreibe... (war im Urlaub) *ggg*
Also ich benutze C++
Das HowTo wird mir sicher helfen, habe es eben mal überflogen...
nochmals danke für den Link @nul ;)

Ich werd wieder was posten sobald ich erste brauchbare Ergebnisse hab.
Bis dann, und macht weiter so ;)

comrad
15-06-2006, 16:22
@camrad: Ein PluginSystem definiert sich doch nicht durch ein Interface das man Implementieren kann. Erst wenn man die Einzelnen Klassen laden bzw. entladen kann.

@Enni: Welche Programmiersprache soll es denn sein? Fuer Java sollte die Java API von Sun eigentlich genug material bieten.


Wenn du mit der Reflection-API nicht unbedingt arbeiten willst, dann sollte man sich auf ein Plugin-Interface einigen. Das Laden und verwenden der Klassen geht dann schon in einem Rutsch ;)

Gruss,
comrad