Avatar billede assassin Juniormester
24. september 2009 - 11:10 Der er 8 kommentarer og
1 løsning

mp3player fra tekstfil

Jeg har en tekstfil med følgende indhold:

F:\Safri duo - Played a live,Absolute music 26.MP3
F:\Sanne Salomonsen - Den Lille Løgn,Absolute Music 13.MP3
F:\Samantha Fox - Touch Me (I Want Your Body),Greatest Hits.MP3

Filen bliver læst, men det er kun den sidste mp3 fil, som bliver afspillet, hvordan får jeg den til at afspille alle 3 filer efter hinanden?

AssignFile(txt,ExtractFilePath(Application.ExeName)+'Playlists\'+MMPlayLists.SelText+'.txt');
      Reset(txt);
      While not eof(txt) do
      begin
        readln(txt, MP3);
        if FileExists(MP3) then
        begin
          mp3player.Close;
          mp3player.FileName:=MP3;
          mp3player.Open;
          mp3player.Notify:= true;
          StatusBar1.simpleText:='Afspiller nu: '+MP3;
          mp3player.Play;
        end else
          Showmessage(MP3+' findes ikke');
      end;
    end;
24. september 2009 - 23:26 #1
Prøv at slette linien:
mp3player.Notify;

Efter linien mp3player.Play;
prøv at skrive
Sleep(mp3player.Lenght);
24. september 2009 - 23:26 #2
Sleep(mp3player.Length);
Avatar billede assassin Juniormester
25. september 2009 - 23:15 #3
Det virker fint, bortset fra at programmet ikke reagere på noget før alle sangene er færdig, så jeg kan heller ikke få lov at trykke på stop af afspilning af musik.
Avatar billede hugopedersen Nybegynder
28. september 2009 - 12:12 #4
Måske kan du finde inspirration i http://delphi.about.com/od/multimedia/l/aa112800a.htm
28. september 2009 - 23:40 #5
Nå, så må du gøre som jeg har gjort, selv om jeg har fået at vide at det er forkert.
Lav en Global Integer, som bruges til at tælle gennem din tekstfil.
Således at den mp3 fil, Integeren peger på, er den næste melodi der skal spilles.
Sæt en Timer på der trigger 10 gange i sekundet.

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if (MediePlayer.Position = 0) or (MediePlayer1.Position >= MediePlayer1.Length) then
  begin
    MediePlayer1.FileName := // Den næste fra listen.
    MediePlayer1.Open;
    MediePlayer1.Play;
  end;
end;
Avatar billede assassin Juniormester
30. september 2009 - 20:02 #6
Jeg kikker lige på det.
Avatar billede assassin Juniormester
30. september 2009 - 20:02 #7
Jeg kikker lige på det.
Avatar billede assassin Juniormester
10. oktober 2009 - 01:00 #8
Anton - smid et svar, så kan du få nogle points
10. oktober 2009 - 23:32 #9
Jeg takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester