opencore 2.1's New Features
* OpenMAX Codec-related:
- Introduced the OMXConfigParser API to help in determining
which OpenMAX components can support the input bitstream.
It is used to narrow the list of candidate OpenMAX components
to be used for playback. See the OpenMAX Core Integration Guide
document in the doc directory for more information.
- Added OMX AAC encoder support in the OMX encoder.
- Modified to use separate component roles for AMR-NB and AMR-WB as
described in the OpenMAX IL spec version 1.1.2.
- Added support for a new buffer format for H.264/AVC decode and
to allow passing multiple NALs in a single buffer. The format
OMX_OTHER_EXTRADATA structure defined in section 4.2.33 of the
OpenMAX IL spec version 1.1.2 to pass NAL lengths. See the
OpenMAX Core Integration Guide document in the doc directory
for more information.
- Added support for authoring files with AAC audio.
- Added support for authoring AMR-WB audio to MP4/3GP files and
IETF storage format.
- Added support for writing to an open file descriptor as an option
instead of simply providing a filename. The file descriptor
is useful for cases where another process needs to open the file
* Added large file support in OSCL (i.e., 64-bit file size/offset
to handle files greater than 2 GiB on filesystems that support it.
* Added rotation support in the 32-bit color-conversion class.
* Removed dynamically loaded modules from the prelink map to avoid
and to make both the prelink map and loadable modules easier to
There may be an issue if a single instance of process tries to load
libraries not in the prelink map more than 256 times (See
* Update to the MP3 Decoder to fix security issue (oCERT_2009-002,
* Renamed the OSCL config directory linux_nj to android to match the
Replaced all references of nj with android in the codebase.
* General security improvements found from static analysis in the
- Buffer and type overruns and underruns
- Null pointer references
* Refactored the jitter buffer node into a more modular architecture
better support of different streaming use-cases and protocols.
* Fixed an issue in the MP3 decoder when decoding for very of long
durations (over 2 GiB of data).
* General improvements found during 3GPP packet-switched streaming
* General improvements and resolution of issues found from module
level and engine (player, author, 2-way) level unit testing.
New APIs / behaviors
* Added support in the player engine to cancel a single pending
using the CancelCommand API. See the player engine API document for
* Renumbered the author test cases to avoid issues with
preprocessor conditionals changing the test numbers based on
Now the test numbers shouldn't change.
* In the case of 3rd party OMX components that support multiple roles
returns an error if the component cannot set the role parameter
* OMX components need to explicitly set nPortIndex parameter for
all appropriate parameters
* Added fix for buffering percentage notification in streaming
* Updated omx shared library build configuration to separate component
registration from component build
* Added methods in baselibs to serialize and deserialize the UTF-16,
UTF-16LE, UTF-16BE strings
* Removed the iUseCPMPluginRegistry flag from the source data that was
used to enable the content policy manager. Since the CPM plugins
loaded, the flag is not needed and was removed. See the
playerdriver.cpp for details
of the change.
■ [인베인] OpenCore버젼 2.1으로 업데이트 (2009-02-28 18:31)
OpenCore 의 버젼이 2.1으로 업데이트 되었습니다.
패킷비디오에 의해 제공되는 안드로이드의 멀티미디어 프레임웍입니다.
이것은 멀티미디어 렌더링 , 오쏘링 그리고 비디오 텔레포니(3G - 324M)를 위해
확장가능한 프레임웍을 제공합니다.
아래는 이것을 쉽게 이해하기 위하여 만든 디렉토리 구조의 퀵 오버뷰입니다.
|-- android [Contains the components the interface OpenCORE with
| other parts of Android]
|-- baselibs [Contains basic libraries for data containers, MIME string
| handling, messaging across thread boundaries, etc]
|-- build_config [Contains top-level build files used to build the libraries
| outside of Android]
|-- codecs_v2 [Contains the implementations of PV's audio and video
| codecs as well as the OpenMax IL interface layer]
|-- doc [Contains the documentation required to interface with
|-- engines [Contains the implementation of the player and author
| engines as well as a utility for metadata.]
|-- extern_libs_v2 [Contains 3rd-party libraries used by OpenCORE.
| Currently this directory contains header files
| defining the Khronos OpenMax IL interface]
|-- extern_tools_v2 [Contains 3rd-party tools used to build OpenCORE
| indpendently of the Android build system]
|-- fileformats [Contains the libraries for parsing a variety of
| fileformats including mp4/3gp,mp3,wav,aac.]
|-- modules [Contains build files for aggregating low-level libraries]
|-- nodes [Contains the OpenCORE framework "nodes", which is
| the abstraction used to implement independent multimedia
| processing units that can be connected in a flow graph]
|-- oscl [This is the Operating System Compatibility Layer which
| provides the mapping OS APIs as well as some basic
| data structures and utilities.]
|-- protocols [Contains parsers and composers for a variety of network
| protocols such as HTTP, RTP/RTCP, RTSP, and SDP]
|-- pvmi [Contains fundamental definitions that make up OpenCORE.
| The directory name is an abbreviation of PacketVideo
| Multimedia Infrastructure]
|-- tools_v2 [Contains tools used to build the libraries outside of Android]
각각의 라이브러리 안에는 몇가지 예외적인 사항을 제외하고는 다음과 같은 디렉토리
구조들로 구성되어 있습니다.
|-- make <- makefile to build outside of Android is here
|-- doc <- directory for any documentation specific to this lib
|-- include <- header files that are part of the external interface go here
|-- src <- source and internal header files of the library
|-- test <- test code (follows a similar structure.
오픈코어 관련 문서파일들을 파일첨부하여 놓았습니다.
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.