Zitat von
Nils_13:
Hi,
wie kann ich beim DSPack den Status eines FilterGraphs ermitteln (ich brauche if FilterGraph.Playing then und if FilterGraph.Paused) ? FilterGraph.Play/Pause haben damit nichts zu tun. Im Klartext: Wenn ein Video abgespielt wird, dann will ich wissen, dass es abgespielt wird und wenn nicht, dann will ich das auch wissen.
Hmmm du bist lustig.
Ich bin doch dabei ???
Aber bitte das geht mit
Delphi-Quellcode:
// Movie ist ausgeschaltet wenn frmVideo.FilterGraph.Active := False
if frmVideo.FilterGraph.Active = True then
frmVideo.FilterGraph.Active := False
FilterGraph.Playing := False
// Movie ist eingeschaltet wenn frmVideo.FilterGraph.Active := True
if frmVideo.FilterGraph.Active = False then
frmVideo.FilterGraph.Active := True
FilterGraph.Playing := True
// Klickst du auf stop dann mußt du
frmVideo.FilterGraph.Active auf False setzen
FilterGraph.Playing := False
// das gleiche wenn du den Playknopf drückst
frmVideo.FilterGraph.Active auf True
FilterGraph.Playing := True
// So kannst du den Status abfragen und weißt ob es läuft oder nicht.
// Alterantiv kann man dafür auch eigene Variablen deklarieren!
ISMovie : Boolean
if ISMovie = False then
ISMovie := True
Aber !! das ist
doppelt gemoppelt da der status für Play/Stop schon mit frmVideo.FilterGraph.Active abgefragt wird.
FilterGraph.Paused kannst mit dem Pauseknopf vergleichen!
FilterGraph.Paused := not FilterGraph.Paused;
Sobald du nun den Pauseknopf klicks dann wird der zustand von FilterGraph.Paused geschaltet
1 mal. klicken = True 2 mal. klicken = False. 3 mal. klicken = True usw...
usw ...
gruß