Wie zu erkennen, wenn eine mp3-Datei fertig spielen
Mein c# windows form ermöglichen die Wiedergabe einer mp3-Datei.Ich Tat dies mit diesem code
WMPLib.WindowsMediaPlayer wplayer;
wplayer = new WMPLib.WindowsMediaPlayer();
wplayer.URL = "c:/Standup.mp3";
wplayer.controls.play();
dies funktioniert perfekt, aber ich möchte wissen, Wann die Datei fertig spielen, so dass ich ihn neu starten.
Pls wie Mach ich das?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie nicht unbedingt wissen müssen, wenn die Datei abgeschlossen hat, die für andere Zwecke als die der looping, Sie können prüfen, die setMode-Methode, um drehen Sie den track-looping auf.
http://msdn.microsoft.com/en-us/library/windows/desktop/dd564867(v=vs. 85).aspx
Können Sie es mithilfe der PlayStateChanged Veranstaltung. Sie können es hinzufügen, um Ihre Media-Player wie diesem.
können Sie dann prüfen, für die
MediaEnded
PlayState in den EventHandler und setzen Sie die currentPosition zu Beginn das Lied :Edit: ich habe voraussichtlich in der Lage sein, einen song wiederholbar zu dem Punkt, ich war es Leid, und der obige code nicht funktioniert hatte, wenn ich breakpoints gesetzt werden. Sobald ich Sie abgenommen, ich fand es gab andere PlayStates wurden, stoppen Sie die Datei aus, die gespielt wird. Ich war in der Lage zu umgehen, indem er eine one-shot-timer.. Jetzt habe ich bin müde von dem song, dass ich mit war. Gibt es vielleicht/wahrscheinlich einen besseren Weg, dies zu tun, aber dies funktioniert.
Geänderten Code
Können Sie es ständig mit einem
Thread
allerdings gibt es wenig Dokumentation...Können Sie PlayStateChange(int NewState) - Funktion bulitinto media player zu erkennen, die für den Status "beendet".