This crate aims to provide a flexible and high-level interface to the libmtp
library, at
its current state is alpha software and may not be used in production since some features
are still missing, said this contributions are welcome.
You need to have libmtp
installed (minimum version 1.1.15), and have pkg-config
properly configured (pkg-config --libs libmtp
should output something reasonable).
- Internals API
- Device properties API
- Object management API
- Get properties/attributes
- Set properties/attributes
- Move, copy, delete object
- Get/send partial object
- Truncate object
- Storage API
- Format storage
- File management
- List files
- Send files
- Receive files
- Rename files
- Sample data
- Events
- Thumbnails
- Folder management
- List folders
- Create folder
- Rename folder
- Track management
- List tracks
- Send tracks
- Receive tracks
- Rename track
- Update metadata
- Album management
- List albums
- Create album
- Update album
- Rename album
- Playlist management
- List playlists
- Create playlist
- Update playlist
- Rename playlist
- Custom operations API (c_variadic)
libmtp-rs
is an open source project! If you'd like to contribute, check any
open issue or create one, current API design is open to discussion. Note that
the code you submit in PRs is assumed to be licensed under the MIT License.
This crate is licensed under the terms of the MIT License.
See LICENSE to see the full text.