AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi TrackBar - MediaPlayer Problem
Thema durchsuchen
Ansicht
Themen-Optionen

TrackBar - MediaPlayer Problem

Ein Thema von iamjoosy · begonnen am 23. Mär 2004 · letzter Beitrag vom 25. Mär 2004
Antwort Antwort
iamjoosy

Registriert seit: 12. Nov 2003
53 Beiträge
 
#1

TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 16:54
Hi,
Ich nutze die TactiveMovie Komponenete von Datastead um ein Video abspielen zu können.
Nun habe ich Eine Trackbar hinzugefügt, um in dem Video vor und zurückzuspulen. Gleichzeitig soll die Trackbar aber auch mit dem Video "mitlaufen", was ich in einem "OnPositionChange event" der TactiveMovie Komponente mache:

Trackbar1.Position:=NewFramePosition; Das Problem ist jetzt aber, dass die Positionsveränderung der Trackbar den ActiveMovie-Player völlig aussbremst, so dass die Framerate erheblich absinkt.
Hat iregendjemand von euch dazu eine Idee warum das so ist, bzw. wie man dem Abhilfe verschaffen kann ?

Vielen Dank schonmal.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 16:57
Du musst mit der Trackbar ja nicht jeden Frame anzeigen. Du könntest jeden 25. nehmen z.B. das wäre in den meisten Fällen immer doch noch eine Sekunde.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#3

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 17:17
Such mal nach Hier im Forum suchenTrackBar MediaPlayer,

oder nimm meinen Code - siehe TrackBar OnMouse Event (mein 2./letzter Beitrag)
Da wird die TrackBar nicht direkt von der Player-Komponente gesteuert, sondern über einen Timer (z.B. alle 0,3 - 1 Sekunde(n) aktualisiert).
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
iamjoosy

Registriert seit: 12. Nov 2003
53 Beiträge
 
#4

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 17:22
@mirage

Danke für die schnelle Antwort ... das habe ich auch schon asuprobiert, aber dann stolpert der Player eben jedes 25 Frame, was auch nicht schön ist. Ich wundere mich nur, warum das neuzeichnen der Trackbar offensichtlich soviel Zeit beansprucht .....

@himitsu
Ich fürchte auch bei einer Timer - Lösung ist das Problem nicht wirklich gelöst ...
siehe mein Wundern oben ...
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#5

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 20:05
einfach eine flag benutzen. Das Thema haben wir aber schon ausführlich behandelt! Also suchen!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#6

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 20:21
@iamjoosy
wieso nicht? das der Timer unabhängig vom Player läuft, bremst er den Player auch nicht aus.

Bei uns hat das Zeichnen der Trakbar den Player nicht gestört.
Gib mal ein bissl Code, wie das jetzt gelöst ist. Eventuell ist da ja auch nur ein Fehler drin.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#7

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 20:27
Meine Annahme ist, dass er ein OnChange Ereignis für die Trackbar gesetzt hat, sodass bei jeder Trackbar-Änderung der Frame neu gesetzt wird, was natürlich ausbremst.
Daher würde ich beim setzten durch das Programm eine Boolean Variable setzen, dass dann bei der Änderung der Trackbar der Wert für den Frame neu gesetzt wird. Danach muss der "Flag" wieder abgeschaltet wird (sprich die Boolean Variable auf False), damit der Frame durch Nutzerinteraktion wieder gesetzt werden kann.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.056 Beiträge
 
Delphi 12 Athens
 
#8

Re: TrackBar - MediaPlayer Problem

  Alt 23. Mär 2004, 21:34
Ich hatte mir das Flag gespart und es etwa so gelöst:

If ABS(TrackBar.Position - MediaPlayer1.Position) > X Then MediaPlayer1.Position := TrackBar.Position
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
iamjoosy

Registriert seit: 12. Nov 2003
53 Beiträge
 
#9

Re: TrackBar - MediaPlayer Problem

  Alt 25. Mär 2004, 11:55
Hi an alle und sorry, dass ich erst jetzt antworte, war aber gestern auf einer Konferenz.

@mirage
Stimmt, ich nutze ein OnChange Ereignis um den Player zu steuern ... das ist aber kein Problem und funktioniert acuh so wie ich das wünsche. Mein Problem war(ist) genau anders herum: Der Player läuft und ich will die Trackbar verschieben. Also in Pseudo-Code ungefähr so:

Delphi-Quellcode:
onNewFrame
  Trackbar.Position:=NewFramePosition
@himitsu
Die Lösung hatte ich auch schon mal. Mein Problem ist (wahrscheinlich) dass ich nicht verstehe wieso das Neuzeichnen der Trackbar zu jedem Frame nicht gehen soll - das kann doch nicht soviel Resourcen brauchen ... oder ? Aber wahrscheinlich geht es eben doch nur jedes 20-25 Frame. Da muss ich eben noch ein bissel Zusatzcode Programmieren, so dass bei jedem Stop/Pause die Trackbar immer auf die aktuelle Position gesetzt wird.

Aber nochmals: Vielen Dank für eure schnelle und kompetente Hilfe

Und P.s.: Natürlich habe ich vorher die DP dursucht um eine Lösung für mein Problem zu finden und habe da auch einiges zum Thema gefunden ... eben nur nicht die Antwort dass es nicht geht bei jedem neuen Frame die Trackbar neu zu zeichnen.
  Mit Zitat antworten Zitat
Antwort Antwort


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 21:57 Uhr.
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