View Single Post
Old 9th January 2005, 14:30   #52  |  Link
hellfred
FFmpeg fan
 
Join Date: Dec 2003
Location: Germany
Posts: 427
Quote:
Originally posted by JoeBGermany
I was searching for 2 hours for the celticdruid compile. Seems to be impossible to get it somewhere else. Can someone help me please? :thanks:
Sharktooth has mirrowed the side, and the link is standing somewhere else in one of the relevant threads about ffdshow and x264
Hellfred
Sorry, he only mirrowed the ffdshow build, but maybe that helps you, too.
For getting an mplayer binary, in two houres you can build it yourself.
Follow these instructions and check this additional MinGW lib compiling manual, and check the enhanced step 5 including building x264 at the end of the HOWTO:
--------------------------------------------------------------------
Part 1, the HOWTO
--------------------------------------------------------------------
Once finished this should become a howto that will explain the steps necessary to setup the toolchain to compile your own versions of MPlayer on MinGW
similar to the one in the packages found at http://www.mplayerhq.hu/MPlayer/releases/win32-beta

Step 1 Mingw and msys
Download the latest versions of MinGW and msys from
http://www.mingw.org/download.shtml

The versions used in this document are
MinGW-3.1.0-1.exe
MSYS-1.0.10.exe

Then install MinGW and afterwards msys.

Answer
"Do you wish to continue with the post install? [yn ]"
and
"Do you have MinGW installed? [yn ]"
with y and give the path to your mingw dir in the next question. (c:/mingw if you did not alter the path during the mingw setup)

After the installation is finished, open a msys shell (you can find an icon for it on your desktop).

The following steps assume that you download the packages to your msys home dir, for me that is in c:\msys\home\useranme
where username is my windows username.

Step 2 directx headers
Get the directx header package at
http://www.mplayerhq.hu/MPlayer/rele...dx7headers.tgz

As alternative you can also use the modified wine headers reimar posted to the cygwin list.

Extract the headers and move them to your mingw inlucde dir (c:\mingw\include)
To do this use the following commands in your msys shell
tar -xvvzf dx7headers.tgz
mv *.h /mingw/include

Note: In this tutorial I install all packages into the mingw tree, it might probably be better to put all extra libraries and headers
into a seperate directory and pass this directory with the --with-extraincdir and --with-extralibdir switches to configure
Furthermore I'm using static linking to prevent problems caused by different dll versions.
Omitting the --disable-shared from the configure commands will help you to build smaller exes that require the various dlls to be installed.

Step 2 ogg and vorbis
Go to http://www.vorbis.com/download.psp
Select "Unix / Linux" as operating system
Then download the libvorbis and libogg .tar.gz sources
from the Libraries section
Also get the patch http://mplayerhq.hu/MPlayer/releases...g-mingw32.diff

extract the archive:

tar -xvvzf libogg-1.1.tar.gz

change to the dir containing the sources:
cd libogg-1.1

Apply the mingw build patch:
patch -p0 <../libogg-mingw32.diff

Then call configure with your mingw install dir as prefix:

./configure --prefix=/mingw --disable-shared

compile the sources:

make

and install them:

make install

afterwards go back to your msys home dir:

cd

now install libvorbis in a similar way
tar -xvvzf libvorbis-1.0.1.tar.gz
cd libvorbis-1.0.1
./configure --prefix=/mingw --disable-shared
make
make install
cd

Step 3 freetype (for osd font rendering)
First install libiconv from
http://www.gnu.org/software/libiconv/

Get the sources then
tar -xvvzf libiconv-1.9.1.tar.gz
cd libiconv-1.9.1
./configure --prefix=/mingw --disable-shared
make
make install
cd

Then get the latest freetype2 source package from
http://sourceforge.net/project/showf...?group_id=3157

tar -xvvjf freetype-2.1.9.tar.bz2
cd freetype-2.1.9
make
make install
cd

Step 4 zlib, libregif, libpng, libjpeg
zlib is needed for some mov files with compressed headers the others to play/encode png/jpeg/gif files

Sources are available from:
http://www.gzip.org/zlib/
http://armory.nicewarrior.org/projects/libregif/
http://sourceforge.net/project/showf...?group_id=5624
http://www.ijg.org/

