Skip to content

CLI reference

This reference is generated from the same argparse tree used by the installed command.

pyffmpegcore

usage: pyffmpegcore [-h] [--verbose | --quiet] [--force] [--dry-run | --explain] [--plan-json]
       [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}] [--receipt
       FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH] [--version]
       COMMAND ...

PyFFmpegCore CLI. A task-focused terminal interface for the verified media workflows in this
repository.

positional arguments:
  COMMAND
    doctor              Show FFmpeg, FFprobe, and environment diagnostics.
    smoke-test          Generate local synthetic media and verify a complete workflow.
    completion          Print a shell completion script for bash, zsh, or PowerShell.
    profile             List, explain, or validate versioned workflow profiles.
    batch               Validate, preview, or run a bounded resumable mixed-media batch.
    pipeline            Validate, visualize, migrate, or run a typed declarative media pipeline.
    receipt             Validate a run receipt or build a private bug-report bundle.
    probe               Inspect a media file and print simplified metadata.
    convert             Convert a media file into a new format.
    compress            Compress a video file with CRF or target-size settings.
    extract-audio       Extract the audio stream from a media file.
    thumbnail           Extract a thumbnail image from a video file.
    waveform            Generate a waveform image from audio or video-with-audio.
    speed               Change playback speed for video or audio media.
    concat              Join multiple video clips into one output.
    subtitles           Add, extract, or burn subtitle tracks.
    mix-audio           Mix, concatenate, mash up, or layer multiple audio sources.
    normalize-audio     Normalize or master an audio file.
    images              Batch-convert or optimize image directories.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --version             show program's version number and exit

Examples: pyffmpegcore doctor pyffmpegcore probe --input sample.mp4 --json pyffmpegcore convert
--input clip.webm --output clip.mp4 --video-codec libx264 --audio-codec aac pyffmpegcore compress
--input input.mp4 --output smaller.mp4 --crf 28 pyffmpegcore extract-audio --input video.mp4
--output soundtrack.mp3 pyffmpegcore subtitles burn --video input.mp4 --subtitle captions.srt
--output burned.mp4 pyffmpegcore completion bash Run `pyffmpegcore COMMAND --help` for
command-specific flags. See CLI_HELP.md for task-based copy-paste examples.

pyffmpegcore doctor

usage: pyffmpegcore doctor [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json]

Show FFmpeg, FFprobe, and environment diagnostics.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print the diagnostics as JSON.

pyffmpegcore smoke-test

usage: pyffmpegcore smoke-test [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--keep-dir KEEP_DIR] [--json]

Generate a tiny local media file, extract a thumbnail, probe both artifacts, and clean up unless
--keep-dir is provided.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --keep-dir KEEP_DIR   Keep generated artifacts in this directory instead of using a temporary
  directory.
  --json                Print the smoke-test result as JSON.

pyffmpegcore completion

usage: pyffmpegcore completion [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       {bash,zsh,powershell}

Print a shell completion script for bash, zsh, or PowerShell.

positional arguments:
  {bash,zsh,powershell}
                        Shell name to generate completion for.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore profile

usage: pyffmpegcore profile [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       COMMAND ...

Inspect built-in profiles or validate a strict local JSON/TOML profile.

positional arguments:
  COMMAND
    list                List built-in workflow profiles.
    show                Explain one built-in profile.
    validate            Validate a local versioned JSON or TOML profile.
    run                 Execute a maintained built-in profile through the shared workflow engine.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore profile list

usage: pyffmpegcore profile list [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json]

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print profiles as JSON.

pyffmpegcore profile show

usage: pyffmpegcore profile show [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json] name

positional arguments:
  name                  Profile name, for example web/mp4-compatible.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print the profile as JSON.

pyffmpegcore profile validate

usage: pyffmpegcore profile validate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json] path

positional arguments:
  path                  Path to a .json or .toml profile.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print the validated profile as JSON.

pyffmpegcore profile run

usage: pyffmpegcore profile run [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--subtitle SUBTITLE] name

positional arguments:
  name                  Built-in profile name.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Input media path.
  --output OUTPUT       Output media path.
  --subtitle SUBTITLE   External subtitle path required by subtitles/accessibility.

pyffmpegcore batch

usage: pyffmpegcore batch [-h] [--verbose | --quiet] [--force] [--dry-run | --explain] [--plan-json]
       [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}] [--receipt
       FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH] COMMAND ...

