Fast copy between hardware buffers

How I can access DMA (Direct Memory Access) controllers on TX1 to schedule copy of large data (like raw video data) from one hardware buffer to another? I am currently taking doing memcpy() which works but takes huge time.

Hi SagarGaonkar,

What’s your use case? Between internal CPU and GPU or through PCIE bridge to external hardware?
Please provide more information, then people can share their experience.


My use case is copying buffers from various hardware components like V4L2 Video Converter and Video encoder. I need this copy because the output of V4L2 Video Converter does not match what encoder expects because its stride != width and it has different strides for Chroma and Luma parts of video buffers.

Other use case is to compose 2 or more video inputs into a single buffer before encode.

Hi Sagar,
Do you integrate [07_video_convert->01_video_encode] and find it not working? Please share how to reproduce the issue on r24.2.1.

In gstreamer frameworks, it is working [gst-launch-1.0 videotestsrc num-buffers=100 is-live=true ! nvvidconv ! omxh264enc ! fakesink].

Hi Sagar,

Have you resolved the issue by previous suggestion?
Any result can be shared?