Skip to Content
This documentation is provided with the HEAT environment and is relevant for this HEAT instance only.
RunnersAudio Utilsconvert-to-pcm

convert-to-pcm

The convert-to-pcm transform scans all upstream byte blobs, decodes WAV/AIFF/AIFC containers, and writes PCM WAV artifacts plus a JSON report listing accepted and rejected inputs.

When to use it

Use as the first audio step after ingest when downstream nodes need a consistent WAV/PCM representation (for example audio-metrics and generate-transcript).

Limitations

  • Only WAV/AIFF/AIFC containers are decoded; other blobs are recorded in the report as not_wav_or_aiff and skipped (the node does not fail the whole batch).
  • Resample, bit depth, and channel conversion require numpy / librosa in the runner image; unsupported sample widths fail the node.
  • Optional normalize adjusts amplitude per file; it is not loudness standardization across a session.

Configuration (summary)

PropertyDescription
dataSourceNameObject store for outputs (defaults to runner default_store)
sampleRateHzTarget sample rate (resamples when different from source)
bitDepthTarget bit depth: 8, 16, 24, or 32
channelsTarget channel count: 1 or 2 (stereo to mono downmix supported)
normalizeWhen true, normalize waveform amplitude per file

Output

  • PCM WAV blobs keyed by MD5 of the original bytes (embedded in output identifiers).
  • A JSON report per run describing each input (isValidAudio, reason, md5, sourceNodeName).