Version update 1.2.0 -> 1.3.0 (fix crash on 64bit)
[platform/upstream/opencore-amr.git] / opencore / README
1                             Welcome to OpenCORE
2
3                           http://www.opencore.net/
4
5 OpenCORE is the multimedia framework of Android originally contributed by
6 PacketVideo.  It provides an extensible framework for multimedia rendering and
7 authoring and video telephony (3G-324M).
8
9 The following an overview of the directory structure which includes a list of
10 the top-level directories along with a brief note describing the contents.
11
12 __
13   |-- android  [Contains the components the interface OpenCORE with 
14   |             other parts of Android]   
15   |-- baselibs [Contains basic libraries for data containers, MIME string
16   |             handling, messaging across thread boundaries, etc]
17   |-- build_config [Contains top-level build files used to build the libraries
18   |                 outside of Android]
19   |-- codecs_v2 [Contains the implementations of PV's audio and video 
20   |              codecs as well as the OpenMax IL interface layer]
21   |-- doc       [Contains the documentation required to interface with
22   |              OpenCORE]
23   |-- engines   [Contains the implementation of the player and author 
24   |              engines as well as a utility for metadata]
25   |-- extern_libs_v2 [Contains 3rd-party libraries used by OpenCORE. 
26   |                   Currently this directory contains header files 
27   |                   defining the Khronos OpenMax IL interface]
28   |-- extern_tools_v2 [Contains 3rd-party tools used to build OpenCORE
29   |                    indpendently of the Android build system]
30   |-- fileformats  [Contains the libraries for parsing a variety of
31   |                 fileformats including mp4/3gp,mp3,wav,aac]
32   |-- modules [Contains build files for aggregating low-level libraries]
33   |-- nodes     [Contains the OpenCORE framework "nodes", which is 
34   |              the abstraction used to implement independent multimedia 
35   |              processing units that can be connected in a flow graph]
36   |-- oscl      [This is the Operating System Compatibility Layer which 
37   |              provides the mapping OS APIs as well as some basic 
38   |              data structures and utilities]
39   |-- protocols [Contains parsers and composers for a variety of network
40   |              protocols such as HTTP, RTP/RTCP, RTSP, and SDP]
41   |-- pvmi     [Contains fundamental definitions that make up OpenCORE.
42   |             The directory name is an abbreviation of PacketVideo 
43   |             Multimedia Infrastructure]
44   |-- tools_v2  [Contains tools used to build the libraries outside of Android]
45
46 Within each library, the following directory structure, with a few exceptions,
47 is implemented to organize the files:
48
49 __
50   |-- build
51     |-- make    <- makefile to build outside of Android is here       
52   |-- doc       <- directory for any documentation specific to this lib
53   |-- include   <- header files that are part of the external interface go here
54   |-- src       <- source and internal header files of the library
55   |-- test      <- test code (follows a similar structure)
56     |-- build
57       |-- make
58     |-- include
59     |-- src
60