Run versioned JSON manifests whose jobs use maintained workflow profiles.

positional arguments:
  COMMAND
    validate            Strictly validate and compile a batch manifest without writing media.
    run                 Execute a batch with bounded concurrency, JSONL events, receipts, and
    optional resume.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore batch validate

usage: pyffmpegcore batch validate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json] manifest

positional arguments:
  manifest              Versioned batch JSON manifest.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print compiled validation facts as JSON.

pyffmpegcore batch run

usage: pyffmpegcore batch run [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--state STATE] [--resume] [--events EVENTS] [--receipt-dir RECEIPT_DIR] [--max-workers
       MAX_WORKERS] [--max-retries MAX_RETRIES] [--max-input-size MAX_INPUT_SIZE] manifest

positional arguments:
  manifest              Versioned batch JSON manifest.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --state STATE         Atomic resume-state JSON path.
  --resume              Skip jobs whose signature and completed output match --state.
  --events EVENTS       Write privacy-redacted progress events as JSON Lines.
  --receipt-dir RECEIPT_DIR
                        Write one privacy-redacted receipt per executed job.
  --max-workers MAX_WORKERS
                        Override the manifest concurrency limit (1-32).
  --max-retries MAX_RETRIES
                        Override classified transient retries (0-10).
  --max-input-size MAX_INPUT_SIZE
                        Override the largest permitted local input, for example 2GiB.

pyffmpegcore pipeline

usage: pyffmpegcore pipeline [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       COMMAND ...

Compose supported typed workflows as a versioned JSON or TOML dependency graph.

positional arguments:
  COMMAND
    validate            Strictly validate and compile a pipeline without writing media.
    graph               Render pipeline dependencies without probing or executing media.
    migrate             Validate and migrate a pipeline to a supported schema version.
    run                 Preflight and execute a typed pipeline with resume, cache, events, and
    receipts.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore pipeline validate

usage: pyffmpegcore pipeline validate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--var ENV_NAME] [--json] pipeline

positional arguments:
  pipeline              Versioned .json or .toml pipeline.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --var ENV_NAME        Read one declared variable from the environment; repeat as needed.
  --json                Print the compiled pipeline as JSON.

pyffmpegcore pipeline graph

usage: pyffmpegcore pipeline graph [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--var ENV_NAME] [--format {text,mermaid,dot}] pipeline

positional arguments:
  pipeline              Versioned .json or .toml pipeline.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --var ENV_NAME        Read one declared variable from the environment; repeat as needed.
  --format {text,mermaid,dot}
                        Dependency graph format. Defaults to text.

pyffmpegcore pipeline migrate

usage: pyffmpegcore pipeline migrate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--to TO] input output

positional arguments:
  input                 Source pipeline JSON or TOML.
  output                Canonical migrated JSON output.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --to TO               Target schema version. Defaults to 1.0.

pyffmpegcore pipeline run

usage: pyffmpegcore pipeline run [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--var ENV_NAME] [--state STATE] [--resume] [--events EVENTS] [--receipt-dir RECEIPT_DIR]
       [--cache | --no-cache] pipeline

positional arguments:
  pipeline              Versioned .json or .toml pipeline.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --var ENV_NAME        Read one declared variable from the environment; repeat as needed.
  --state STATE         Atomic pipeline resume-state JSON path.
  --resume              Resume steps matching state and outputs.
  --events EVENTS       Write privacy-redacted pipeline events as JSON Lines.
  --receipt-dir RECEIPT_DIR
                        Write one redacted receipt per executed step.
  --cache               Enable completion caching.
  --no-cache            Disable completion caching.

pyffmpegcore receipt

usage: pyffmpegcore receipt [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       COMMAND ...

Validate a run receipt or build a private bug-report bundle.

positional arguments:
  COMMAND
    validate            Validate a versioned receipt without accessing its media.
    bug-report          Combine a redacted receipt with current doctor facts.
    migrate             Validate, redact again, and canonicalize a receipt schema.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore receipt validate

usage: pyffmpegcore receipt validate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--json] path

