BB AI Ducati Plugin

I need to decode H264 on BB AI. I saw that I can take advantage of hardware acceleration by using the Ducati plugin for Gstreamer. How to install this plugin? I am using firmware AM5729 Debian 10.3 2020-04-06 8GB SD IoT TIDL from here BeagleBoard.org - latest-images

I have the same needs.


I followed several paths and I am stuck on all of them.


Path 1: Create linux from the sdk, ti-processor-sdk-linux-am57xx-evm-08_02_01_00. The problem:


    gst-launch-1.0 -v videotestsrc ! video/x-raw,width=1920,height=1080 ! ducatih264enc ! fakesink


    MmRpc_create: Error: open failed, name=/dev/rpmsg-dce


In order to create the device /dev/rpmsg-dce, I tried the solution from https://e2e.ti.com/support/processors-group/processors/f/processors-forum/845540/processor-sdk-am57x-dev-rpmsg-dce-not-instantiated, but after changing the device tree, my linux doesn’t boot.


Path 2: Use debian image “AM5729 Debian 10.3 2020-04-06 8GB SD IoT TIDL” from https://beagleboard.org/latest-images. I copied the ducati libraries from path 1. I see de device created, but another problem arises, with dmesg I see:


    [ 88.637697] Architecture has no drm_cache.c support


    [ 88.650506] rpmsg_rpc rpmsg-dce: error from rproc_pa_to_da, rproc = d1b58800, pa = 0x8d429000 ret = -22


    [ 88.661086] rpmsg_rpc rpmsg-dce: unwinding UVA to RDA translations! translation = 0


    [ 88.674895] rpmsg_rpc rpmsg-dce: failed to translate all pointers for remote core!


The gstreamer reports: MmRpc_call: Error: write failed


Path 3: Create a new gst plugin that interfaces with the AM5729 IVA-HD subsystem. Here the problem is that I don’t find the documentation, the chapter 6 IVA subsystem of the AM572x Technical Reference Manual is empty, I searched around -not much- but it seems it is not easy to find. Anyway, for me, this would be the last alternative.


What am I doing wrong?


Have anybody succeeded in running the ducati librairies in the BBAI? How?