Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Как показать оставшееся время до конца?

01.01.2007
Procedure TForm1.Timer1Timer(Sender: TObject);
Var
 TheLength,Posi,SummaMin,SummaSec: Integer;
begin
  //Progress Bar to check if the track is playing
  if Progress.Max<>0 then Begin
    Progress.Position := Mediaplayer1.Position;
 
     //Gets the length of the selected track
    TheLength := Mediaplayer1.TrackLength[ListBox1.ItemIndex];
 
      //gets the current position of the track
      Posi := Mediaplayer1.Position;
 
      //Caculates Minutes
      SummaMin := ((TheLength - Posi) div 1000) Div 60;
 
      //Calculates Seconds
      SummaSec := ((TheLength - Posi) Div 1000) Mod 60;
 
      //Adds zero if Seconds are less then ten
      If SummaSec < 10 Then
      Label2.Caption := '0' + IntToStr(SummaSec)
      Else
      Label2.Caption := IntToStr(SummaSec);
 
      //Minutes
      Label1.Caption := IntToStr(SummaMin);
 
End;

Взято с сайта https://www.swissdelphicenter.ch/en/tipsindex.php