]> git.sesse.net Git - mlt/blobdiff - docs/install.txt
Merge ../mlt++
[mlt] / docs / install.txt
index 52b50a6d8e158a8f45cd2de80ba6335b8d650b5e..b8883229cdbbab0e55108fe1b9b2a70d21ec1b58 100644 (file)
@@ -1,12 +1,16 @@
+Installation Documentation
+
+Copyright (C) 2004 Ushodaya Enterprises Limited
+Author: Charles Yates <charles.yates@pandora.be>
+Last Revision: 2004-04-13
+
+
 INSTALL
 -------
 
        This document provides a description of the MLT project installation and
        organisation.
 
 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
 -----------
 
 Directories
 -----------
@@ -18,31 +22,77 @@ Directories
        + src                   - All project source is provided here
            + framework         - The mlt media framework
            + modules           - All services are defined here
        + 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
                + 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
                + 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 (*)
+               + gtk2          - pango and pixbuf dependent services
                + mainconcept   - mainconcept 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
+               + westley       - Nice and clever XML services
+               + xine          - Xine-derived sources (**)
+           + albino            - A simple console (protocol level) example (**)
+           + inigo             - A media playing test application (**)
+           + humperdink        - A terminal-based example client (**)
+           + miracle           - The server implementation (**)
            + tests             - Reserved for regression and unit tests
            + tests             - Reserved for regression and unit tests
+           + valerie           - Client API to access the server
 
        Additional subdirectories may be nested below those shown and should be
        documented in their parent.
 
 
        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/
+       ----------- ----------------------------------------------------------
+       westley     libxml2 2.5 or later.
+                   URL: http://www.xmlsoft.org/
+       ----------- ----------------------------------------------------------
 
 
 Configuration
 
 
 Configuration
@@ -58,12 +108,9 @@ Configuration
        configure script and arguments are accepted and passed through to all 
        subdirectories.
 
        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.
 
        NB: This script must be run to register new services after a CVS checkout
        or subsequent update.
@@ -84,42 +131,40 @@ Testing
 
        . setenv
 
 
        . setenv
 
-       NB: This applies to your current shell only.
+       NB: This applies to your current shell only and it assumes sh or bash.
 
 
 Installation
 ------------
 
 
 
 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 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 
+       Valerie produces a single shared object which is installed in 
        $prefix/lib/ and public header which are installed in 
        $prefix/lib/ and public header which are installed in 
-       $prefix/include/mlt/client.
+       $prefix/include/mlt/valerie.
 
 
-       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.
+       Miracle produces a single exectuable which is installed in
+       $prefix/bin/, a library in $prefix/lib and associated header files in
+       $prefix/include.
 
        The modules produce a shared object per module and update text files
        containing a list of modules provided by this build. These are installed 
 
        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.
 
 
        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.
 
        installation of those must modify the text file accordingly before they
        will be considered at runtime.