с чего начать писать плагин Gstreamer на ультрамасштабе Xilinx Zynq + - PullRequest
0 голосов
/ 13 октября 2019

мы проектируем систему обработки видео на основе FPGA на Zynq ultrascale +. вся обработка видео выполняется на FPGA и запускается через Gstreamer.

Мы добавили модуль масштабирования между нашим конвейером (Decoder + Encoder). декодер и кодировщик оба от Xilinx IPcore (PG252). для модуля масштабирования нам нужно написать плагин в Gstreamer и направить его по конвейеру следующим образом: (omxh264dec + MyscalerPlugin + omxh265enc). Я уже изучил основные руководства по Gstreamer и руководство по написанию плагинов и получил общее представление о том, как работает плагин. Я также просмотрел исходный код omxh264dec.c.

Я хочу получить адрес вывода декодера и каким-то образом разобрать его в модуле масштабирования и сказать запустить. (Блок масштабирования имеет три регистра в основной памяти. один для информирования его о запуске и два для начала его входного и выходного потока). В тесте, написанном на C, мы сделали это, получив адрес выходных данных и непосредственно запечатав егов памяти, чтобы сообщить блоку масштабирования.

Как я могу (или с чего начать) сделать то же самое с Gstreamer?

...