Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Frequenzen bei wav/mp3-dateien (https://www.delphipraxis.net/10240-frequenzen-bei-wav-mp3-dateien.html)

Stundenplan 28. Feb 2009 15:40

Re: Frequenzen bei wav/mp3-dateien
 
Also, bei mir muss irgendwie das position nicht stimmen, aber wenn ich es
so abfrage, stimmt es doch!
Ich hab mir ne Funktion für Zeitausgabe (zB: 04:23) eingebaut, aber manchmal
seh ich da 4532:23! Was ist das Problem? Hier ist der Code:

Delphi-Quellcode:
function TBassPlayer.Time(State: Integer): String;
var min, sec: Integer;
    Erg, mins, secs: String;  //Ergebnis, MinString, SecString
begin
sec := position;            // State = 0  einfach: 04:23
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;
end;
min := min - 4349924 - 1492 -384 -1516-8; /Hier hab ich schon so viel abgezogen, aber es
// kommt immer mehr hinzu!
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := mins+':'+secs;
if State = 1 then           //State = 1  mit Länge: 04:23/06:23
begin
sec := length;
min := 0;
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;                // Hier funzt es anscheinend
end;
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := Erg+'/'+mins+':'+secs;
end;
if State = 2 then         //State = 2  "abgezogen": 02:00 
begin
sec := length - position;
min := 0;
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;            // Hier funzt es auch!
end;
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := mins+':'+secs;
end;
result := Erg;
end;
]

Stundenplan 1. Mär 2009 11:52

Re: Frequenzen bei wav/mp3-dateien
 
Ich habs rausgekriegt!

Ich hab vergessen, min wieder auf null zu setzen! :oops: :wink:
Jetzt stimmts:

Delphi-Quellcode:
function TBassPlayer.Time(State: Integer): String;
var min, sec: Integer;
    Erg, mins, secs: String;  //Ergebnis, MinString, SecString
begin
min := 0;            
sec := position;            // State = 0
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;
end;
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := mins+':'+secs;

if State = 1 then           //State = 1
begin
sec := length;
min := 0;
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;
end;
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := Erg+'/'+mins+':'+secs;
end;

if State = 2 then         //State = 2
begin
sec := length - position;
min := 0;
while sec > 59 do
begin
min := min + 1;
sec := sec - 60;
end;
mins := IntToStr(min);
secs := IntToStr(sec);
if min < 10 then mins := '0'+mins;
if sec < 10 then secs := '0'+secs;
Erg := mins+':'+secs;
end;
result := Erg;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:12 Uhr.
Seite 3 von 3     123   

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