![]() |
BMP in AVI wandeln
Hallo Alle!
Wie kann man aus *.bmp's einen *.avi (Film) machen? Hat Einer von Euch Erfahrung damit? In der Suche habe ich nichts passendes gefunden. Gruß Heike |
Re: BMP in AVI wandeln
Hallo Heike,
in ![]() Gruß Hawkeye |
Re: BMP in AVI wandeln
Vielleicht kannst du dir von
![]() |
Re: BMP in AVI wandeln
Das habe ich noch in meiner Rumpelkammer gehabt. Schon ein paar Jahre alt, nie so richtig gut, aber vielleicht kannst du damit etwas anfangen.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var dir: String; ts: TSearchRec; datlist: TStringList; tfs: TFileStream; pfile: IAVIFile; pavi: IAVIStream; psi: TAVISTREAMINFO; Bfi: BITMAPFILEHEADER; bmi: PBITMAPINFO; bits: PByteArray; i, bmisize: Integer; begin if Not SelectDirectory('Bitmapverzeichnis wählen', 'c:\tempo', dir) then Exit; if FindFirst(dir+'\*.bmp', faAnyFile, ts)<>0 then Exit; if Not SaveDialog1.Execute then Exit; datlist:=TStringList.Create; try datlist.Add(ts.Name); while FindNext(ts)=0 do datlist.Add(ts.Name); datlist.Sort; finally FindClose(ts); end; Label1.Caption:=IntToStr(datlist.Count); tfs:=TFileStream.Create(dir+'\'+datlist[0], fmOpenRead); tfs.Read(bfi, SizeOf(BITMAPFILEHEADER)); bmisize:=bfi.bfOffBits-SizeOf(BITMAPFILEHEADER); GetMem(bmi, bmisize); tfs.Read(bmi^, bmisize); GetMem(bits, bmi.bmiHeader.biSizeImage); tfs.Read(bits^, bmi^.bmiHeader.biSizeImage); AVIFileInit; AVIFileOpen(pfile, PChar(SaveDialog1.FileName), OF_CREATE OR OF_WRITE, NIL); ZeroMemory(@psi, SizeOf(TAVIStreamInfo)); with psi do begin fccType:=streamtypeVIDEO; fccHandler:=mmioFourcc(#0, 'D', 'I', 'B'); dwScale:=1; dwRate:=25; dwLength:=datlist.Count; dwSuggestedBufferSize:=bmi.bmiHeader.biSizeImage; rcFrame:=Rect(0, 0, bmi.bmiHeader.biWidth, bmi.bmiHeader.biHeight); szName:='Noname'; dwQuality:=$FFFFFFFF; dwSampleSize:=bmi.bmiHeader.biSizeImage; end; AVIFileCreateStream(pfile, pavi, psi); AVIStreamSetFormat(pavi, 0, bmi, bmisize); For i:=0 to datlist.Count-1 do begin AVIStreamWrite(pavi, i, 1, bits, bmi.bmiHeader.biSizeImage, AVIIF_KEYFRAME, NIL, NIL); tfs.Free; tfs:=TFileStream.Create(dir+'\'+datlist[i], fmOpenRead); Image1.Picture.Bitmap.LoadFromStream(tfs); tfs.Seek(bfi.bfOffBits, soFromBeginning); tfs.Read(bits^, bmi.bmiHeader.biSizeImage); Label2.Caption:=IntToStr(i+1); Application.ProcessMessages; end; tfs.Free; FreeMem(bits); datlist.Free; end; |
Re: BMP in AVI wandeln
Liste der Anhänge anzeigen (Anzahl: 3)
So, um das mal auszuprobieren habe ich schnell mal ein Sample zusammengeklickt. Asl Basis dient die von obbschtkuche angebotene
![]() Mit deren Hilfe ist es sehr einfach Bitmaps zu einer AVI zusammen zusetzen. |
Re: BMP in AVI wandeln
Habt vielen lieben Dank, für Eure Hilfen. Damit komme ich sehr gut weiter.
Gruß Heike |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:31 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