positional arguments:
  path                  Path to a receipt JSON file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --json                Print validation facts as JSON.

pyffmpegcore receipt bug-report

usage: pyffmpegcore receipt bug-report [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--output OUTPUT] path

positional arguments:
  path                  Path to a validated receipt JSON file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --output OUTPUT       Write the JSON bundle instead of stdout.

pyffmpegcore receipt migrate

usage: pyffmpegcore receipt migrate [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       [--output OUTPUT] [--target-version TARGET_VERSION] path

positional arguments:
  path                  Path to the source receipt JSON file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --output OUTPUT       Write the canonical receipt instead of stdout.
  --target-version TARGET_VERSION
                        Target receipt schema. Defaults to 1.0.

pyffmpegcore probe

usage: pyffmpegcore probe [-h] [--verbose | --quiet] [--force] [--dry-run | --explain] [--plan-json]
       [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}] [--receipt
       FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH] --input
       INPUT [--json]

Inspect a media file and print simplified metadata.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the media file to inspect.
  --json                Print simplified metadata as JSON.

pyffmpegcore convert

usage: pyffmpegcore convert [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--audio-only] [--preserve-all-streams] [--video-codec
       VIDEO_CODEC] [--audio-codec AUDIO_CODEC] [--video-bitrate VIDEO_BITRATE] [--audio-bitrate
       AUDIO_BITRATE] [--pix-fmt PIX_FMT] [--threads THREADS] [--hwaccel HWACCEL]

Convert a media file into a new format.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input media file.
  --output OUTPUT       Path to the converted output file.
  --audio-only          Drop video and keep only the audio stream.
  --preserve-all-streams
                        Map and stream-copy every input track, attachment, and data stream without
                        re-encoding; the output container must support them.
  --video-codec VIDEO_CODEC
                        Video codec to use, for example libx264.
  --audio-codec AUDIO_CODEC
                        Audio codec to use, for example aac.
  --video-bitrate VIDEO_BITRATE
                        Video bitrate, for example 2500k.
  --audio-bitrate AUDIO_BITRATE
                        Audio bitrate, for example 192k.
  --pix-fmt PIX_FMT     Pixel format for video output, for example yuv420p.
  --threads THREADS     Number of FFmpeg worker threads to use.
  --hwaccel HWACCEL     Optional FFmpeg hardware-acceleration method; failures do not silently fall
  back.

pyffmpegcore compress

usage: pyffmpegcore compress [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--crf CRF] [--target-size-kb TARGET_SIZE_KB | --target-size
       TARGET_SIZE] [--two-pass | --single-pass] [--video-codec VIDEO_CODEC] [--audio-codec
       AUDIO_CODEC] [--video-bitrate VIDEO_BITRATE] [--audio-bitrate AUDIO_BITRATE] [--preset
       PRESET] [--threads THREADS] [--min-video-bitrate MIN_VIDEO_BITRATE]
       [--container-overhead-percent CONTAINER_OVERHEAD_PERCENT]

Compress a video file with CRF or target-size settings.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input video file.
  --output OUTPUT       Path to the compressed output file.
  --crf CRF             CRF quality level for single-pass compression. Defaults to 23.
  --target-size-kb TARGET_SIZE_KB
                        Target output size in kilobytes for two-pass compression.
  --target-size TARGET_SIZE
                        Target output size with an explicit unit, for example 25MB or 25MiB.
  --two-pass            Force two-pass compression when target size is set.
  --single-pass         Use single-pass compression even when a target size is set.
  --video-codec VIDEO_CODEC
                        Video codec to use, for example libx264.
  --audio-codec AUDIO_CODEC
                        Audio codec to use, for example aac.
  --video-bitrate VIDEO_BITRATE
                        Video bitrate override, for example 1500k.
  --audio-bitrate AUDIO_BITRATE
                        Audio bitrate override, for example 128k.
  --preset PRESET       Encoding preset, for example medium or fast.
  --threads THREADS     Number of FFmpeg worker threads to use.
  --min-video-bitrate MIN_VIDEO_BITRATE
                        Two-pass quality floor in bits/s, for example 100k. Defaults to 100k.
  --container-overhead-percent CONTAINER_OVERHEAD_PERCENT
                        Reserved target-size percentage for container overhead. Defaults to 5.0.

