(Jetson + AJA kona HDMI) when I run AJA kona HDMI test, the screen can only show a black window

**• Hardware Platform (Jetson / GPU)**Jetson
• DeepStream Version 6.0
**• JetPack Version (valid for Jetson only)**4.5
**• Issue Type: questions

I want to use Jetson to run AJA KONA HDMI.
when I run the test sample

lucas@lucas-desktop:~/aja/ntv2sdklinux_16.1.0.3$ gst-launch-1.0 ajavideosrc mode=4Kp30-rgba input-mode=hdmi nvmm=true ! nv3dsink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
Redistribute latency…
^Chandling interrupt.
Interrupt: Stopping pipeline …
Execution ended after 0:00:08.679657011
Setting pipeline to PAUSED …
Setting pipeline to READY …
Setting pipeline to NULL …
Freeing pipeline …

I used my laptop as the source of HDMI input.
Clara Holoscan SDK User Guide indicated that RGBA mode must be used with the ajavideosrc plugin when it is used whth NVIDIA plugins.

so I tried other sink types
eg.
lucas@lucas-desktop:~/aja/ntv2sdklinux_16.1.0.3$ gst-launch-1.0 ajavideosrc mode=4Kp30 input-mode=hdmi nvmm=true ! autovideosink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
nvbufsurface : Unsupported output format (10)
Error(-1) in buffer allocation

** (gst-launch-1.0:19153): CRITICAL **: 19:47:27.079: gst_nvds_buffer_pool_alloc_buffer: assertion ‘mem’ failed
Caught SIGSEGV
#0 0x0000007f9ac2fe28 in __GI___poll (fds=0x5581af0ab0, nfds=548058419768, timeout=) at …/sysdeps/unix/sysv/linux/poll.c:41
#1 0x0000007f9ad3ce08 in () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#2 0x000000558162a460 in ()
Spinning. Please run ‘gdb gst-launch-1.0 19153’ to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
^\Quit (core dumped)

all other sink types shows the same context as above.

If I tried the command without “nvmm=true”
eg.
gst-launch-1.0 ajavideosrc mode=1080p60-rgba input-mode=hdmi ! nv3dsink

It can show a right image, but the colors are almost wrong.

How can I solve the problem .

THX!

Hello,
The strange colorspace when using a laptop output had been observed before, do you happen to have a hdmi camera? It seems currently your AJA RDMA functionality isn’t working - have you been able to verify that your AJA drivers are built without problem with command ${AJA_BASE}/${NTV2_SDK}/bin/rdmawhacker?

Just to confirm the platform setup, are you using a Clara AGX Devkit with a Kona HDMI card plugged in to the outer PCIe slot?

Hi,
I am sure that the Kona HDMI card plugged successfully, because if I tried “gst-launch-1.0 ajavideosrc mode=1080p60-rgba input-mode=hdmi ! nv3dsink”, it can show a wrong color image.

at my Jetson platform, the command ${AJA_BASE}/${NTV2_SDK}/bin/rdmawhacker will show a error note :
“## ERROR: GPU buffer lock failed”

I can not resolve this, so I ignored it.

Reason of the error was confused, I just run the install commands as the guide indicated:

export AJA_BASE=${HOME}/aja
mkdir ${AJA_BASE}
mv ~/Downloads/ntv2sdklinux_16.1.0.3.zip ${AJA_BASE}
mv ~/Downloads/ntv2sdklinux_16.1.0.3_arm.zip ${AJA_BASE}

cd ${AJA_BASE}
export NTV2_SDK=ntv2sdklinux_16.1.0.3
unzip ${NTV2_SDK}.zip
unzip ${NTV2_SDK}_arm.zip

