Dekoduj wideo w Raspberry Pi bez używania OpenMAX?

Szukam przykładu dekodowania wideo na Raspberry Pibezpośrednio, bez używania OpenMAX.

To wyjaśnia różne warstwy oprogramowania multimedialnego:

Istnieje dodatkowa warstwa, która nie jest tutaj pokazana, „MMAL„warstwa, która (jak sądzę) jest opakowaniem Broadcom wokół OpenMAX. (Jeśli nie, byłaby to alternatywa OpenMAX, siedząc na sterowniku jądra) raspivid i raspistill na przykład są pisane przy użyciu MMAL.

Chcę przykład dekodowania wideo, w którym wejście jest surowe H.264, a wyjście to albo wideo w pamięci, albo wideo na ekranie. chce to zrobićużywając bezpośrednio VCHIQ, nie używając OpenMAX. (Głównie ze względu na wydajność i elastyczność)

To repozytorium github:https://github.com/raspberrypi/userland/ zawiera źródło wszystkiego pokazanego powyżej (pomarańczowe i zielone pola; źródło samego VCHIQ, implementacja OpenMAX IL na szczycie VCHIQ, także implementacje OpenGL i EGL, ...). Więc teoretycznie powinno wystarczyć. Problem polega na tym, że jest bardzo nieoczywiste, jak z niego korzystać, nawet jeśli ktoś dobrze zna OpenMAX i ogólnie ramy multimedialne.

Na przykład:vchiq_bulk_transmit() wydaje się być funkcją, której można użyć do wysyłania wideo do dekodera. Ale jak zainicjować pierwszy argument typuVCHIQ_SERVICE_HANDLE_T? Gdzie idą wyniki, w buforze ramki lub w uchwycie wyniku, czy ...?

EDYTOWAĆ Nagroda może być zebrana albo przez dostarczenie działającego przykładu dekodowania wideo przy użyciu vchiq, instrukcji API, która pokazuje sekwencję wywołania (choć nie jest to przykład pracy) lub wskaźnik do wystarczającej dokumentacji, aby to napisać. Działający przykład dostanie sporą dodatkową nagrodę :)

questionAnswers(2)

yourAnswerToTheQuestion