AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi ms in sekunden und minuten stunden umrechen ?
Thema durchsuchen
Ansicht
Themen-Optionen

ms in sekunden und minuten stunden umrechen ?

Ein Thema von mimi · begonnen am 16. Apr 2005 · letzter Beitrag vom 16. Apr 2005
 
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#10

Re: ms in sekunden und minuten stunden umrechen ?

  Alt 16. Apr 2005, 20:25
ich habe mich verschrieben oben ich meinte 3000 das hat was mit fmod zu tuen:
Die FMusic funktion spical midi sind zu langsam:

Zitat:
Hab das jetzt mal getestet, und das gleiche Problem mit den Buttons taucht hier auch auf, allerdings ausschließlich mit MIDI-files.

Hab dann mal weiter rumgetestet, und kam auf folgendes:
Wenn man in einer Schleife sowas laufen läßt wie
Code:

WHILE FSOUND_IsPlaying()
count += 1
WEND

erhöht sich count bei mir ca. um 500000 pro Sekunde bei wav, mp3, etc.
Wenn man ähnlich dies hier nutzt:
Code:

WHILE FMUSIC_IsPlaying()
count += 1
WEND

oder auch
Code:

REPEAT
count += 1
UNTIL FMUSIC_IsPlaying()

mit irgendwelchen mod, dann erhöht sich count ebenfalls um ca. 500000 pro Sekunde.
Nutzt man eine der beiden letzten Möglichkeiten jedoch für MIDI-files, dann erhöht sich count nur um etwa 10 (!) pro Sekunde.
Der Aufruf FMUSIC_IsPlaying() bzw. FMUSIC_IsFinished() auf eine MIDI-file dauert einfach extrem lange, so dass es nicht ratsam ist, diesen in die Event-Hauptschleife zu legen, da dann die ganzen Fenster-Events extrem lange zum Abarbeiten brauchen, bzw. es zu einem Totalstau kommt, da mehr Events eingehen, als abgearbeitet werden können.

Ich habe das dann mal hier gepostet:
http://www.fmod.org/forum/viewtopic.php?t=2490
aber da gabs noch keine Antwort (allerdings steht sie eigentlich auch schon davor).
FMOD nutzt in Version 3.* DirectMusic für MIDI-files und ist von deren Antwortzeiten abhängig.
Lösung derzeit ist also, diese Schleife in einen seperaten Thread zu packen, der einfach eine globale Variable 'isplaying' setzt, welche in der echten Hauptschleife dann ausgewertet werden kann.

Mit FMOD EX, welches ja seinen eigenen MIDI-Player mitbrint, läuft das übrigens, da wird auch FMUSIC_*** mit MIDI-files 500000 mal pro Sekunde aufgerufen.
aus dem www.fmod.de forum
(es gibt dort leider keinen link bei der deutschen version...)

@3_of_8
das der Timer ungeanu ist weiß ich, aber ich dachte, es reicht aus wenn ich den von delphi nehme, weil ich wollte ja nur eine zeit anzeige schreiben(die jetzt so funktioniert wie ich sie haben wollte)
(der richtig code ist mein zweiter beitrag)

@SirThornberry
soll das heißen es mach keinen sin einen wert von <= ca 20 zu machen ?
das wuste ich noch nicht. ich dachte 1 ms heißt das windows den timer jede ms aufruft....
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz