c# und quartz.dll MP3 Player

Rando

Mitglied
Moin Leute,

bin neu hier im Forum und da ich ad hoc keinen extra Bereich für Fragen zu C# ausmachen konnte, poste ich mal hier (@Mods, Admins sollte ich was übersehen haben und ihr verschiebt das hier, dann sry für den Aufwand).

So zu meinem Problem:

Ich habe unter Verwendung der Quartz.dll in C# einen MP3Player gebastelt, der nur sehr rudimentäre Basis Funktionen implementiert (Abspielen, Stop, Pause und Resume).

Jetzt mein Problem:
wenn ich eine Datei öffne mit:

MP3Player.RenderFile(value); ---> [value ist hierbei der String des Dateinnamens]
MP3Player.Run();

und dann während das Stück gespielt wird ein neues öffnen möchte, passiert nicht das was ich erwarten würde, nämlich, dass das derzeit spielende Stück abbricht und durch das neue Stück ersetzt wird, sondern das 2. Stück wird paralell gestartet und ich habe so eine Art Kanon-Effekt, was wirklich nicht sooo der Brüller ist.

Ich bin nun nicht so der Crack und relativ neu in der Programmierwelt, weshalb ich hoffe, dass jemand von euch mir einen Rat geben kann, wie ich das Problem lösen kann.

Thx und Greeds
Rando
 
Über einen Lösungshinweis hätt ich mich zwar deutlich mehr gefreut, aber auch danke für diesen Hinweis, der mir wieder einmal deutlich macht, dass ich erst lesen und dann posten sollte .......

Greeds Rando:D
 
Ich weiss leider auch nicht, wie du das Problem lösen kannst, aber ich rate mal: Du hast sicher nicht ohne Grund eine Stop-Funktion in den Player eingebaut, oder? Stopp doch das erste Stück, bevor du das zweite startest. Sorry, wenn das ein blöder Vorschlag ist.
 
gibt keine blöden Hinweise für mich. Ich habe das natürlich probiert, in dem ich folgendes programmiert hatte:

MP3Player.Stop();
MP3Player.RenderFile(value);
MP3Player.Run();


Bei der Anwahl eines neues Titels, war nun ganz klar eine kleine Unterbrechung (wenige Millisekunden) in dem bereits laufenden Stück zu hören, aber danach spielte das Stück weiter und das 2. wurde dann auch gestartet.

Also das funktioniert offenkundig nicht....

Greeds Rando:D
 
Hallo,

ich würde intuitiv mal die Reihenfolge ändern.

Zuerst mit MP3Player.RenderFile(value); die neue Datei festlegen, dann mit MP3Player.Stop(); das Musikstück anhalten und dann mit MP3Player.Run(); wieder starten.

Also:

MP3Player.RenderFile(value);
MP3Player.Stop();
MP3Player.Run();

Ich vermute allerdings nur, dass das klappen könnte.

Rando: Ich wäre Dir ultradankbar, wenn Du mir den Code schicken könntest. Ich programmiere zwar keinen MP3-Player aber ein kleines Spielchen, in dem ich gerne auch Sound hätte.

Gracias
Sir Raven
 
Glaube nicht, dass das Sinn macht Sir_Raven. Weil du ja das Objekt schon neu belegst. Vielleicht liegt ja da der Punkt. Probiers mal so, dass du erstmal das alte Objekt zerstörst (also komplett auflöst) und dann mit new (oder was man bei C# auch so nimmt) neu initialisierst, dann die neue Datei zuordnen und abspielen.
 
Zurück