opencore

OpenCore是Android的多媒體核心,它是一個基於C++的實現,定義了全功能的作業系統移植層,各種基本的功能均被封裝成類的形式,各層次之間的接口多使用繼承等方式。

基本介紹

  • 中文名:opencore
  • 平台:Android
  • 定義了作業系統移植
  • 定義:多媒體的框架
簡介,包含內容,

簡介

OpenCore是一個多媒體的框架,從巨觀上來看,它主要包含了兩大方面的內容:
PVPlayer:提供媒體播放器的功能,完成各種音頻(Audio)、視頻(Video)流的回放(Playback)功能
PVAuthor:提供媒體流記錄的功能,完成各種音頻(Audio)、視頻(Video)流的以及靜態圖像捕獲功能
PVPlayer和PVAuthor以SDK的形式提供給開發者,可以在這個SDK之上構建多種應用程式和服務。在移動終端中常常使用的多媒體應用程式,例如媒體播放器、照相機、錄像機、錄音機等等。
為了更好的組織整體的架構,OpenCore在軟體層次在巨觀上分成幾個層次:
OSCL:Operating System Compatibility Library (作業系統兼容庫),包含了一些作業系統底層的操作,為了更好地在不同作業系統移植。包含了基本數據類型、配置、字元串工具、IO、錯誤處理、執行緒等內容,類似一個基礎的C++庫。
PVMF:PacketVideo Multimedia Framework(PV多媒體框架),在框架內實現一個檔案解析(parser)和組成(composer)、編解碼的NODE,也可以繼承其通用的接口,在用戶層實現一些NODE。

包含內容

PVPlayer Engine:PVPlayer引擎。
事實上,OpenCore中包含的內容非常多:從播放的角度,PVPlayer的輸入(Source)是檔案或者網路媒體流,輸出(Sink)是音頻視頻的輸出設備,其基本功能包含了媒體流控制、檔案解析、音頻視頻流的解碼(Decode)等方面的內容。除了從檔案中播放媒體檔案之外,還包含了與網路相關的RTSP流(Real Time Stream Protocol,實時流協定)。在媒體流記錄的方面,PVAuthor的輸入(Source)是照相機、麥克風等設備,輸出(Sink)是各種檔案,包含了流的同步、音頻視頻流的編碼(Encode)以及檔案的寫入等功能。
在使用OpenCore的SDK的時候,有可能需要在應用程式層實現一個適配器(Adaptor),然後在適配器之上實現具體的功能,對於PVMF的NODE也可以基於通用的接口,在上層實現,以外掛程式的形式使用。

相關詞條

熱門詞條

聯絡我們