I’m trying to figure out the best way to take the cuda NV12 output of a cuEGLStreamConsumer and pass it through an appsrc to the omxh264enc.
Right now the cuda is being converted from NV12 to RGBAf for use with jetson-inference. Then I use a kernel to convert RGBAf to RGB which goes through the appsrc into a videoconvert element that converts it back to I420.
NV12 (cuda) -> RGBAf (cuda) -> RGB -> I420 -> h264
I feel like i should be able to pass the NV12 directly into the omxh264enc element, eliminating some of those copies.
Can I just take the luma and chroma surfaces, copy them into a gstbuffer, and set the caps as NV12? Has anyone done something similar?