Мне нужно декодирование H.264 с аппаратным ускорением для исследовательского проекта, чтобы протестировать самоопределяемый протокол.
Поскольку у меня есть поиск в Интернете, я нашел несколько способов выполнить декодирование видео с аппаратным ускорением на Android.
- Используйте ffmpeg libstagefright (обзор libstagefright) или используйте libstagefright непосредственно в ОС, например здесь а>.
- Используйте OpenMax на определенной аппаратной платформе. как здесь об устройстве Samsung и здесь о серии Qualcomm Snapdragon
- Некоторые упомянули PVplayer,
Некоторые люди "говорят", что libstagefright - единственный способ, в то время как ребята из Qualcomm явно добился успеха.
В настоящее время я не уверен, какой способ может работать. Я немного смущен сейчас. Если бы все могло работать, я бы, конечно, предпочел аппаратно-независимый метод.
Поскольку я протестировал несколько видеоплееров с ускорением H/W с помощью Galaxy Tab 7.7 (3.2 и Enxyos), VLC, Mobo, Rock, vplayer, rock и mobo работают нормально, VLC не работает, vplayer, кажется, имеет рендеринг баг, который стоит своей производительности.
Во всяком случае, я сделал «операцию» на Rockplayer и удалил все его библиотеки .so в data\data\com.redirecting\rockplayer, и программное декодирование дает сбой, в то время как аппаратное декодирование работает по-прежнему нормально! Интересно, как они это сделали. Мне кажется, что аппаратное ускорение может не зависеть от аппаратных платформ.
Может ли кто-нибудь решить эту проблему? Или предоставить любую ссылку с дополнительной информацией или более подробной информацией?