cp ${AJA_BASE}/${NTV2_SDK}_arm/lib/* ${AJA_BASE}/${NTV2_SDK}/lib/

cd ${AJA_BASE}/${NTV2_SDK}/ajadriver/linux
export AJA_RDMA=1
make

sudo ${AJA_BASE}/${NTV2_SDK}/bin/load_ajantv2

And now, it can show the right things as:

“loaded ajantv2 driver module”
“created node /dev/ajantv20”

I continue installing.
cd ${AJA_BASE}/${NTV2_SDK}/ajaapps/crossplatform/rdmawhacker
make
${AJA_BASE}/${NTV2_SDK}/bin/rdmawhacker

the error will show as below:
“## ERROR: GPU buffer lock failed”


Hello, I see that you’re using a Jetson AGX Xavier. Since the documentation Chapter 9 is intended for Clara AGX devkit which has an additional discrete GPU, the steps for Clara AGX GPU RDMA would not work on Jetson AGX Xavier with the integrated GPU, since there is no discrete GPU on Jetson AGX Xavier.

  • Try to add export AJA_IGPU=1 after export AJA_RDMA=1 in your build process and that should get rid of the error with ${AJA_BASE}/${NTV2_SDK}/bin/rdmawhacker.
  • Under Step 1.2 Installing the AJA GStreamer Plugin, instead of export GST_CUDA=/usr/local/cuda-11.1/targets/sbsa-linux, try specifying export GST_CUDA=/usr/local/cuda-10.2/targets/aarch64-linux/

Please see NVIDIA Clara AGX Developer Kit for AI-Enabled Medical Devices for the components in a Clara AGX devkit. The Jetson AGX Xavier is one component within the devkit.

Hi,
I tried export AJA_IGPU=1 as your reply.
But it still prints the error as before.

The rdmawhacker compiling is not related to the following content.
And even it’s related, I can be sure of every path I exported is correct (I input all paths manually.)

Is there any other possible problem?

look forward to your reply.

By the way, the images I uploaded should be checked from bottom to top.

Thx!



Hello, just to check, did you rebuild the kernel module with both AJA_RDMA=1 and AJA_IGPU=1 enabled? This should not be at the step of building rdmawhacker, but should be at the step of building the kernel module:

$ cd ${AJA_BASE}/${NTV2_SDK}/ajadriver/linux
$ export AJA_RDMA=1
$ export AJA_IGPU=1
$ make

Our colleague was able to set up with Jetson + AJA card with the above step. However, please keep in mind that it is a untested configuration that our SDK is not officially supporting.
May I ask the application and use case you are developing with the Jetson + AJA card configuration?

Hello
I just tried, the rdmawhacker could be executed correctly.
But there are still the same questions as before:
If I run “gst-launc-1.0 ajavideosrc mode=1080p30-rgba input-mode=hdmi nvmm=true ! nv3dsink”, it will show a black image.
If I run “gst-launc-1.0 ajavideosrc mode=1080p30-rgba input-mode=hdmi ! nv3dsink”, it will show a wrong color image, and the color slants green.




This is expected since nvmm=true is specifying the RDMA to discrete GPU (on the Clara AGX devkit) to be enabled. Since there is no discrete GPU in your setup, only the integrate GPU onboard Jetson, that param cannot be set.

RE colorspace: could you try with another (HDMI) camera?

I have no HDMI camera to try, but I tried lots of HDMI source, such as NUC.
I tried the commands on my x86 platform(ubuntu 18), it still has the same problems.
(gst-launch-1.0 ajavideosrc mode=1080p30-rgba input-mode=hdmi nvmm=true ! videoconvert ! autovideosink
or
gst-launch-1.0 ajavideosrc mode=1080p30 input-mode=hdmi ! videoconvert ! autovideosink)

the x86 platform has no problem of rdmawhacker.

There is a discrete GPU at x86 platform. This should be confirmed.

configure of the x86 platform:
RTX 6000
Ubuntu 18
CUDA 11.4
driver 470
deepstream 6.0
tensorrt 8.0

We have not tested the AJA Gstreamer plugin on x86 platforms. Please note that our platform Clara AGX devkit is ARM based, therefore some instructions are ARM-specific, such as the zip file downloaded in this section AJA Video Systems — Clara Holoscan SDK 0.1 documentation.

I got it.
That’s to say, the platform Jetson could not be used on this function.
And it’s not confirmed whether x86 platform would work.
Is that so ?

As stated in documentation, the Clara Holoscan SDK is meant to be run on the Clara AGX Developer Kit and incoming Clara Holoscan Developer Kit. Both the Clara AGX devkit and Clara Holoscan devkit are ARM based, not x86 based, and build on top of Jetson. The Jetson AGX Xavier is only one hardware component in the Clara AGX Developer kit, but the Clara AGX Developer Kit has more components than Jetson such as the smart NIC and discrete GPU.

The Clara Holoscan SDK is not meant to be installed and flashed onto x86 systems. While there are some apps that can be run on a x86 host where specified in the documentation, the AJA build instructions were not meant for x86.

https://docs.nvidia.com/clara-holoscan/sdk-user-guide/introduction.html

OK,I got it.
Thank you.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.