One binary. Zero dependencies. Any format. Convert any media file to any compatible format — ffmpeg is auto-downloaded, you never install it.
Zero-install ffmpeg, clipboard-first workflow, 109 conversion targets, and a 493 KB footprint.
On first run, nr downloads and caches ffmpeg automatically. You never install it yourself. Works on Windows, Linux, and macOS.
Select multiple files in Explorer, Ctrl+C, then nr --force mp4 converts every one. Supports FileDropList format.
Detects file type by magic bytes (not just extension) for 30+ formats including MP4, MKV, HEIC, AVIF, and more.
Image → video slideshow (5s), audio → video with blank frame, video → audio extraction. Any source, any target.
24 video containers, 23 audio extracts, 24 audio formats, 25 image formats, 7 slideshow targets, 6 blank-video targets.
Written in Rust with LTO, opt-level=z, panic=abort. No TUI framework, no arboard, no infer crate — just clap + anyhow.
One command does it all. No flags to memorize for common tasks.
# Interactive — clipboard file, pick format nr # Clipboard file directly to mp4 nr mp4 # Specific file, pick format interactively nr video.mov # Specific file + target format nr video.mov mkv # Batch all clipboard files to one format nr --force mp4 # Show all 109 supported conversion targets nr --list
# Extract audio from video nr video.mp4 mp3 # Image to video slideshow nr photo.jpg mp4 # Audio wrapped in video container nr song.mp3 mov # Lossless remux to MKV nr video.mov mkv # Best compression (VP9 + Opus) nr video.mp4 vp9 # Batch convert all images to WebP nr --force webp
Every major container, codec, and cross-type path. Variant formats like h265 → .mp4 shown with their real extension.
No package manager needed. Single binary, auto-downloads ffmpeg on first run.
iex "& { $(irm https://raw.githubusercontent.com/subhradeepsarkae-ai/noir/main/scripts/install.ps1) }"
curl -sSL https://raw.githubusercontent.com/subhradeepsarkae-ai/noir/main/scripts/install.sh | bash
cargo install --git https://github.com/subhradeepsarkae-ai/noir nr
No. nr auto-downloads ffmpeg on first run and caches it at %LOCALAPPDATA%\noir\ffmpeg\ (Windows) or ~/.cache/noir/ffmpeg/ (Linux/macOS). If ffmpeg is already on your PATH, it uses that instead.
On Windows, nr reads the FileDropList format (what Explorer uses when you Ctrl+C files). This means multi-select works — all selected files are captured. On Linux/macOS, it reads plain text clipboard paths.
Pass files directly: nr video.mov mp4. The first argument is auto-detected — if it exists on disk it's a file, if it's a known format name it reads the clipboard.
nr uses the gyan.dev ffmpeg build which includes: libx264, libx265, libvpx-vp9, libaom-av1, libmp3lame, libopus, libvorbis, libtheora, native AAC, AC3/E-AC-3, TrueHD, DNxHD, MJPEG, JPEG2000, and more.