Skip to content

HDMI

media.ingest.hdmi

Description

Receive uncompressed video and embedded audio over HDMI using DeckLink cards and the HWS family (AVMatrix, Acasis). Available resolutions and frame rates depend on the card model and input signal.

Configuration

Configure the stream through the central API. Stream configuration fragment:

streams:
- name: source1
  inputs:
  - hdmi:
      device: /dev/v4l/by-path/pci-0000:5e:00.0-video-index0

Parameters

Parameter Purpose
device Required HDMI V4L2 device path; prefer a stable /dev/v4l/by-path/… link
standard Optional signal standard; otherwise detected from the input
pixel_format 8-bit default; v210 — 10-bit. HDMI RGB uses the ARGB format negotiated by the driver
audio Audio track list; an empty list selects one stereo PCM track from the first channel pair
audio[].channels One-based input audio channel numbers; their order defines the track channel layout
audio[].sample_type pcm by default; smpte337 extracts compressed AC-3/E-AC-3 from a channel pair
audio[].lang Optional track language
peer_timeout_ms Frame timeout in milliseconds; default 30,000

Use the separate hdmi input section. SDI fields ad_marks and timecode are unavailable here: HDMI does not carry VANC SCTE-104 or ATC timecode.

Example of an explicit stereo PCM track; track numbers follow positions in the audio list, starting at one:

hdmi:
  device: /dev/v4l/by-path/pci-0000:5e:00.0-video-index0
  audio:
  - channels: [1, 2]
    sample_type: pcm
    lang: eng

Transport options

Capture requires an HDMI card driver with a V4L2 interface and device access for the Sapsan process. On opening the device, Sapsan verifies that the driver identifies it as HDMI; SDI devices are rejected. Use a stable /dev/v4l/by-path/… link.

Supported codecs

  • UYVY 4:2:2 (8-bit)
  • v210 4:2:2 (10-bit)
  • ARGB (HDMI RGB)
  • PCM
  • AC-3 (SMPTE ST 337)
  • E-AC-3 (SMPTE ST 337)

UYVY, v210 and ARGB are uncompressed pixel formats, and PCM is uncompressed audio; they are not H.264/HEVC video codecs. Configure transcoding for compressed output. AC-3/E-AC-3 are extracted from an audio channel pair only with sample_type: smpte337; SMPTE ST 337 describes the packaging, not a separate audio codec.

Error handling

Input state and failure cause are available in stream statistics. Connection loss or missing frames uses the shared retry and failover mechanisms.

Applying changes

Apply changes through the central API. Changing the source address or format reopens capture and may interrupt ingest while connecting. Check input state and arriving frames afterwards.

Counters

The tables give exact protocol statistics field names, including event counters and current-value gauges. Zero fields may be omitted. API and Prometheus expose different projections; the full list is not necessarily present in one Admin API response. Detailed statistics depend on the counter license.

Common input totals: bytes, frames, errors, warnings. They aggregate protocol data and must not be added to protocol counters again.

Input statistics use the hdmi category. Hardware counters are shared with SDI, but VANC and ATC processing is disabled: the corresponding counters do not represent HDMI activity.

HDMI

Field Type
line_state gauge
producer_restarts counter
producer_restarts_wrong_standard counter
producer_restarts_silence counter
datagrams counter
boundary_loss counter
crc_errors counter
unsupported_codec counter
vanc_unknown counter
vanc_cdp counter
vanc_cdp_pairs counter
ad_marks counter
errors_ad_marks_dropped counter
warning_ad_mark_descriptors_dropped counter
timecode_missing counter
timecode_rejected counter
timecode_untrusted counter
timecode_jumps counter

Other details

Uncompressed frames load PCIe and memory independently of the encoded output bitrate. Size the number of inputs using actual bus capacity and the selected resolution and frame rate.

Next steps