pyffmpegcore extract-audio

usage: pyffmpegcore extract-audio [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--audio-codec AUDIO_CODEC] [--audio-bitrate AUDIO_BITRATE]
       [--sample-rate SAMPLE_RATE] [--channels CHANNELS] [--threads THREADS]

Extract the audio stream from a media file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input media file.
  --output OUTPUT       Path to the audio output file.
  --audio-codec AUDIO_CODEC
                        Audio codec override, for example libmp3lame or pcm_s16le.
  --audio-bitrate AUDIO_BITRATE
                        Audio bitrate override, for example 192k.
  --sample-rate SAMPLE_RATE
                        Sample rate override in Hz.
  --channels CHANNELS   Channel count override.
  --threads THREADS     Number of FFmpeg worker threads to use.

pyffmpegcore thumbnail

usage: pyffmpegcore thumbnail [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--timestamp TIMESTAMP] [--width WIDTH] [--height HEIGHT]
       [--quality QUALITY]

Extract a thumbnail image from a video file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input video file.
  --output OUTPUT       Path to the thumbnail image output.
  --timestamp TIMESTAMP
                        Timestamp in HH:MM:SS or HH:MM:SS.ms format. Defaults to 00:00:01.
  --width WIDTH         Thumbnail width in pixels. Defaults to 320.
  --height HEIGHT       Optional thumbnail height in pixels.
  --quality QUALITY     JPEG quality from 1 to 31. Lower is better quality. Defaults to 2.

pyffmpegcore waveform

usage: pyffmpegcore waveform [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--width WIDTH] [--height HEIGHT] [--colors COLORS]

Generate a waveform image from audio or video-with-audio.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input audio or video file.
  --output OUTPUT       Path to the waveform image output.
  --width WIDTH         Waveform width in pixels. Defaults to 800.
  --height HEIGHT       Waveform height in pixels. Defaults to 200.
  --colors COLORS       Waveform color definition. Defaults to white.

pyffmpegcore speed

