ferraus media remux

Change the container without re-encoding (ffmpeg -c copy)

Synopsis

ferraus media remux <input> [options] [-o <output>]

What it does

Copies every stream into a new container chosen by the -o extension or --format (default .mkv). Nothing is re-encoded, so it is fast and lossless; it fails when the target container cannot hold a stream's codec.

Examples

MKV to MP4 without re-encoding

ferraus media remux recording.mkv -o recording.mp4

Transport stream to broadcast.media-remux.mkv

ferraus media remux broadcast.ts

MOV to MP4 chosen with --format; the output path comes back as JSON

ferraus media remux screen.mov --format mp4 --json

Global options

Every command also accepts the global options (-o, --json, --dry-run, --overwrite, --progress, ...). See Global options.

Exit codes

CodeMeaning
0Success
1Processing failed
2Usage or parameter error
3Input missing or unreadable
4Unsupported format or codec
8Cancelled
70Internal error (bug)

Common mistakes

  • Forgetting that outputs are never overwritten: pass --overwrite or a new -o path when re-running.

For models

  • MCP tool: ferraus_media_remux
  • Schema: ferraus schema media remux
  • Pipeline: { op: media remux, args: { ... } } (flag names with _ instead of -)
  • fx stage: no
{"command": "media remux", "defaults": {}}