Ich habe es mit der "AVIFIL32"-DLL versucht bin aber leider an dem laden als PB-Image gescheitert.
Wäre nett wenn jemand eine Lösung wüsste - vielleicht sogar eine flexiblere mit mehr als nur AVI-Support.
mfg batze
Code: Alles auswählen
Movie2ImageFree.exe -f [Video-File] : gibt die Anzahl der Frames eines Videos aus
Movie2ImageFree.exe -i [FrameNr] [Video-File] [BMP-File] : exportiert einen Frame als BMP-Datei
Movie2ImageFree.exe -i [StartFrameNr]-[StopFrameNr] [Video-File] [BMP-File_$$.bmp] : Exportiert mehrere Frames als 'Bmp-File_01.bmp', ...
Ich mache es so wie Du es willst...also erkläre es mir genauer, am besten per PN.Batze hat geschrieben:Ist zwar nicht ganz so schnell wie direkt in ein Image zu laden ohne Zwischenspeichern, wäre aber dennoch enorm praktisch.
Bin nicht ganz sicher woran du gescheitert bist, aber bei mir funktioniert es, und zwar so:Batze hat geschrieben:Ich bräuchte eine Möglichkeit einzelne Frames aus einer Videodatei (mindestens unkomprimiertes Avi, besser noch mehr Formate) als Image zu laden.
Ich habe es mit der "AVIFIL32"-DLL versucht bin aber leider an dem laden als PB-Image gescheitert.
Wäre nett wenn jemand eine Lösung wüsste - vielleicht sogar eine flexiblere mit mehr als nur AVI-Support.
mfg batze
Code: Alles auswählen
Procedure AVI_Play(image,frame)
*ptr=CallFunction(#AviLib,"AVIStreamGetFrame",garray(#Global_pGetFrameObj),garray(#Global_AVI_FirstFrame)+frame)
If *ptr
Size=SizeOf(BITMAPFILEHEADER)
bfh\bfType=$4D42: bfh\bfSize=Size+*ptr\biSize+*ptr\biSizeImage: bfh\bfReserved1=0: bfh\bfReserved2=0: bfh\bfOffBits=Size+*ptr\biSize
CopyMemory(@bfh, *framebuffer, Size): CopyMemory(*ptr, *framebuffer+ Size, Size): CopyMemory(*ptr+Size, *framebuffer+ Size+ Size, *ptr\biSizeImage)
CatchImage(image,*framebuffer)
EndIf
EndProcedure
Ok...Ich mache eine DLL...mit der Du dann die 'Images' im Speicher abholen kannst...LCD hat geschrieben:....@Dr. Shrek: Würde auch gerne MPG und GIF Import haben, aber über Festplatte als Zwischenspeicher ist das nichts...