Autor Beitrag
Gunboat
Hält's aus hier
Beiträge: 2

Win XP
Delphi 7
BeitragVerfasst: So 19.12.04 13:21 
Hi! Ich hab jetzt schon alles versucht um die verbleibende Zeit eines CD-Titels bzw. der gesamten Cd anzeigen zu lassen! Ich verwende Delphi 7 und die TMediaplayer-Komponente. Es ist kein Problem mit tfTMSF od. tfHMS die aktuelle Position mit Mediaplayer1.Position anzeigen zu lassen, aber ich kann dann die aktuelle Position nicht von Mediaplayer1.Length abziehen, denn dabei wird der Minuten-wechsel nicht beachtet. Ich habe das sowohl mit nem Record versucht, als auch ohne. Mit tfMilliseconds geht die RestMinutenanzeige nur bei wave und Mp3 titeln, aber nicht bei medien mit mehreren tracks. Um die aktuelle Position bei Mp3 titeln anzuzeigen, habe ich folgenden Quelltext verwendet(Das geht nicht wenn ich ne Cd abspiele!):

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
with Mediaplayer1 do
begin
  zeit:= position div 1000;
  Minutes:= zeit div 60;
  Seconds:= zeit mod 60;

  label4.caption:= IntToStr(Minutes) + ' : ' + IntToStr(Seconds);

end;




Kann mir irgenjemand helfen? Ich wäre euch sehr dankbar!

MfG
Gunbóat
AXMD
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 4006
Erhaltene Danke: 7

Windows 10 64 bit
C# (Visual Studio 2019 Express)
BeitragVerfasst: So 19.12.04 13:28 
:welcome:

Soweit ich weiß arbeitet TMediaPlayer mit einem ganz eigenen Zeitformat; es gibt in Delphi eine Umrechnungsroutine in TDateTime dafür - allerdings weiß ich im Moment leider nicht, wie die heißt.

AXMD
SQLException
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 89

WinXP + D5 Enterprise
Win2k + D6 Personal
BeitragVerfasst: Mo 20.12.04 10:42 
moin,

ohne das ichs jetzt selber ausprobiert habe, aber logischerweise würde ich ja sagen:

wie lange ein track schon gelaufen ist weisst du, wie lange das teil insgesamt geht weisst du auch, jeweils beides in sekunden, und dann ziehst du nur noch ersteres vom zweiten ab. ?

gut so hätte ich das mit dem dspack gemacht, ob das bei dir auch so einfach geht...
Gunboat Threadstarter
Hält's aus hier
Beiträge: 2

Win XP
Delphi 7
BeitragVerfasst: Mo 20.12.04 16:04 
@SQLException

Ja, theoretisch ist das ja auch so einfach, aber es funktioniert nicht bei CDs! Bei MP3s nimmt man einfach die Länge des Titels und die Position und subrahiert die Position von der Länge...alles kein Problem....aber wenn ich versuche die Position eines CD-Titels mti obigem quelltext auszugeben(was ja bei Mp3s und Waves funktioniert), springt die Sekundenanzeige wild zwischen 0ms und 100000 ms hin und her und ich weiß einfach nicht warum! Es könnte höchstens daran liegen, dass eine CD eine TRACK-Nummer hat und einzelne Dateien nicht. Aber auch wenn ich versuche eine einzelne *.cda Datei zu öffnen, geht es nicht! Ich programmiere einen Mediaplayer und brauche dringend hilfe um diese Problem zu lösen!

MfG
Gunboat