许多运行Android的新硬件平台,特别是NVIDIA的Tegra 2,支持OpenMAX进行媒体加速.在没有这种支持的情况下,在今天的设备上解码720p视频实际上是不可能的,但Android上支持的多路分离器数量相当渺茫.我能找到的唯一公共API是通过Android SDK中的MediaPlayer类.但是,Android源代码树中有多个地方与OpenMAX相关的花絮.
在我的设备(三星Galaxy Tab 10.1)上,我可以通过/ system/lib中的众多OpenMAX库访问硬件解码器,将我的视频应用程序与这些接口连接起来会很棒.有人能指出我有关实现OpenMAX驱动的解码器的信息吗?我找到了来自Khronos的文档,但没有任何代码示例代码或教程.我已经完成了demuxing甚至软件解码(通过libavcodec/libavformat),我只想把钩子放进去启用硬件编码.我也在这里假设有必要直接链接到设备上可用的设备,这使得它在便携性方面相当黯淡,但它的工作原理.
或者,我对任何人都知道用于访问Tegra 2设备上可用的视频解码的私有API感兴趣.特别是如果有一个像NVIDIA为桌面Linux发行版实现的vdpau界面,因为有足够的可用 - 但我无法找到表明支持的共享库.