许多运行Android的新硬件平台,特别是NVIDIA的Tegra 2,支持OpenMAX进行媒体加速。在今天的设备上,如果没有这种支持,解码720p视频就几乎不可能,但Android支持的分离器数量相当有限。我能找到的唯一公共API是通过Android SDK中的MediaPlayer类实现的。然而,在Android源代码树中有多个与OpenMAX相关的片段。
在我的设备上(三星Galaxy Tab 10.1),我可以通过/system/lib中的多个OpenMAX库访问硬件解码器,很希望能够将我的视频应用与其接口。有没有人能指点我如何实现由OpenMAX驱动的解码器?我已经找到了Khronos的文档,但没有示例代码或教程。我已经处理了分离和软件解码(通过libavcodec/libavformat),我只是想添加钩子以启用硬件编码。我还假设需要直接链接到设备上可用的库,这使得它在可移植性方面相当缺乏,但它可以工作。
另外,如果有关于访问Tegra 2设备上可用的视频解码的私有API的任何信息,我也很感兴趣。特别是如果有像NVIDIA为桌面Linux发行版实现的vdpau接口一样的东西,因为对于那方面有很多可用的资源 - 但我找不到表明支持的共享库。
在我的设备上(三星Galaxy Tab 10.1),我可以通过/system/lib中的多个OpenMAX库访问硬件解码器,很希望能够将我的视频应用与其接口。有没有人能指点我如何实现由OpenMAX驱动的解码器?我已经找到了Khronos的文档,但没有示例代码或教程。我已经处理了分离和软件解码(通过libavcodec/libavformat),我只是想添加钩子以启用硬件编码。我还假设需要直接链接到设备上可用的库,这使得它在可移植性方面相当缺乏,但它可以工作。
另外,如果有关于访问Tegra 2设备上可用的视频解码的私有API的任何信息,我也很感兴趣。特别是如果有像NVIDIA为桌面Linux发行版实现的vdpau接口一样的东西,因为对于那方面有很多可用的资源 - 但我找不到表明支持的共享库。