Skip to content

Releases: matthewstraub/prores-converter

v1.0.5 - AJA DDR Compatibility v2

Choose a tag to compare

@matthewstraub matthewstraub released this 27 Apr 14:39

AJA DDR Compatibility v2

Major overhaul of the encoding pipeline to produce files that match AJA DDR hardware expectations.

Encoder

  • Primary: prores_videotoolbox (Apple's native hardware encoder) — produces genuine Apple ProRes atoms with vendor_id=appl
    • Fallback: prores_ks (software encoder) for non-macOS build environments

Post-Encode Atom Patching

New tree-based MOV atom patcher (movPatcher.ts) that modifies the QuickTime container after encoding:

  • Handler names: AJA Video Media Handler, AJA Sound Media Handler, AJA Time Code Handler
    • ftyp minor_version: Set to 537199360 (Apple/AJA standard, was FFmpeg's default 512)

Other Changes

  • Added -field_order tt (top-bottom) to match AJA convention
    • Stream order now matches AJA gold standard: audio, audio, video, tmcd
    • Progress bar reserves 5% for atom patching phase (encoding caps at 95%)
    • Atom patching failure is non-fatal — file remains valid ProRes

Testing

  • 19 tests passing across 3 test files
    • New movPatcher.test.ts with synthetic MOV generation for atom patching verification

v1.0.4

Choose a tag to compare

@github-actions github-actions released this 27 Apr 13:56
feat: AJA DDR-compatible output (dual mono audio, timecode, movflags)

- Split stereo audio into two discrete mono PCM tracks (L/R via pan filters)
- Added embedded timecode track (-timecode 00:00:00;00) for tmcd support
- Added -movflags +faststart for better container compatibility
- Added audioChannels to ProbeResult for smart stereo/mono handling
- Updated UI footer and AUDIO spec card to reflect new output format
- Bumped version to 1.0.4
- Added audioChannels probe test (12 tests pass)

v1.0.3

Choose a tag to compare

@github-actions github-actions released this 24 Apr 17:52
fix: traffic light overlap, bump version to 1.0.3, comprehensive README

- Added pl-20 left padding to header to clear macOS traffic light buttons
- Added -webkit-app-region: drag/no-drag for proper window dragging
- Bumped package.json version from 1.0.0 to 1.0.3
- Rewrote README with architecture diagram, CI/CD docs, version history

v1.0.2 - Fix FFmpeg dynamic library loading error

Choose a tag to compare

@matthewstraub matthewstraub released this 24 Apr 17:20
e5d2206

Bug Fix

Fixed: "Library not loaded: libavdevice.62.dylib" error

The previous build used Homebrew-installed FFmpeg binaries, which are dynamically linked and depend on shared libraries (libavdevice, libavcodec, etc.) that exist only on the build machine. When the app was run on a different Mac, these libraries were missing, causing the crash.

Changes:

  • Replaced Homebrew FFmpeg with truly static binaries from descriptinc/ffmpeg-ffprobe-static (FFmpeg 6.1.2)
    • Separate architecture builds — now produces individual DMGs for Apple Silicon (arm64) and Intel (x64) instead of a universal binary
    • Removed arch: ["universal"] from electron-builder config, letting the CLI --arm64/--x64 flags control the target architecture

Download:

  • Apple Silicon (M1/M2/M3/M4): ProRes-Converter-*-arm64.dmg
    • Intel Macs: ProRes-Converter-*-x64.dmg

ProRes Converter v1.0.1

Choose a tag to compare

@matthewstraub matthewstraub released this 24 Apr 15:41
e600ec2

Bug Fix Release

Fixes the "spawn node ENOENT" error that prevented the Electron app from launching.

Changes

  • Server now runs inside Electron's own Node.js runtime (no external node binary required)
    • Self-contained server bundle with all dependencies inlined
    • FFmpeg binaries properly bundled for macOS

Downloads

After the build completes (~10 min), .dmg files will be attached below:

  • arm64.dmg — Apple Silicon (M1/M2/M3/M4)
    • x64.dmg — Intel Mac
    • universal.dmg — Works on both

Output Specs

  • Format: QuickTime (.mov)
    • Video: Apple ProRes 422, 1920x1080, 29.97fps
    • Audio: Uncompressed PCM, 48kHz, 24-bit
    • Non-16:9 sources are letterboxed/pillarboxed automatically

ProRes Converter v1.0.0

Choose a tag to compare

@matthewstraub matthewstraub released this 14 Apr 19:21
eb8763e

ProRes Video Converter

Drag-and-drop any video file and convert it to broadcast-ready ProRes 422 format.

Output Specs

  • Container: QuickTime (.mov)
    • Video Codec: Apple ProRes 422 (Standard)
    • Frame Size: 1920 x 1080 px
    • Frame Rate: 29.97 fps
    • Audio Codec: Uncompressed PCM
    • Sample Rate: 48,000 Hz
    • Sample Size: 24-bit
      Non-16:9 sources are automatically letterboxed/pillarboxed with black bars — no content is cropped.

Downloads

  • Apple Silicon (M1/M2/M3/M4): Download the arm64 .dmg
    • Intel Mac: Download the x64 .dmg

Note: The .dmg files will be attached to this release automatically by GitHub Actions. If they're not here yet, check the Actions tab for the latest build.