Skip to content

pcm 1.1.0

Latest

Choose a tag to compare

@jhurliman jhurliman released this 11 Sep 01:40
5651f11

Changelog

1.1.0 — 2026-09-10

  • Decode signed 16-bit samples correctly across arbitrary output-buffer boundaries.
  • Keep mono channel IDs at zero and clamp the minimum signed sample to -1, matching the documented range. Other sample normalization is unchanged.
  • Wait for ffmpeg process closure before completion and report failed execution even when partial audio was produced. Missing executables, empty output and truncated samples now return a nonempty error string, exactly once.
  • Add regression tests and real ffmpeg mono/stereo fixture tests.
  • Include TypeScript declarations, repository/license metadata and an explicit package file list.

Compatibility notes

The callback and legacy event-stream APIs remain available. Code that relied on success after a failed ffmpeg process must now handle the error callback. Negative full-scale samples now return -1 rather than a value slightly below -1. Completion occurs after process closure rather than stderr ending.

  • Validate the installed tarball and strict CommonJS/ESM TypeScript consumers in CI. Stream declarations now include the inherited EventEmitter/Stream API.