Is there a hardware convertion block on tegra enabling the hardware convertion of a CSI
input YUV pixel format to RGB pixel format (and inversely) ?
If this component is available on Tegra platform, can we get frames on these 2 pixel format (YUV and RGB) ?
This input will be retrieved through V4L2 capture device.
Pixel Converter: Case 4: Only required if HDMI output doesn’t support RGB24 display
Input pixel format: RGB24
Output pixel format: Native HDMI output format
In the tegra multimedia api documentation nvee_docs/group__V4L2Conv.html,V4L2 NV Extensions API
ABGR32 is supported
RGB24 is not mentionned.
In the Tegra_X1_TRM_DP07225001_v1.1p.pdf, Page 684, Table 43: Pixel Format Support, there is also no support of RGB24 color space, but only those with Alpha layer (32Bits).
Could you confirm that RGB24 is not supported at none of the K1/X1 hardware color space engine ?
In order to support ABGR32 VIC color space engine format, we could setup the VI3 CSI input engine to write CSI data in ARGB32 format. Could you confirm this way we could convert V4L2_PIX_FMT_ABGR32 to V4L2_PIX_FMT_YUV420M / I420 using the encodre ?
Could you also confirm that this solution would increase by 33% external memory bus bandwidth ?
Romary,
Sorry for the late follow up on this thread …you are right RGB24 is not supported. On Tegra display, RGB surface must be either 32-bit or 16-bit.
video converter(VIC) can do RGBA → YUV420 conversion.
please enable tegrastat and running the sample code in tegra multimedia api to evaluate the performance.
JetPack/64_TX1/tegra_multimedia_api/samples/07_video_convert/