Back to browse
GitHub Repository

Talk to MTP/PTP devices in pure Rust. No libmtp, no FFI, just async USB (uses nusb). Async streaming uploads/downloads, device events, two-level API for Android phones or raw camera access.

36 starsRust

mtp-rs – pure-Rust MTP library, up to 4x faster than libmtp

by vdavid·Mar 19, 2026·3 points·1 comment

AI Analysis

●●●BangerSolve My ProblemBig Brain

Pure-Rust MTP library beats libmtp 4x faster with no C dependencies.

Strengths
  • No libusb, no pkg-config, no build.rs surprises—cross-compiles anywhere Rust works
  • MIT/Apache-2.0 licensing vs libmtp's LGPL-1.1 enables commercial use without headaches
  • Async streaming with progress indication and device event listeners built in
Weaknesses
  • No MTPZ DRM support or pre-Android-5.0 device quirks—intentionally limited scope
  • Newer library means smaller ecosystem and less battle-testing than libmtp
Target Audience

Rust developers building USB device tools, file transfer applications

Similar To

libmtp · nusb · rusb

Similar Projects

OxiMedia – Pure Rust Reconstruction of FFmpeg and OpenCV

1.36M LOC pure Rust reimplementation—v0.1.0, APIs stabilized, perf unproven.

Bold BetWizardry
kitasan
11113mo ago