Pipeline Syntax
Pipelines describe a series of transformations applied to an input file.
uniconv <source> "<target> [options] | <target> [options] | ..."
Basics
# Single conversion
uniconv photo.heic "jpg"
# With options
uniconv photo.heic "jpg --quality 85"
# Chained conversions
uniconv photo.heic "jpg | grayscale"
# Multi-stage document conversion
uniconv photo.jpg "pdf | docx"
# Specify output path
uniconv -o thumbnail.gif video.mp4 "gif --width 320 --fps 10"
Explicit plugin selection
When multiple plugins can handle a target, pin a specific one with @:
uniconv video.mov "mp4@ffmpeg --height 720"
Stdin
Use - as the source to pipe data from stdin. The input format is auto-detected via libmagic:
echo "hello world" | uniconv - "translate | txt"
cat data.csv | uniconv - "json"
Use --input-format to override auto-detection when needed:
uniconv --input-format txt - "md"
Generators
Use - without piped data to run a generator plugin that produces output from scratch:
uniconv - "random-noise --width 512 | png"
Presets
Save and reuse pipelines:
# Save a preset
uniconv preset create web-ready "tee | jpg --quality 80, webp --quality 75, png"
# Use it
uniconv --preset web-ready photo.heic
# List presets
uniconv preset list