AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Video an Fenstergröße anpassen
Thema durchsuchen
Ansicht
Themen-Optionen

Video an Fenstergröße anpassen

Ein Thema von skunker · begonnen am 17. Dez 2005 · letzter Beitrag vom 19. Feb 2006
Antwort Antwort
skunker
(Gast)

n/a Beiträge
 
#1

Video an Fenstergröße anpassen

  Alt 17. Dez 2005, 16:05
Hallo,

ich möchte das ein AVI welches ich mit der MediaPlayer Komponente abspiele automatisch an die Größe des Panels angepasst wird.

z.B. hab ich ein 320x240 großes video, welches im mediaplayer auf einem panel wiedergegeben wird.

Jetzt will ich aber, dass das Video auf ein Panel in der Größe 640x480 dargestellt wird. Das Video soll auch weiterhin proportional sein.

Sprich wie WinAmp, wenn man das Fenster an der Kante verzieht bleibt das video proportional nur entweder größer oder kleiner.


Ich bedanke mich recht herzlich.

ps: im Forum hab ich schon nach Videogröße anpassen gescuht etc. nichts gefunden.

Mit freundlichen Grüßen,
skunker
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Video an Fenstergröße anpassen

  Alt 17. Dez 2005, 18:18
Herzlich willkommen in der Delphi-PRAXiS, skunker.

Delphi-Quellcode:
procedure TPlayForm.ButtonClick(Sender: TObject);
begin
  with MediaPlayer do
  begin
    FileName := 'c:\media\video\rubber-band.wmv';
    Open;
    self.OriginalRect := DisplayRect;
    Display := PlayPanel;
    Play;
  end;
end;
Nach dem Öffnen kannst du dir die Originalgröße des Video-Clips in einer private variable deiner Form merken. Damit hast du dann auch das Seitenverhältnis Breite zu Höhe:

Delphi-Quellcode:
function GetRatio(r: TRect): extended;
begin
  with OriginalRect do
  begin
    Result := Succ(Right - Left) / Succ(Bottom - Top);
  end;
end;
Im Ereignis OnResize von PlayPanel kannst du dann die Skalierung vornehmen.

Grüße vom marabu
  Mit Zitat antworten Zitat
Wolfgang K

Registriert seit: 19. Feb 2006
Ort: Jagsthausen
2 Beiträge
 
#3

Re: Video an Fenstergröße anpassen

  Alt 19. Feb 2006, 18:28
Ich hab' den Dialog zum Anpassen des Videos an die Fenstergröße gesucht und hier gefunden. Leider funktioniert der Befehl
- mediaplayer1.self.OriginalRect := DisplayRect ; -
bei mir nicht. Liegt es an meiner Delphi Version 3 ? gibt es da kein Anpassung?
...X....in
XXXX..hoc
...X....signum
...X....vinces
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Video an Fenstergröße anpassen

  Alt 19. Feb 2006, 18:30
wie kommst du auf
mediaplayer1.self.OriginalRect das nie keiner geschrieben? sondern es wurde geschrieben das du in deinem Private eine Variable vom typ "OriginalRect" anlegen sollst.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Wolfgang K

Registriert seit: 19. Feb 2006
Ort: Jagsthausen
2 Beiträge
 
#5

Re: Video an Fenstergröße anpassen

  Alt 19. Feb 2006, 21:10
OK, OriginalRect hab' ich im private vereinbart und das Verhältnis Breite/Höhe hab' ich auch ausgerechnet (selsamerweise 0,5). Wenn ich richtig verstehe, kann ich jetzt zur Skalierung kommen, aber wie lautet die ? Ist es das OnResize von PlayPanel und wenn ja , was übergibt man da als Parameter ?
...X....in
XXXX..hoc
...X....signum
...X....vinces
  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 09:42 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