usage: pyffmpegcore speed [-h] [--verbose | --quiet] [--force] [--dry-run | --explain] [--plan-json]
       [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}] [--receipt
       FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       SPEED_COMMAND ...

Change playback speed for video or audio media.

positional arguments:
  SPEED_COMMAND
    video               Change playback speed for a video file.
    audio               Change playback speed for an audio file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore speed video

usage: pyffmpegcore speed video [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT --factor FACTOR [--no-pitch-preserve]

Change playback speed for a video file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input video file.
  --output OUTPUT       Path to the output video file.
  --factor FACTOR       Playback speed factor, for example 1.5 or 0.5.
  --no-pitch-preserve   Do not preserve audio pitch when changing playback speed.

pyffmpegcore speed audio

usage: pyffmpegcore speed audio [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT --factor FACTOR [--no-pitch-preserve]

Change playback speed for an audio file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Path to the input audio file.
  --output OUTPUT       Path to the output audio file.
  --factor FACTOR       Playback speed factor, for example 1.25 or 0.8.
  --no-pitch-preserve   Do not preserve pitch when changing playback speed.

pyffmpegcore concat

usage: pyffmpegcore concat [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --inputs INPUTS [INPUTS ...] --output OUTPUT [--mode {copy,reencode}] [--video-codec
       VIDEO_CODEC] [--audio-codec AUDIO_CODEC]

Join multiple video clips into one output.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --inputs INPUTS [INPUTS ...]
                        Input clip paths in the order they should appear in the output.
  --output OUTPUT       Path to the concatenated output video.
  --mode {copy,reencode}
                        Use fast stream-copy concat or a safer re-encode path. Defaults to copy.
  --video-codec VIDEO_CODEC
                        Video codec for re-encode mode. Defaults to libx264.
  --audio-codec AUDIO_CODEC
                        Audio codec for re-encode mode. Defaults to aac.

pyffmpegcore subtitles

usage: pyffmpegcore subtitles [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       SUBTITLES_COMMAND ...

Add, extract, or burn subtitle tracks.

positional arguments:
  SUBTITLES_COMMAND
    add                 Add an external subtitle file as a selectable track.
    extract             Extract a subtitle stream from a video file.
    burn                Burn subtitle text permanently into the video image.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore subtitles add

usage: pyffmpegcore subtitles add [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --video VIDEO --subtitle SUBTITLE --output OUTPUT [--language LANGUAGE]

Add an external subtitle file as a selectable track.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --video VIDEO         Path to the input video file.
  --subtitle SUBTITLE   Path to the subtitle file.
  --output OUTPUT       Path to the output video file.
  --language LANGUAGE   Subtitle language code. Defaults to eng.

pyffmpegcore subtitles extract

usage: pyffmpegcore subtitles extract [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --video VIDEO --output OUTPUT [--stream-index STREAM_INDEX]

Extract a subtitle stream from a video file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --video VIDEO         Path to the input video file.
  --output OUTPUT       Path to the extracted subtitle file.
  --stream-index STREAM_INDEX
                        Zero-based subtitle stream index. Defaults to 0.

pyffmpegcore subtitles burn

usage: pyffmpegcore subtitles burn [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --video VIDEO --subtitle SUBTITLE --output OUTPUT [--font-size FONT_SIZE] [--font-color
       FONT_COLOR]

Burn subtitle text permanently into the video image.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --video VIDEO         Path to the input video file.
  --subtitle SUBTITLE   Path to the subtitle file.
  --output OUTPUT       Path to the output video file.
  --font-size FONT_SIZE
                        Subtitle font size. Defaults to 24.
  --font-color FONT_COLOR
                        ASS/FFmpeg subtitle color value. Defaults to &HFFFFFF.

pyffmpegcore mix-audio

usage: pyffmpegcore mix-audio [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       MIX_AUDIO_COMMAND ...

Mix, concatenate, mash up, or layer multiple audio sources.

positional arguments:
  MIX_AUDIO_COMMAND
    mix                 Mix multiple audio sources together.
    concat              Concatenate audio files one after another.
    mashup              Crossfade multiple audio files into a mashup.
    background          Layer background music under a main audio track.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore mix-audio mix

usage: pyffmpegcore mix-audio mix [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --inputs INPUTS [INPUTS ...] --output OUTPUT [--volumes [VOLUMES ...]]

Mix multiple audio sources together.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --inputs INPUTS [INPUTS ...]
                        Audio input paths.
  --output OUTPUT       Mixed audio output path.
  --volumes [VOLUMES ...]
                        Optional per-input volume multipliers.

pyffmpegcore mix-audio concat

usage: pyffmpegcore mix-audio concat [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --inputs INPUTS [INPUTS ...] --output OUTPUT

Concatenate audio files one after another.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --inputs INPUTS [INPUTS ...]
                        Audio input paths.
  --output OUTPUT       Merged audio output path.

pyffmpegcore mix-audio mashup

usage: pyffmpegcore mix-audio mashup [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --inputs INPUTS [INPUTS ...] --output OUTPUT [--crossfade-duration CROSSFADE_DURATION]

Crossfade multiple audio files into a mashup.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --inputs INPUTS [INPUTS ...]
                        Audio input paths.
  --output OUTPUT       Mashup audio output path.
  --crossfade-duration CROSSFADE_DURATION
                        Crossfade duration in seconds. Defaults to 2.0.

pyffmpegcore mix-audio background

usage: pyffmpegcore mix-audio background [-h] [--verbose | --quiet] [--force] [--dry-run |
       --explain] [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files
       {clean,keep-on-error,keep}] [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH]
       [--ffprobe-path FFPROBE_PATH] --main-input MAIN_INPUT --background-input BACKGROUND_INPUT
       --output OUTPUT [--bg-volume BG_VOLUME]

Layer background music under a main audio track.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --main-input MAIN_INPUT
                        Main audio source.
  --background-input BACKGROUND_INPUT
                        Background audio source.
  --output OUTPUT       Mixed audio output path.
  --bg-volume BG_VOLUME
                        Background volume multiplier. Defaults to 0.3.

pyffmpegcore normalize-audio

usage: pyffmpegcore normalize-audio [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input INPUT --output OUTPUT [--method {loudnorm,master}] [--target-i TARGET_I] [--target-tp
       TARGET_TP] [--target-lra TARGET_LRA]

Normalize or master an audio file.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input INPUT         Input audio or video file.
  --output OUTPUT       Output audio file.
  --method {loudnorm,master}
                        Normalization method. Defaults to loudnorm.
  --target-i TARGET_I   Target integrated loudness in LUFS for loudnorm mode.
  --target-tp TARGET_TP
                        Target true peak in dBTP for loudnorm mode.
  --target-lra TARGET_LRA
                        Target loudness range in LU for loudnorm mode.

pyffmpegcore images

usage: pyffmpegcore images [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       IMAGES_COMMAND ...

Batch-convert or optimize image directories.

positional arguments:
  IMAGES_COMMAND
    convert             Convert a directory of images into another format.
    optimize            Resize and convert images into web-friendly JPEG outputs.
    webp                Convert a directory of images into WebP outputs.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.

pyffmpegcore images convert

usage: pyffmpegcore images convert [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input-dir INPUT_DIR --output-dir OUTPUT_DIR [--format FORMAT] [--quality QUALITY] [--resize
       WIDTH HEIGHT]

Convert a directory of images into another format.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input-dir INPUT_DIR
                        Directory containing input images.
  --output-dir OUTPUT_DIR
                        Directory for converted outputs.
  --format FORMAT       Output format such as jpg, png, or webp. Defaults to jpg.
  --quality QUALITY     Output quality from 1 to 100. Defaults to 85.
  --resize WIDTH HEIGHT
                        Optional resize dimensions applied to every output image.

pyffmpegcore images optimize

usage: pyffmpegcore images optimize [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input-dir INPUT_DIR --output-dir OUTPUT_DIR [--max-width MAX_WIDTH] [--max-height
       MAX_HEIGHT] [--quality QUALITY]

Resize and convert images into web-friendly JPEG outputs.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input-dir INPUT_DIR
                        Directory containing input images.
  --output-dir OUTPUT_DIR
                        Directory for optimized outputs.
  --max-width MAX_WIDTH
                        Maximum image width. Defaults to 1920.
  --max-height MAX_HEIGHT
                        Maximum image height. Defaults to 1080.
  --quality QUALITY     JPEG quality from 1 to 100. Defaults to 85.

pyffmpegcore images webp

usage: pyffmpegcore images webp [-h] [--verbose | --quiet] [--force] [--dry-run | --explain]
       [--plan-json] [--result-json] [--timeout SECONDS] [--temp-files {clean,keep-on-error,keep}]
       [--receipt FILE] [--hash-content] [--ffmpeg-path FFMPEG_PATH] [--ffprobe-path FFPROBE_PATH]
       --input-dir INPUT_DIR --output-dir OUTPUT_DIR [--quality QUALITY]

Convert a directory of images into WebP outputs.

options:
  -h, --help            show this help message and exit
  --verbose             Show more detailed command output.
  --quiet               Reduce command output to essentials.
  --force               Allow overwriting existing output files or directories.
  --dry-run             Preflight and print the exact plan without writing files.
  --explain             Explain streams, operations, trade-offs, and the exact plan without writing
  files.
  --plan-json           Print --dry-run or --explain as versioned JSON.
  --result-json         Print the writing command's versioned plan, preflight, and result as JSON.
  --timeout SECONDS     Stop a writing command after this positive number of seconds.
  --temp-files {clean,keep-on-error,keep}
                        Clean temporary files, retain them on error, or always retain them.
  --receipt FILE        Write a privacy-redacted versioned receipt for an executed media job.
  --hash-content        Opt in to SHA-256 input/output hashes in --receipt.
  --ffmpeg-path FFMPEG_PATH
                        Path to the ffmpeg executable. Defaults to ffmpeg.
  --ffprobe-path FFPROBE_PATH
                        Path to the ffprobe executable. Defaults to ffprobe.
  --input-dir INPUT_DIR
                        Directory containing input images.
  --output-dir OUTPUT_DIR
                        Directory for WebP outputs.
  --quality QUALITY     WebP quality from 1 to 100. Defaults to 80.