![]() |
Mediaplayer Pause Screen erstellen fehlt das Bild
Hallo,
Ich wollte im Mediaplayer auf Pause stellen und dann mit einem Button ein Bild erstellen und in ZW-Ablage speichern. Die Form ist ist zwar komplett als Bild vorhanden,nur der Inhalt des "Bildes vom Mediaplayer" is weechh...:stupid: Hat jemand eine Idee wie das funktioniert?
Delphi-Quellcode:
procedure TForm18.AdvGlassButton11Click(Sender: TObject);
var Bitmap:TBitmap; begin Bitmap:=GetFormImage; try Clipboard.Assign(Bitmap); finally Bitmap.Free; end; end; |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Such mal nach
![]() |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Hab ich schon gesucht wie ein Blödi,noch nix gefunden...:cry:
|
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Wie man
![]() |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Zitat:
Es sei denn man liest die Video Datei in einen stream und greift auf das gerade abgespielte Frame zu. Mit AVI habe ich es schon gemacht mit dem Mediaplayer dürfte das etwas komplizierter werden abhängig vom Codec der verwendet wird beim abspielen. gruss |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Also würde das bedeuten,ich kann ein Srceen vom Frame erstellen?
Oder sehe ich das falsch?:-D |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Zitat:
gruss |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Das DSPack ist recht handlich, wenn es darum geht Einzelbilder aus einem Video zu bekommen, dass einen beliebigen installierten Codec verwendet. (Die Codecs selber alle zu implementieren dürfte Mannjahre dauern.)
|
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
Zitat:
Siehe ..
Delphi-Quellcode:
BMP := AVIStreamGetFrame(GetFramePointer, frame);
Delphi-Quellcode:
procedure GetAVIFrame;
var Frame : Integer; AVIElapsedTime : DWord; BMP : ^TBITMAPINFOHEADER; begin // Get the elapsed time. If the elapsed time is longer than the // video clip, then reset the elapsed time and video start AVIElapsedTime :=GetTickCount() - AVIStart; if AVIElapsedTime > AVILength then begin AVIStart :=GetTickCount(); AVIElapsedTime :=0; end; // Get the next frame based on the elaped time Frame :=AVIStreamTimeToSample(AVIStream, AVIElapsedTime); if Frame <> ActiveFrame then begin ActiveFrame :=Frame; { // use this for uncompressed video ONLY AVIStreamRead(AviStream, Frame, 1, FrameData, AviInfo.dwWidth*AviInfo.dwHeight*3, nil, nil); } // use this for compressed video BMP := AVIStreamGetFrame(GetFramePointer, frame); FrameData := Pointer(Cardinal(BMP) + BMP.biSize + BMP.biClrUsed*sizeof(RGBQUAD)); // the drawdib function will uncompress the framedata as it tries to copy the BMP DrawDibDraw(0, H_DC, 0, 0, AviInfo.dwWidth, AviInfo.dwHeight, @BMP, FrameData, 0, 0, AVIInfo.dwWidth, AVIInfo.dwHeight, 0); SwapRGB(FrameData, AviInfo.dwWidth * AviInfo.dwHeight); // Swap the BGR image to a RGB image glTexSubImage2D(GL_TEXTURE_2D, 0, 0, 0, AviInfo.dwWidth, AviInfo.dwHeight, GL_RGB, GL_UNSIGNED_BYTE, FrameData); end; end; Zitat:
gruss |
AW: Mediaplayer Pause Screen erstellen fehlt das Bild
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:58 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