generic-model-output-compression#
Code |
RP.006 |
|---|---|
Tags |
✅ |
Summary#
RenderVar prims with sourceName = "GenericModelOutput" should use BLOSC compression (srtx:compression:type = "blosc").
Description#
GenericModelOutput carries LiDAR point cloud data — per-point XYZ coordinates, intensity scalars, timestamps, and flags stored as typed numeric arrays. This data is non-visual and high-precision. Video codecs (hevc, h264, av1) are lossy and designed for perceptual colour fidelity; they degrade or corrupt numeric precision data. BLOSC is a lossless codec designed for numeric array data and preserves all values exactly.
Per the RTX Sensor API documentation: “blosc is suited for non-visual data such as LiDAR pointclouds.”
This rule is a warning rather than a failure because some pipeline configurations may have specific reasons to omit or override compression. However, using a lossy codec on GenericModelOutput will corrupt point cloud data in ways that are difficult to diagnose.
Why is it required?#
Lossy video compression applied to a LiDAR point cloud buffer corrupts the floating-point coordinate and intensity values. Unlike colour images where minor compression artefacts are visually acceptable, point cloud data corruption directly affects downstream perception, mapping, and obstacle-detection algorithms that consume the output.
Examples#
# Valid: BLOSC compression on GenericModelOutput
def RenderVar "GenericModelOutput"
{
uniform string sourceName = "GenericModelOutput"
uniform string srtx:compression:type = "blosc"
}
# Should be corrected: lossy codec on point cloud data
def RenderVar "GenericModelOutput"
{
uniform string sourceName = "GenericModelOutput"
uniform string srtx:compression:type = "hevc"
}
# Acceptable: no compression attribute (omitted)
def RenderVar "GenericModelOutput"
{
uniform string sourceName = "GenericModelOutput"
}
How to comply#
Set srtx:compression:type = "blosc" on any RenderVar prim whose sourceName is "GenericModelOutput". If no compression attribute is present, consider adding blosc for best output fidelity.