[18710] | 1 | WHAT IT IS |
---|
| 2 | ---------- |
---|
| 3 | This is gst-plugins, a set of plug-ins for GStreamer. |
---|
| 4 | |
---|
| 5 | COMPILING FROM SOURCE |
---|
| 6 | --------------------- |
---|
| 7 | - make sure you compiled and at least did a test-run of GStreamer (core) |
---|
| 8 | - check output of ./configure --help to see if any options apply to you |
---|
| 9 | - configure the source tree: |
---|
| 10 | - if you installed GStreamer, then do: |
---|
| 11 | ./configure |
---|
| 12 | If configure complains about missing GStreamer, you should try |
---|
| 13 | ./configure --with-pkg-config-path=prefix/lib/pkgconfig |
---|
| 14 | where prefix should be replaced by the prefix you used to configure |
---|
| 15 | GStreamer. (Be mindful NOT to ADD a trailing / to that option !) |
---|
| 16 | If this doesn't fix it, you have other issues ;) |
---|
| 17 | |
---|
| 18 | - if you didn't install GStreamer, you can still compile the plug-ins. |
---|
| 19 | Add the path to gstreamer-uninstalled.pc (which lives in the gstreamer |
---|
| 20 | source tree) to PKG_CONFIG_PATH |
---|
| 21 | or run configure --with-pkg-config-path=(path to gstreamer uninstalled) |
---|
| 22 | |
---|
| 23 | - the output of configure will give you a list of plug-ins with external |
---|
| 24 | dependencies (ie, depending on other libs, see below). By no means |
---|
| 25 | should you try to get them all built on your first run. This is hard |
---|
| 26 | enough as it is ;) Resist the urge to get the most features for now. |
---|
| 27 | It doesn't list all of the non-depending plug-ins, which get built |
---|
| 28 | regardless (unless you explicitly asked it not to). |
---|
| 29 | |
---|
| 30 | - build the tree: |
---|
| 31 | make |
---|
| 32 | If any plug-in causes a problem at this stage, you should re-configure |
---|
| 33 | with --disable-(dependency) |
---|
| 34 | and doublecheck if configure reports this plug-in as being disabled. |
---|
| 35 | Then re-run make. |
---|
| 36 | |
---|
| 37 | - install: |
---|
| 38 | - if you installed GStreamer, and want to install the plug-ins as well, run |
---|
| 39 | make install |
---|
| 40 | and, as root, run |
---|
| 41 | gst-register |
---|
| 42 | - if you installed GStreamer, but don't want to install the plug-ins, run |
---|
| 43 | gst-register --gst-plugin-path=. |
---|
| 44 | - if you didn't install GStreamer, then do |
---|
| 45 | path/to/gstreamer/tools/gst-register --gst-plugin-path=. |
---|
| 46 | (Replace path/to/gstreamer obviously) |
---|
| 47 | |
---|
| 48 | - test: |
---|
| 49 | - run |
---|
| 50 | gst-launch sinesrc ! fakesink |
---|
| 51 | and prefix gst-launch with the path to gstreamer/tools if you didn't install |
---|
| 52 | GStreamer. |
---|
| 53 | If this doesn't give any errors, you can abort it. |
---|
| 54 | |
---|
| 55 | - try replacing fakesink with your choice of |
---|
| 56 | osssink/esdsink/artsdsink/alsasink/jacksink (depending on what output |
---|
| 57 | method you have available) and see if you hear a C tone. |
---|
| 58 | |
---|
| 59 | - After this, you should look into installing an application, like |
---|
| 60 | gst-player, gst-editor or monkey-media with rhythmbox. |
---|
| 61 | |
---|
| 62 | COMPILING FROM CVS |
---|
| 63 | ------------------ |
---|
| 64 | When building from CVS sources, you will need to run autogen.sh to generate |
---|
| 65 | the build system files. |
---|
| 66 | |
---|
| 67 | GStreamer is cutting-edge stuff. To be a CVS developer, you need |
---|
| 68 | what used to be considered cutting-edge tools. |
---|
| 69 | |
---|
| 70 | ATM, most of us have at least these versions : |
---|
| 71 | |
---|
| 72 | * autoconf 2.52 (NOT 2.52d) |
---|
| 73 | * automake 1.5 |
---|
[21010] | 74 | * gettext 0.11.5 |
---|
[18710] | 75 | * libtool 1.4 (NOT Gentoo's genetic failure 1.4.2) |
---|
| 76 | * pkg-config 0.8.0 |
---|
| 77 | |
---|
| 78 | autogen.sh will check for these versions and complain if you don't have |
---|
| 79 | them. You can also specify specific versions of automake and autoconf with |
---|
| 80 | --with-automake and --with-autoconf |
---|
| 81 | |
---|
| 82 | Check autogen.sh options by running autogen.sh --help |
---|
| 83 | |
---|
| 84 | autogen.sh can pass on arguments to configure - you just need to separate them |
---|
| 85 | from autogen.sh with -- between the two. |
---|
| 86 | prefix has been added to autogen.sh but will be passed on to configure because |
---|
| 87 | some build scripts like that. |
---|
| 88 | You will probably have to pass at least --with-pkg-config-path to autogen.sh |
---|
| 89 | to point to the CVS version of GStreamer. |
---|
| 90 | |
---|
| 91 | When you have done this once, you can use autoregen.sh to re-autogen with |
---|
| 92 | the last passed options as a handy shortcut. Use it. |
---|
| 93 | |
---|
| 94 | After the autogen.sh stage, you can follow the directions listed in |
---|
| 95 | "COMPILING FROM SOURCE" |
---|
| 96 | |
---|
| 97 | PLUG-IN DEPENDENCIES AND LICENSES |
---|
| 98 | --------------------------------- |
---|
| 99 | GStreamer is developed under the terms of the LGPL (see LICENSE file for |
---|
| 100 | details). Some of our plug-ins however rely on libraries which are available |
---|
| 101 | under other licenses. This means that if you are using an application which |
---|
| 102 | has a non-GPL compatible license (for instance a closed-source application) |
---|
| 103 | with GStreamer, you have to make sure not to use GPL-linked plug-ins. |
---|
| 104 | When using GPL-linked plug-ins, GStreamer is for all practical reasons |
---|
| 105 | under the GPL itself. |
---|
| 106 | |
---|
| 107 | The plug-ins which use a GPL library are as follows: |
---|
| 108 | cdparanoia libcdparanoia (http://www.xiph.org/paranoia/) |
---|
| 109 | aasink aalib (http://aa-project.sourceforge.net/aalib/) |
---|
| 110 | xmms libxmms (http://www.xmms.org) |
---|
| 111 | decdvd ac3dec,mpeg2dec (http://linuxvideo.org/mpeg2dec/,http://linuxvideo.org/ac3dec/)a |
---|
| 112 | mad mad (http://www.mars.org/home/rob/proj/mpeg/) |
---|
| 113 | |
---|
| 114 | Plug-ins which use an LGPL library are as follows: |
---|
| 115 | colorspace Hermes (http://www.clanlib.org/hermes/) |
---|
| 116 | httpsrc libghttp (ftp.gnome.org/pub/GNOME/stable/sources/libghttp/) |
---|
| 117 | alsasink alsa (http://alsa-project.org) |
---|
| 118 | arts aRts (http://arts-project.org) |
---|
| 119 | sdlsink libsdl (http://www.libsdl.org) |
---|
| 120 | gnomevfssource gnome-vfs (ftp.gnome.org//pub/GNOME/stable/sources/gnome-vfs) |
---|
| 121 | gnomevfssink gnome-vfs |
---|
| 122 | esdsink libesd (ftp.gnome.org/pub/GNOME/stable/sources/esound) |
---|
| 123 | icastsend libshout (http://www.icecast.org) |
---|
| 124 | lame libmp3lame (http://www.mp3dev.org/mp3/) |
---|
| 125 | gst1394 libraw1394 (http://linux1394.sourceforge.net) |
---|
| 126 | flac libFLAC (http://flac.sourceforge.net) |
---|
| 127 | RTP ortp (http://www.linphone.org/ortp/) |
---|
| 128 | |
---|
| 129 | Plug-ins which use a BSD covered library are as follows: |
---|
| 130 | vorbisenc libogg/libvorbis (http://www.xiph.org/ogg/vorbis) |
---|
| 131 | vorbisdec libogg/libvorbis |
---|
| 132 | |
---|
| 133 | Plug-ins based on libraries with other free licenses: |
---|
| 134 | xvideosink libXv (MIT X11 / X Consortium license) |
---|
| 135 | gsm libgsm (MIT license http://kbs.cs.tu-berlin.de/~jutta/toast.html) |
---|
| 136 | |
---|
| 137 | Plug-ins using non-free libraries: |
---|
| 138 | wincodec win32ddl (http://divx.euro.ru/) |
---|
| 139 | |
---|