Chinaunix首页 | 论坛 | 博客
  • 博客访问: 829306
  • 博文数量: 125
  • 博客积分: 4066
  • 博客等级: 上校
  • 技术积分: 1401
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-03 18:58
文章分类

全部博文(125)

文章存档

2014年(1)

2013年(1)

2012年(2)

2011年(29)

2010年(92)

我的朋友

分类: LINUX

2010-12-20 16:03:20

第四章和第五章就是些介绍,只是把关键的语句翻译出来,见谅。

从第六章开始很关键,我也会尽量全部翻译过来。

4.接口

4.1默认接口

      PVPlayer的接口是标准的OSCL-based 接口,引擎的API都是通过这些接口来调用相对应的操作,但是像一些OSCL类型的组件和PVMF类型的组件里需要注意有些不同.

 4.2 适配层

       the interface to PVPlayer SDK needs to be different than the OSCL-based interface, another interface layer needs to be created to “wrap” around the OSCL-based interface. This “wrapper” is referred to as an

 adaptation layer for OSCL-based PVPlayer engine interface.One possible reason to create an adaptation layer would be to encapsulate the OSCL interface with types and components of a particular platform or operating system (e.g. ANSI C interface, Symbian interface).Another reason would be that the adaptation layer modifies the interface and behavior of PVPlayer SDK to match the expectation of the application (e.g. legacy interface). The adaptation layer could also combine PVPlayer SDK with another SDK or component to provide a unified interface to the application.The block diagrams below illustrate how the adaptation layer relates to PVPlayer Engine and its OSCL-based interface. The diagram on the right shows the adaptation layer adding more functionality by including another engine.

                                   图四    适配层

4.3 多线程支持

        默认的OSCL-based 接口不支持多线程,所以在使用多线程的时候,适配层需要提供一个功能来实现.一种方法是使用OSCL proxy 接口组件来提供多线程的支持.另一种方法是添加一个另外的Platform Threading Support.两种方法的框图如下.

4.4 媒体数据输出到数据池

 PVPlayer引擎利用PVMF节点指定数据输出的数据池,但大部份使用的时候,同步数据通过适合的渲染后再送到媒体输出设备.在输出视频流的时候,需 要一个显示设备,音频流需要一个PCM 音频输出设备.媒体输出设备是一个具体的特定平台.输出设备的创建有两个方法可以实现:

 (1)在PVMF节点里封装一个media device,引擎可以直接调用,这种方法可以最大限度的减少PVPlayer和接口层的代码,但是需要创建一个新的PVMF节点.

(2)直接调用PV media I/O接口,在I/O接口中调用输出设备.这种方法相对于第一种来说并不需要创建新的PVMF节点,复杂性也小.但增加了代码的层次和和代码量.下图是两 种方法的引擎.更多PV I/O接口的信息,参考PV MEDIA I/O datasheet.

  

                          图 6 媒体输出的两种方法

5. PVMF Node

       本节给出PVMF简短的描述节点,由PVPlayer引擎使用。只有PVMF节点OSCL和PVMF 基于组件都包括在内。没有特定于平台PVMF节点覆盖。欲了解更多有关特定节点(1,低于或平台特定一)的详细信息,请参阅该节点文件。

5.1 数据池节点(Data Sink Nodes)

       数据池节点是PVPlayer的引擎中输出数据前最后的数据终点.

5.1.1 PVMFMediaOutputNode

       PVMFMediaOutputNode is a wrapper node around the PV media I/O interface to output data. The node translates node commands and incoming media data to appropriate media I/O actions and handles media I/O events. Using PVMFMediaOutputNode allows encapsulation of platform and device specific output interface with PV media I/O interface.

5.1.2 PVMFFileOutputNode

       PVMFFileOutputNode accesses the file directly using OSCL file I/O to write media data coming in via the port. The node has some capability to understand format type and to write out data appropriately for the specified format type (AMR file header for AMR IETF format).

阅读(1193) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~