tar -xvvzf zlib-1.2.1.tar.gz
cd zlib-1.2.1.tar
./configure --prefix=/mingw
make
make install
cd

tar -xvvzf libpng-1.2.8-config.tar.gz
cd libpng-1.2.8-config
./configure --prefix=/mingw --disable-shared
make
make install
cd

tar -xvvzf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/mingw/ --enable-static
make
cp .libs/libjpeg.a /mingw/lib/
cp jpeglib.h jconfig.h jmorecfg.h c:/mingw/include/
cd

tar -xvvzf libregif-4.1.5.tar.gz
cd libregif-4.1.5
./configure --prefix=/mingw
make
make install
cd

Step 5 lame and xvid

Get the nasm sources from http://sourceforge.net/project/showf...?group_id=6208

tar -xvvzf nasm-0.98.38.tar.gz
cd nasm-0.98.38
./configure --prefix=/mingw
make
make install
cd

Install lame from http://lame.sourceforge.net/download/download.html
tar -xvvzf lame-3.96.1.tar.gz
cd lame-3.96.1
./configure --prefix=/mingw --disable-shared --disable-decoder
make
make install
cd

Now get http://www.xvid.org/downloads.html
tar -xvvzf xvidcore-1.0.3.tar.gz
cd xvidcore-1.0.3/build/generic
./configure --prefix=/mingw --disable-shared
make
make install
mv /mingw/lib/xvidcore.a /mingw/lib/libxvidcore.a

Step 6 live.com rtsp streaming support
Get the sources
http://www.live.com/liveMedia/public/

tar -xvvzf live.2004.12.29.tar.gz (got some errors from tar here but the build worked nevertheless)
cd live
genMakefiles mingw
make


Step 7 MPlayer
For my build I'm using a cvs checkout using cygwin, but cvs snapshots, wincvs or release tarballs should work, too.

In the cygwin shell
cd to your msys home dir

cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer login
cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer co -P main

When asked for a password, just hit enter. A directory named main will be created.

Now checkout ffmpeg
cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login
cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -P main

and copy the libavcodec and libavformat dirs from it to the main dir
cp -R ffmpeg/libavcodec/ ffmpeg/libavformat/ main/

All the sources should be there now.

cd main
./configure --enable-runtime-cpudetection --with-codecsdir=codecs --enable-static --with-livelibdir=/home/username/live
(make sure you use the right path for the --with-livelibdir option)
make

If everything went well your first mplayer.exe can be found in the main dir now.


02.01.2005 Sascha Sommer

--------------------------------------------------------------------
Part 2, enhancement for including x264
--------------------------------------------------------------------
Enhanced step 5 including building/installing x264

Step 5 lame, xvid and x264

Get the nasm sources from http://sourceforge.net/project/showf...?group_id=6208

tar -xvvzf nasm-0.98.38.tar.gz
cd nasm-0.98.38
./configure --prefix=/mingw
make
make install
cd

Install lame from http://lame.sourceforge.net/download/download.html
tar -xvvzf lame-3.96.1.tar.gz
cd lame-3.96.1
./configure --prefix=/mingw --disable-shared --disable-decoder
make
make install
cd

Now get http://www.xvid.org/downloads.html
tar -xvvzf xvidcore-1.0.3.tar.gz
cd xvidcore-1.0.3/build/generic
./configure --prefix=c:/mingw --disable-shared
make
make install
mv c:/mingw/lib/xvidcore.a c:/mingw/lib/libxvidcore.a

Get x264 svn checkout from videolan.org. Either use cygwin svn client or download official ziped win32 binaries from http://subversion.tigris.org/servlet...t?folderID=91.
Unpack and copy all files in /bin somewhere into your PATH, e.g. /mingw/bin

svn co svn://svn.videolan.org/x264/trunk x264
cd x264/build/cygwin
make
cp bin/libx264.a /mingw/lib
cd ../../
cp x264.h /mingw/include/

--------------------------------------------------------------------
Suggestions and comments are wellcome, especially if send directly to mplayer cygwin mailing list.

EDIT: Diabled smilies

Last edited by hellfred; 9th January 2005 at 14:50.
hellfred is offline