À l'aide de OpenMAX (IL?) pour de décodage audio/vidéo sur Android

De nombreuses nouvelles plates-formes de matériel fonctionnant sous Android, en particulier NVIDIA Tegra 2, le soutien OpenMAX pour les médias de l'accélération. Il est effectivement impossible sur les appareils d'aujourd'hui pour décoder de la vidéo 720p, sans ce soutien, mais le nombre de demuxers pris en charge sur Android sont assez minces. Le seul service public de l'API, je n'ai pu trouver a été par le biais de la MediaPlayer classe dans le SDK Android. Il ya plusieurs endroits dans la source Android arbre avec OpenMAX liées en petits morceaux, cependant.

Sur mon téléphone (Samsung Galaxy Tab 10.1) j'ai accès à des décodeurs matériels à travers une multitude de OpenMAX libs dans /system/lib, et il serait bien à l'interface de mon application vidéo avec ces. Quelqu'un peut-il m'indiquer des informations sur la mise en œuvre d'un décodeur alimenté par OpenMAX? J'ai trouvé de la documentation à partir de Khronos, mais rien dans la manière de l'exemple de code ou des tutoriels. J'ai déjà dé-multiplexage vers et même un logiciel de décodage pris en charge (via libavcodec/démultiplexeur), je voudrais juste mettre des crochets pour activer l'encodage matériel. Je suis aussi en supposant ici, il serait nécessaire de faire le lien avec ceux qui sont disponibles sur l'appareil, ce qui le rend assez terne en termes de portabilité, mais il fonctionne.

Sinon, je suis intéressé par toute ce que l'on sait sur l'Api privées pour accéder au décodage vidéo disponible sur Tegra 2 appareils. Surtout si il y a un vdpau interface comme ce que NVIDIA met en œuvre pour les distributions linux de bureau, car il ya beaucoup disponibles pour cela - mais je n'ai pas pu trouver les bibliothèques partagées qui indiquent que le soutien.

OriginalL'auteur Christopher Corsi | 2011-08-09