Sunday, August 20, 2006

HOWTO: ffmpeg für Windows compilieren

Hintergrund: ffmpeg kann dazu benutzt werden aus nahezu beliebigem Videomaterial flv-Datein für die Flash-Wiedergabe zu erzeugen.

Quelle:
FFmpeg Windows
FFMPEG - Riva FLV Encoder

Links:
ffmpeg
lame
mingw

Seit Anfang Juni werden von ffmpeg auch Meta-Daten unterstützt.
Um ffmpeg für Windows zu compilieren gibt es 3 Möglichkeiten:
1) unter Linux mit mingw als cross-compiler
2) unter Windows mit cygwin (Nachteil: Abhängigkeit zu einer DLL-Datei)
3) unter Windows mit mingw

An dieser Stelle soll der Weg unter Windows mit mingw beschrieben werden. Prinzipiell gliedert sich diese Aufgabe in 3 Teile:
1) Einrichtung der mingw-Umgebung
2) compilieren von lame
3) compilieren von ffmpeg

Schritt 1: Einrichtung der mingw-Umgebung
MinGW über den Installer installieren: MinGW Installer
MSYS (1.0.10) über den Installer installieren und entsprechend konfigurieren (Achtung bei der Pfadangabe): MSYS
MSYS Developer Tool Kit installieren: MSYS Developer Tool Kit
Da die bash-Version im MSYS-Paket momentan kaputt ist die aktuelle bash-Version erunterladen und im MSYS-Verzeichnis entpacken.

Schritt 2: compilieren von lame
lame als Quellcodearchiv herunterladen: lame3.96.1.tar.gz
lame in das home-Verzeichnis des Benutzers kopieren (innerhalb von MSYS)
./configure --enable-static --disable-shared
make
make install

Achtung: Das Flag --disable-shared ist wichtig, sonst wird eine DLL generiert.

Ergebnis: lame.exe

Schritt 3:
mit einem SVN-Client (z.B. rapidsvn den Quellcode von ffmpeg von svn://svn.mplayerhq.hu/ffmpeg/trunk herunterlade und in das home-Verzeichnis der MSYS-Installation kopieren
in das ffmpeg-Verzeichnis wechseln und wie folgt übersetzen:



/configure –enable-memalign-hack –enable-mingw32 –enable-mp3lame –extra-cflags=-I/local/include –extra-ldflags=-L/local/lib
make
make install


Ergebnis: ffmpeg.exe

Comments:
Thanks for remembering about the --disable-shared option. I changed it in the wiki. You can change the wiki too if you want, you just have to register.
 
Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?