]> git.sesse.net Git - mlt/blobdiff - docs/install.txt
Set version to 0.4.8.
[mlt] / docs / install.txt
index 52b50a6d8e158a8f45cd2de80ba6335b8d650b5e..3acc76040fe9406dd4b7ec8100736a3b5e84dfeb 100644 (file)
@@ -1,12 +1,16 @@
+Installation Documentation
+
+Copyright (C) 2004-2009 Ushodaya Enterprises Limited
+Author: Charles Yates <charles.yates@pandora.be>
+Last Revision: 2009-05-08
+
+
 INSTALL
 -------
 
        This document provides a description of the MLT project installation and
        organisation.
 
-       It provides *CRITICAL* architecture information, so please read carefully
-       if you plan to extend or use the MLT code base.
-
 
 Directories
 -----------
@@ -18,31 +22,72 @@ Directories
        + src                   - All project source is provided here
            + framework         - The mlt media framework
            + modules           - All services are defined here
+               + avformat      - libavformat dependent services
+               + bluefish      - Bluefish dependent services (*)
                + core          - Independent MLT services
                + dv            - libdv dependent services
-               + ffmpeg        - ffmpeg dependent services
-               + avformat      - libavformat dependent services
-               + vorbis        - vorbis dependenent services
-               + sdl           - SDL dependent services
-               + resample      - libresample dependent services
                + gtk2          - pango and pixbuf dependent services
-               + fezzik        - A giant (meta) service to load and normalise media
-               + westley       - Nice and clever XML services
-               + vorbis        - Ogg Vorbis dependent services
-               + xine          - Xine-derived sources
-               + bluefish      - Bluefish dependent services (*)
                + mainconcept   - mainconcept dependent services (*)
-           + inigo             - A media playing test application
-           + valerie           - Client API to access the server
-           + miracle           - The server implementation
-           + albino            - A simple console (protocol level) example
-           + humperdink        - A terminal-based example client
+               + normalize     - audio normalisation functions (**)
+               + plus          - throwaway silliness
+               + resample      - libresample dependent services (**)
+               + sdl           - SDL dependent services
+               + vorbis        - vorbis dependenent services
+               + xml           - XML (de)serialization services
+               + xine          - Xine-derived sources (**)
+           + melt              - A media playing test application (**)
            + tests             - Reserved for regression and unit tests
 
        Additional subdirectories may be nested below those shown and should be
        documented in their parent.
 
-       (*) Not posted to CVS due to licensing issues.
+       (*)  Not posted to CVS due to licensing issues.
+       (**) Contains GPL dependencies or code.
+
+
+Dependencies
+------------
+
+       The MLT core is dependent on:
+
+       * a C99 compliant C compiler
+       * posix threading
+       * standard posix libraries
+
+       The MLT applications and libraries provided are all dependent on the core.
+
+       The modules have the following dependencies:
+
+       ----------- ----------------------------------------------------------
+       MODULE      DESCRIPTION
+       ----------- ----------------------------------------------------------
+       avformat    Provided from ffmpeg CVS and compiled as a shared library.
+                   URL: http://ffmpeg.sf.net
+       ----------- ----------------------------------------------------------
+       bluefish    Bluefish hardware and software development kit
+                   URL: http://www.bluefish444.com
+       ----------- ----------------------------------------------------------
+       dv          libdv 0.102 or later.
+                   URL: http://libdv.sf.net
+       ----------- ----------------------------------------------------------
+       gtk2        GTK2 and associated dependencies.
+                   URL: http://www.gtk.org
+       ----------- ----------------------------------------------------------
+       mainconcept Mainconcept MPEG and DVCPRO Release SDKs.
+                   URL: http://www.mainconcept.com
+       ----------- ----------------------------------------------------------
+       resample    libsamplerate 0.15 or later 
+                   URL: http://www.mega-nerd.com/SRC/ (GPL)
+       ----------- ----------------------------------------------------------
+       sdl         SDL 1.2 or later.
+                   URL: http://www.libsdl.org
+       ----------- ----------------------------------------------------------
+       vorbis      libvorbis 1.0.1 or later.
+                   URL: http://www.vorbis.com/
+       ----------- ----------------------------------------------------------
+       xml         libxml2 2.5 or later.
+                   URL: http://www.xmlsoft.org/
+       ----------- ----------------------------------------------------------
 
 
 Configuration
@@ -58,12 +103,9 @@ Configuration
        configure script and arguments are accepted and passed through to all 
        subdirectories.
 
-       Top level usage is:
+       More information on usage is found by running:
 
-       ./configure --help          - report all configure options
-       ./configure --prefix=[dir]  - target install directory (default: /usr/local)
-       ./configure --disable-[mod] - do not compile specified module(s)
-       ./configure --[other]       - pass through to children
+           ./configure --help
 
        NB: This script must be run to register new services after a CVS checkout
        or subsequent update.
@@ -84,42 +126,32 @@ Testing
 
        . setenv
 
-       NB: This applies to your current shell only.
+       NB: This applies to your current shell only and it assumes sh or bash.
 
 
 Installation
 ------------
 
-       * NOT IMPLEMENTED YET *
-
-       The install is triggered by running make install or make install-strip
-       from the top level directory.
+       The install is triggered by running make install from the top level
+       directory.
        
        The framework produces a single shared object which is installed in 
        $prefix/lib/ and public header files which are installed in
        $prefix/include/mlt/framework.
 
-       The client produces a single shared object which is installed in 
-       $prefix/lib/ and public header which are installed in 
-       $prefix/include/mlt/client.
-
-       The server produces a single exectuable which is installed in
-       $prefix/bin/. This is linked against the framework shared object and
-       posix libs but not against any of the modules.
-
        The modules produce a shared object per module and update text files
        containing a list of modules provided by this build. These are installed 
-       in $prefix/share/mlt/. It is at the discretion of the module to install
-       additional support files. 
+       in $prefix/share/mlt/modules. It is at the discretion of the module to 
+       install additional support files. 
        
-       To allow the development of external components, mlt-client-config and
-       mlt-framework-config scripts are generated and installed in $prefix/bin.
+       To allow the development of external components, mlt-config and scripts 
+       are generated and installed in $prefix/bin.
 
        After install, only those modules listed are usable by the server. No
        module is loaded unless explicitly requested via server configuration
        or usage.
 
-       External modules are also placed in this $prefix/share/mlt, and the 
+       External modules are also placed in this $prefix/share/mlt/modules, and the
        installation of those must modify the text file accordingly before they
        will be considered at runtime.