Seite 1 von 1

zwei dateien "verschmelzen"

Verfasst: 26.12.2012 01:42
von Moxl
Halli hallo,

ich hab folgendes vor, ich möchte 2 oder mehrere video dateien (in meinem fall *.avi) mit einander verschmelzen... quasi das man am ende eine datei hat und wenn man diese startet, dass erst das eine video gespielt wird und direkt danach schließt das zweite video an... also aus zwei mach eins :mrgreen:

das hab ich bisher zusammen gebastelt aber klappt komischerweise nicht:

Code: Alles auswählen

If  ReadFile(0, GetHomeDirectory()+"eins.avi") And ReadFile(1, GetHomeDirectory()+"zwei.avi")
  laenge0.q=Lof(0)
  laenge1.q=Lof(1)
  *memeins=AllocateMemory(laenge0)
  *memzwei=AllocateMemory(laenge1)
  ReadData(0, *memeins, laenge0)
  ReadData(1, *memzwei, laenge1)
  CloseFile(0)
  CloseFile(1)
  If  CreateFile(3, GetHomeDirectory()+"drei.avi")
    WriteData(3, *memeins, laenge0)
    CloseFile(3)
  EndIf
  If  OpenFile(4, GetHomeDirectory()+"drei.avi")
    FileSeek(4, Lof(4))
    WriteData(4, *memzwei, laenge1)
    CloseFile(4)
  EndIf
EndIf
vielleicht könnt ihr mir weiter helfen :bounce:

dankeschön :D

Re: zwei dateien "verschmelzen"

Verfasst: 26.12.2012 01:47
von NicTheQuick
Du kannst ja auch nicht einfach zwei Dateien aneinander klatschen und dann werden sie auch so abgespielt. Dazu musst du wissen wie das AVI-Containerformat aufgebaut ist. Außerdem müssten dann beide Videos in genau dem selben Format vorliegen. Wenn sie verschiedene Formate haben, müsstest du ja mindestens eins der Videos erst neu kodieren in das passende Format.

Mein Tipp wäre einfach vorhandene Konverter dafür zu nutzen, die du nur noch per Kommandozeile bzw. mit 'RunProgram()' und den passenden Parametern starten musst. Eine Idee wäre da z.B. FFMPEG zu nutzen.

Und noch etwas wegen deinem Beispiel. Du musst die Ausgabedatei nicht zweimal öffnen. Es reicht sie einmal zu öffnen, dann beides reinschreiben und dann wieder schließen. Also einfach die zwei 'WriteData()' nacheinander benutzen mit den Inhalten der beiden Quelldateien.

Re: zwei dateien "verschmelzen"

Verfasst: 26.12.2012 01:49
von Moxl
achso ich dachte das würde vllt doch so einfach funktionieren weils ja auch nur bytes sind^^
naja ok dann mach ich das so danke dir :D

und das mit dem zweimal öffnen.. das hatte ich schon so probiert wie du.. nur weils nicht funktioniert hat hab ichs halt mal anders probiert^^ egal

danke