Skip to content

Jive Encoder 0.5.0

Latest

Choose a tag to compare

@github-actions github-actions released this 05 Jul 15:52
0.5.0

Highlights ✨

  • Renamed to Jive Encoder. The binary is now jive-encoder (was jivedrop) and the Go module path is github.com/linuxmatters/jive-encoder. Update any scripts or installs that call the old name.

New

  • Output path extension is checked. --output-path must end with the extension for the chosen format (.mp3, .m4a, .opus). A mismatch fails before encoding starts, instead of writing a mislabelled file.
  • JPEG and GIF cover input. Cover art now accepts JPEG and GIF sources, in addition to PNG.
  • Clean output when piped. Output detects the terminal and drops colour codes when redirected to a file or pipe, so logs stay readable. Warnings now go to stderr.

Fixed

  • Frontmatter is preserved on write-back. Updating podcast_duration and podcast_bytes now edits the YAML mapping in place, so nested text and formattingcstay intact.
  • Partial files are removed on failure. A failed encode no longer leaves a truncated output file behind.
  • Filter-graph stability. Guarded endpoint allocation and fixed an allocator mismatch in the FFmpeg filter setup.

Maintenance

  • Updated ffmpeg-statigo to v8.1.2.0 (FFmpeg 8.1).
  • Bumped Charm libraries (bubbletea, bubbles, lipgloss), nixpkgs, and golang.org/x/image.
  • Wide test and peer-review hardening across the encoder, CLI, UI, and artwork packages; CI now builds and tests with CGO_ENABLED=1.

Changes since 0.4.1

  • test: address peer-review findings in encoder, CLI, UI and artwork (18efeaf)
  • test: address peer-review findings in encoder and CLI (c0e0bec)
  • chore: update gif (a2a6d10)
  • chore: rebrand from disco ball to clamp emoji (9eca477)
  • test: address peer-review findings across all modules (948fbd1)
  • build(deps): bump nixpkgs from e73de5b to 6517942 (60b2810)
  • deps(deps): bump the gomod group with 3 updates (d424237)
  • fix(encoder): preserve frontmatter while updating stats (a92b498)
  • chore: update ffmpeg-statigo to v8.1.2.0 (cda0c54)
  • chore: drop harper dictionary (88a75d0)
  • test(jive-encoder): use real fixtures in validation tests (1804b7c)
  • fix(encoder): require output path extension to match format (b4621ef)
  • fix: guard filter endpoint allocation (7629a2a)
  • refactor(encoder): split encoder setup responsibilities (5993540)
  • refactor: simplify shared helpers and docs (1392cd3)
  • docs: polish comments across codebase (fe05a00)
  • refactor: apply peer review findings across codebase (44e8843)
  • chore(rename): rebrand project and binary to Jive Encoder (6ce91d6)
  • chore(go): don't pin point release (c7824e9)
  • chore: update ffmpeg-statigo to v8.1.1.3 (c9e1bc6)
  • build(deps): bump the github-actions group across 1 directory with 2 updates (35bf4ca)
  • build(deps): bump nixpkgs from 567a49d to e73de5b (753a92d)
  • build(deps): bump nixpkgs from 9ae611a to 567a49d (9e04230)
  • deps(deps): bump golang.org/x/image in the gomod group (0339d05)

Installation

Download the appropriate binary for your platform below, make it executable, and move it to your PATH:

# Linux (amd64)
chmod +x jive-encoder-linux-amd64
sudo mv jive-encoder-linux-amd64 /usr/local/bin/jive-encoder

# macOS (Apple Silicon)
chmod +x jive-encoder-darwin-arm64
sudo mv jive-encoder-darwin-arm64 /usr/local/bin/jive-encoder

Checksums

SHA256 checksums are provided below for verification.