Skip to content

CLI Reference

Salem874 edited this page Apr 3, 2026 · 1 revision

πŸ’» CLI Reference

Copyright Β© 2026 MWBM Partners Ltd. All rights reserved.

The CLI tool will be fully implemented in Phase 6. This is the planned command structure.

Usage

meedya-convert <command> [options]

Commands

encode β€” Convert Media Files

meedya-convert encode <input> [options]

# Examples
meedya-convert encode input.mkv --output output.mp4 --profile "Web Standard"
meedya-convert encode input.mkv --video-codec h265 --audio-codec aac --crf 22
meedya-convert encode input.wav --audio-codec flac --output output.flac

probe β€” Inspect Media Files

meedya-convert probe <input> [--json]

profile β€” Manage Encoding Profiles

meedya-convert profile list
meedya-convert profile show <name>
meedya-convert profile export <name> --output profile.json
meedya-convert profile import profile.json

manifest β€” Generate Streaming Manifests

meedya-convert manifest <input-dir> --format hls --output ./streaming/
meedya-convert manifest <input-dir> --format dash --output ./streaming/
meedya-convert manifest <input-dir> --format both --encrypt

validate β€” Validate Manifests

meedya-convert validate master.m3u8
meedya-convert validate stream.mpd

Global Options

Option Description
--help, -h Show help
--version, -v Show version
--verbose Verbose output
--quiet Suppress non-error output
--json JSON output (for scripting)
--log-file <path> Write logs to file

JSON Job Files

meedya-convert encode --job job.json
{
  "input": "source.mkv",
  "output": "output/",
  "profile": "Apple HLS",
  "streams": [
    { "type": "video", "index": 0, "codec": "h265", "crf": 22 },
    { "type": "audio", "index": 0, "codec": "aac", "bitrate": "128k" },
    { "type": "subtitle", "index": 0, "mode": "passthrough" }
  ]
}

Exit Codes

Code Meaning
0 Success
1 General error
2 Invalid arguments
3 Input file not found
4 Output write error
5 Encoding failed
6 FFmpeg not found