Разрабатывает аппаратный декодер H264 для Android - Stagefright или OpenMax IL?

Я занимаюсь разработкой ускоренного видео декодера H264 для Android. До сих пор я пришел с некоторыми библиотекамиMediaCodec, Stagefright, OpenMax IL, OpenMax AL а такжеFFmpeg, После небольшого исследования я обнаружил, что -

Я нашелбольшой ресурс использования stagefright с FFmpeg, но я не могу использовать FFmpeg, так как для его лицензии это довольно ограничительно для распределенного программного обеспечения. (Или можно отказаться от FFmpeg от этого подхода?)

Я не могу использовать MediaCodec в качестве Java API, и мне приходится вызывать его через JNI из уровня C ++, который является относительно медленным, и мне это запрещено.

Я не могу использовать OpenMax AL, так как он поддерживает только декодирование транспортного потока MPEG-2 через буферную очередь. Это исключает передачу необработанных значений h264 NALU или других форматов мультимедиа.

Теперь осталось только - stagefright и OpenMax IL. Я узнал, что stagefright использует интерфейс OpenMax (OMX). Так я должен идти с stagefright или OpenMax IL? Что будет более перспективным?

Кроме того, я узнал, что ускоренный декодер Android H / W зависит от производителя, и у каждого поставщика есть свои собственные интерфейсы API OMX. Это правда? Если это так, нужно ли мне писать H / W вендор для конкретной реализации OpenMax IL? А как насчет сценического страха? - Это аппаратно-независимый или аппаратно-зависимый? Если не существует способа реализации H / W с использованием аддона или OpenMax IL, мне нужно поддерживать как минимум Qualcomm Snapdragon, Samsung Exynos и Tegra-4.

Обратите внимание, что мне нужно декодировать поток Приложения B H264 и ожидать декодированные данные после декодирования, которые я отправлю в свой конвейер рендеринга видео. В общем, мне нужен только модуль декодера.

Я очень смущен. Пожалуйста, помогите мне поставить в правильном направлении. Заранее спасибо!

РЕДАКТИРОВАТЬ

Мое программное обеспечение для коммерческих целей, и исходный код также является частным. И я также ограничен в использовании ffmpeg клиентом. :)

Ответы на вопрос(2)

Ваш ответ на вопрос