ignore more; fix README
[platform/upstream/gstreamer.git] / README
1 WHAT IT IS
2 ----------
3 This is GStreamer, a framework for streaming media.
4
5 This package is in the 0.9.x series.  This means that this is a
6 development series leading up to a stable 0.10.x series.
7 You have been warned.
8
9 OVERVIEW
10 --------
11 GStreamer is split up over a number of modules, tarballs and packages:
12
13 - gstreamer:
14   The core.  It contains the main library and header files, as well as
15   some fundamental elements.  Every GStreamer project needs at least this
16   installed.
17 - gst-plugins-base:
18   A base set of plugins.  This set is the set we actively keep synchronized
19   with the core and are also meant to serve as examples on how to write
20   GStreamer elements.  It also contains a number of base classes for writing
21   GStreamer elements.
22
23 INSTALLING FROM PACKAGES
24 ------------------------
25 You should always prefer installing from packages first.  GStreamer is
26 well-maintained for a number of distributions, including Fedora, Debian,
27 Ubuntu, Mandrake, Gentoo, ...
28
29 Only in cases where you:
30 - want to hack on GStreamer
31 - want to verify that a bug has been fixed
32 - do not have a sane distribution
33 should you choose to build from source tarballs or CVS.
34
35 Find more information about the various packages at
36 http://gstreamer.freedesktop.org/download/
37
38 COMPILING FROM SOURCE TARBALLS
39 ------------------------------
40 - again, make sure that you really need to install from source !
41   If GStreamer is one of your first projects ever that you build from source,
42   consider taking on an easier project.
43
44 - check output of ./configure --help to see if any options apply to you
45 - run
46   ./configure
47   make
48
49   to build GStreamer.
50 - if you want to install it (not required), run
51   make install
52 - You should create a registry for things to work.
53   If you ran make install in the previous step, run
54   gst-register
55   as root.
56
57   If you didn't install, run
58   tools/gst-register
59   as a normal user.
60
61 - try out a simple test:
62   gst-launch fakesrc num_buffers=5 ! fakesink
63   (If you didn't install GStreamer, again prefix gst-launch with tools/)
64
65   If it outputs a bunch of messages from fakesrc and fakesink, everything is
66   ok.
67
68 - After this, you're ready to install gst-plugins, which will provide the
69   functionality you're probably looking for by now, so go on and read
70   that README.
71
72 COMPILING FROM CVS
73 ------------------
74 When building from CVS sources, you will need to run autogen.sh to generate 
75 the build system files.
76
77 You will need a set of additional tools typical for building from CVS,
78 including:
79 - autoconf
80 - automake
81 - libtool
82
83 autogen.sh will check for recent enough versions and complain if you don't have
84 them.  You can also specify specific versions of automake and autoconf with
85 --with-automake and --with-autoconf
86
87 Check autogen.sh options by running autogen.sh --help
88
89 autogen.sh can pass on arguments to configure - you just need to separate them
90 from autogen.sh with -- between the two.
91 prefix has been added to autogen.sh but will be passed on to configure because
92 some build scripts like that.
93
94 When you have done this once, you can use autoregen.sh to re-autogen with
95 the last passed options as a handy shortcut.  Use it.
96
97 After the autogen.sh stage, you can follow the directions listed in
98 "COMPILING FROM SOURCE"
99
100 HISTORY
101 -------
102 The fundamental design comes from the video pipeline at Oregon Graduate
103 Institute, as well as some ideas from DirectMedia.  It's based on plug-ins that
104 will provide the various codec and other functionality.  The interface
105 hopefully is generic enough for various companies (ahem, Apple) to release
106 binary codecs for Linux, until such time as they get a clue and release the
107 source.