Pipeline Configuration#

This page covers NIM service chart Helm values and environment variables specific to the Active Speaker Detection pipeline, including tuning parameters, media format, and SMPTE ST 2110 session wiring.


Active Speaker Detection Pipeline Tuning#

Configuration

Helm Key (pipeline.*)

Environment Variable

Comment

Sync tolerance (minimum score to treat a face as speaking)

syncTolerance

AI4M_ACTIVESPEAKERDETECTION_SYNC_TOLERANCE

Default: 0.5986; valid range: (0, 1); invalid values fall back to default at process start.

Bounding box overlay on output video

testFrameOverlayMode

AI4M_ACTIVESPEAKERDETECTION_TEST_FRAME_OVERLAY_MODE

true or false; when enabled, draws active-speaker bounding boxes on output video.

Output frame buffer size

outputFrameBufferSize

AI4M_ACTIVESPEAKERDETECTION_OUTPUT_FRAME_BUFFER_SIZE

Default: 30 frames; adds ~size / fps seconds of latency to the ~3 sec model latency.

Audio silence detection

useAudioThresholdToDetectActiveAudioStream

AI4M_ACTIVESPEAKERDETECTION_USE_AUDIO_THRESHOLD_TO_DETECT_ACTIVE_AUDIO_STREAM

Default: false; allowed: true or false.

Audio silence threshold

audioThresholdDb

AI4M_ACTIVESPEAKERDETECTION_AUDIO_THRESHOLD_DB

Default: -40.0 dB; used when audio silence detection is enabled.


Video Raster#

The video raster defines the fixed picture format of the incoming SMPTE ST 2110-20 stream. These Helm keys tell the NIM the raster of the incoming video so that decoding, audio sync, and inference stay consistent.

Configuration

Helm Key

Comment

Width and height

video.width, video.height

Supported: 720p, 1080p (default), 4K UHD; refer to Support Matrix.

Frame rate

video.framerateNum, video.framerateDen

Must match the upstream sender and downstream receiver.


Audio Format#

Configuration

Helm Key

Comment

PCM format

audio.pcmFormat

Example: S24BE

Sample rate

audio.samplingRate

Example: 48000 Hz

Channels

audio.numChannels

Per logical stream


SMPTE ST 2110 Input Sessions#

Configuration

Helm Key

Comment

Video session

input.video.sessionName, input.video.localInterfaceName, input.video.hostIp, input.video.hostPort, input.video.hostNumSubnetBits, input.video.flushFrameCountThreshold

Multicast IP address and port must match the upstream sender pipeline; site-specific. flushFrameCountThreshold: consecutive stale frames allowed before flush and resync (default: 3).

Audio session

input.audio.sessionName, input.audio.localInterfaceName, input.audio.hostIp, input.audio.hostPort, input.audio.hostNumSubnetBits, input.audio.numStreams

Multicast IP address and port must match the upstream sender pipeline. numStreams must match the number of diarized audio streams.


SMPTE ST 2110 Output Sessions#

For video and ancillary outputs, multicast hostIp and hostPort must match the multicast host IP address and host port configured on the downstream receiver pipeline. (Receivers must subscribe to the same groups and ports this NIM transmits on.)

Configuration

Helm Key

Comment

Ancillary (SMPTE ST 2110-40)

output.ancillaryData.sessionName, output.ancillaryData.localInterfaceName, output.ancillaryData.hostIp, output.ancillaryData.hostPort, output.ancillaryData.hostNumSubnetBits

Active-speaker detection results as ancillary data. For application payload layout, refer to Ancillary Data Payload.

Video out

output.video.sessionName, output.video.localInterfaceName, output.video.hostIp, output.video.hostPort, output.video.hostNumSubnetBits

SMPTE ST 2110-20 program video; site-specific session name, interface, and subnet mask length.


NIM Pod Resources#

Resource

Requests

Limits

cpu

12

12

hugepages-2Mi

8Gi

8Gi

memory

8Gi

8Gi

nvidia.com/gpu

1

1

The cpu value is set to 12 cores by default, tuned for real-time ST 2110 performance. You can reduce it, but the value must be consistent with env.CPU_AFFINITY.

env.CPU_AFFINITY (default "0-7") pins the NIM process to a contiguous range of CPU cores. The chart validates at deploy time that the values of resources.requests.cpu and resources.limits.cpu are each equal to or greater than the number of cores in the affinity range.

Setting

Helm Key

Default

CPU affinity range

env.CPU_AFFINITY

"0-7" (8 cores)

The default cpu (12) is intentionally greater than CPU_AFFINITY ("0-7", 8 cores)—the pinned range covers the NIM workload minimum, and the remaining cores are available to Kubernetes. To configure the cores, keep resources.requests.cpu, resources.limits.cpu, and env.CPU_AFFINITY consistent. If cpu falls below the affinity range, the chart fails during installation with a descriptive error.


Logging#

Configuration

Helm Key

Comment

Log level

logging.level

0 FATAL, 1 ERROR, 2 WARN, 3 INFO (default), 4 DEBUG, 5 VERBOSE.


See Also#