Update mplayer submodule
[mplayer-build.git] / README
blobb5181c7b672fe3d1a6506e61972e4cd5ddd7a7fa
1 This repository contains scripts to help build MPlayer together with
2 some dependencies that many platforms will not have a new enough
3 version of.
5 CHANGES FROM EARLIER VERSIONS OF THIS FILE (2010-12-20):
6 FFmpeg-mt is now enabled by default in new installs (updating doesn't
7 change selection), player selects thread count automatically
9 Basic use:
10 $ ./init --shallow
11 $ make -j 6
12 $ make install
13 You can also run it like "mplayer/mplayer some_file.mkv" without doing
14 the last install step.
15 For more details see below.
19 Initializing the repo
21 First you need to download the actual sources, using either:
23 ./init
25 ./init --shallow
27 The latter form creates only partial git repositories which do not
28 have full history data. This reduces the amount of data you need to
29 download but reduces the development-related functionality of the
30 repositories. If you only want to simply build MPlayer it should
31 usually be enough.
35 Building
37 You can build MPlayer with just 'make'. There is no separate
38 configure step because the MPlayer configure depends on included
39 library sources being configured _and_ built first. If you want to
40 give configuration options see the section below.
44 Enabling or disabling FFmpeg-mt
46 FFmpeg-mt is version of FFmpeg with improved threading support, useful
47 for things like high-bitrate H264. It allows significantly faster
48 decoding on multicore machines. It is now enabled by default.
49 You can disable compilation with FFmpeg-mt decoders using "./disable-mt"
50 and enable it with "./enable-mt". By default MPlayer will try to determine
51 the number of cores available on your machine and use that as the number
52 of decoding threads. If you want to override that and use a different
53 number of threads you can use the "-lavdopts threads=N" option,
54 where N is the number of threads you want to use (a value equal to
55 the number of available cores is normally good).
59 Giving configure options to MPlayer and FFmpeg
61 You can specify extra options that will be passed to MPlayer's
62 configure script by placing them in a file called "mplayer_options" in
63 this directory. There's a corresponding file called "ffmpeg_options"
64 for FFmpeg. Options in file "common_options" will be passed to both
65 MPlayer and FFmpeg; this mainly makes sense for generic options like
66 "-cc=gcc-4.4'. Place each option on its own line without any quoting.
70 Helper scripts included in this repo:
72 ./init
73 Prepare the repository by downloading actual sources. You need to run
74 this at least once before you can build anything. With the --shallow
75 argument creates shallow git repositories that require less bandwidth
76 to download.
78 ./update
79 Download the latest version of the sources.
81 ./clean
82 Remove all generated or extra files from build directories and
83 restore them to their original state. Running this between builds is
84 probably a good idea.
86 ./enable-mt
87 ./disable-mt
88 Enable or disable building with FFmpeg-mt support. Can be run before
89 first ./init or later to switch support on and off. The files
90 'ffmpeg-mt-enabled' and 'ffmpeg-mt-disabled' are created or deleted to
91 indicate whether -mt support is currently active. Note that if you
92 build MPlayer and then switch -mt support on or off, a rebuild is
93 likely to fail unless you remember to run ./clean before the new
94 build.