Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi mp3 abspielen und wiederholen... (https://www.delphipraxis.net/50734-mp3-abspielen-und-wiederholen.html)

FriFra 30. Jul 2005 18:29


mp3 abspielen und wiederholen...
 
will in meinem Programm eine mp3 Datei abspielen und permanent wiederholen. Leider bietet der TMediaPlayer keine entpr. Eigenschaft, auch ein passendes Ereignis fehlt :roll: :gruebel: ...

PlaySound und sndPlaySound können ja leider mit mp3 nix anfangen...

fkerber 30. Jul 2005 18:31

Re: mp3 abspielen und wiederholen...
 
Hi!

Gibt es nix, wenn er fertig ist mit spielen?
Oder merk dir die Länge des Titels vielleicht?

Ciao Frederic

FriFra 30. Jul 2005 18:35

Re: mp3 abspielen und wiederholen...
 
Zitat:

Zitat von fkerber
Gibt es nix, wenn er fertig ist mit spielen?

Gibt's nicht... hab ich doch schon geschrieben :gruebel:

Zitat:

Zitat von fkerber
Oder merk dir die Länge des Titels vielleicht?

Was sollte mir das bringen? Der Player soll schießlich exact nach Ende der mp3 wieder von vorn anfangen...

Prym 30. Jul 2005 18:38

Re: mp3 abspielen und wiederholen...
 
Zitat:

Zitat von Matze
vielleicht so:

Delphi-Quellcode:
if MediaPlayer1.Position = MediaPlayer1.Length then
begin
  MediaPlayer1.Position:=0;
  MediaPlayer1.Open;
  MediaPlayer1.Play;
end;
Hau das z.B. in einen Timer mit Intervall 1000 rein.

geht bei mir wunderbar

bei dem thema habe ich auch die suche benutzt.....

fkerber 30. Jul 2005 18:45

Re: mp3 abspielen und wiederholen...
 
Hi!

Zitat:

Zitat von FriFra
Zitat:

Zitat von fkerber
Oder merk dir die Länge des Titels vielleicht?

Was sollte mir das bringen? Der Player soll schießlich exact nach Ende der mp3 wieder von vorn anfangen...

Das soll genau das bringen, was Prym auch verwendet:
Zu wissen, wann das Lied zu Ende ist, um dann neu anzufangen!


Ciao Frederic

FriFra 30. Jul 2005 18:49

Re: mp3 abspielen und wiederholen...
 
Zitat:

Zitat von Prym
Zitat:

Zitat von Matze
vielleicht so:

Delphi-Quellcode:
if MediaPlayer1.Position = MediaPlayer1.Length then
begin
  MediaPlayer1.Position:=0;
  MediaPlayer1.Open;
  MediaPlayer1.Play;
end;
Hau das z.B. in einen Timer mit Intervall 1000 rein.

geht bei mir wunderbar

bei dem thema habe ich auch die suche benutzt.....

Genau DAS ist eben keine saubere Lösung! Auch mit einem Timer weiß ich immer noch nicht exakt wann die Datei nun abgespielt wurde.
Selbst wenn ich onTimer MediaPlayer1.Length=MediaPlayer1.Position vergleiche, dann hab ich im ungünstigsten Fall eine Pause von 1s... Wenn ich den Intervall verkürze erreiche ich damit zwar eine höhere Treffequote (bezogen auf das Abspielende), jedoch zum Preis einer sehr hohen CPU-Auslastung.

Stanlay Hanks 30. Jul 2005 18:56

Re: mp3 abspielen und wiederholen...
 
Zitat:

Zitat von FriFra
Genau DAS ist eben keine saubere Lösung! Auch mit einem Timer weiß ich immer noch nicht exakt wann die Datei nun abgespielt wurde.
Selbst wenn ich onTimer MediaPlayer1.Length=MediaPlayer1.Position vergleiche, dann hab ich im ungünstigsten Fall eine Pause von 1s... Wenn ich den Intervall verkürze erreiche ich damit zwar eine höhere Treffequote (bezogen auf das Abspielende), jedoch zum Preis einer sehr hohen CPU-Auslastung.

Da haben wir beide aber eine unterschiedliche Vorstellung von "sehr hoch" ;)

Man liest sich, Stanlay :hi:

padavan 30. Jul 2005 19:50

Re: mp3 abspielen und wiederholen...
 
was macht
Delphi-Quellcode:
Mediaplayer1.notify
eigentlich?

Ist keine Spitzfindige Frage, aber vielleicht lässt sich daraus was machen?

F1 -->
Die Eigenschaft Notify bestimmt, ob nach Abschluss der nächsten Methode zur Steuerung des Media-Players (Back, Close, Eject, Next, Open, Pause, PauseOnly, Play, Previous, StartRecording, Resume, Rewind, Step oder Stop) ein OnNotify-Ereignis generiert wird.

Wenn Notify den Wert true hat, erzeugt die nächste Methode zur Steuerung des Media-Players nach ihrer Beendigung ein OnNotify-Ereignis und speichert die Benachrichtigungsbotschaft in der Eigenschaft NotifyValue. Ist Notify dagegen false, generiert die Methode kein OnNotify-Ereignis, und NotifyValue wird nicht verändert.

Prym 30. Jul 2005 20:40

Re: mp3 abspielen und wiederholen...
 
Zitat:

Zitat von FriFra
will in meinem Programm eine mp3 Datei abspielen und permanent wiederholen. Leider bietet der TMediaPlayer keine entpr. Eigenschaft, auch ein passendes Ereignis fehlt :roll: :gruebel: ...

PlaySound und sndPlaySound können ja leider mit mp3 nix anfangen...

soweit ich das lese willst du nur nen sound wiederholen und das geht mit meinem code wunderbar

Remote1 1. Aug 2005 10:35

Re: mp3 abspielen und wiederholen...
 
wenn ich das richtig verstanden habe sucht ihr nen replay (also ne loop funktion)
kannst ja auch mal im forum oder im web unter loop suchen, findest bestimmt haufen bsp

Delphi-Quellcode:
procedure Form1.MediaPlayer1Notify(Sender: TObject);
begin
    If MediaPlayer1.Notify = True then
    Begin
      MediaPlayer1.Play;
    End
  else
    Begin
      MediaPlayer1.Stop;
    End;
end;

Wenn die Loop-Funktion eingeschaltet wird, muss diese Zeile eingefügt werden ..
MediaPlayer1.Notify := True;

bzw. wenn sie ausgeschaltet werden soll ...
MediaPlayer1.Notify := False;
[edit=MrSpock]Code durch Delphi - Tags ersetzt. Mfg, MrSpock[/edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz