hl2ss icon indicating copy to clipboard operation
hl2ss copied to clipboard

AHAT depth camera VideoProfile configuration modes

Open vstadnytskyi-FDA opened this issue 1 year ago • 1 comments

The example for AHAT depth camera configuration has several modes for VideoProfile profile = hl2ss.VideoProfile.H265_MAIN

  • H264_BASE
  • H264_HIGH
  • H264_MAIN
  • H265_MAIN
  • mro
  • RAW

What do these settings do?

vstadnytskyi-FDA avatar Jul 18 '23 15:07 vstadnytskyi-FDA

RAW: Video frames are sent as-is, without compression or preprocessing. Best quality images but very high bandwidth usage resulting in network saturation, high latency, and low framerates. H264_: Video frames are compressed using the H264 encoder. Compression is lossy but bandwidth usage is reduced significantly (by a factor between 50x-100x) enabling full framerate streaming. Higher profiles (BASE < MAIN < HIGH) = more efficient encoding. H265_: Video frames are compressed using the HEVC encoder. More efficient than H264. Also full framerate. mro: that's a Python thing, not a video profile. For AHAT in particular, the depth and AB frames are preprocessed to fit both (16 bpp each) into a single NV12 frame (12 bpp).

jdibenes avatar Jul 19 '23 02:07 jdibenes