Remove metadata from images and videos recursively
Project description
assets-metadata-remover
Command-line tool that removes metadata from images and videos recursively, generating clean copies in an output folder that mirrors the original structure. Original files are never modified.
Installation
With pipx (recommended)
pipx install assets-metadata-remover
With pip
pip install assets-metadata-remover
System dependencies
- ffmpeg — required for video processing
- exiftool — required for image processing
Install with Homebrew:
brew install ffmpeg exiftool
If a tool is missing, the script detects it at startup and processes only the files it can, showing a clear warning.
Basic usage
assets-metadata-remover /path/to/your_files
This creates /path/to/your_files_clean/ with the same folder structure and metadata-free files.
Options
usage: assets-metadata-remover [-h] [-o OUTPUT] [--dry-run] [-v] [--verify] input
positional:
input Directory (or file) to process
options:
-o, --output DIR Output directory (default: <input>_clean)
--dry-run Simulate without writing
-v, --verbose Per-file logging
--verify Re-inspect copies and report residual metadata
Examples
Process a directory with custom output:
assets-metadata-remover ~/Photos -o ~/Photos_clean
Simulate without writing (dry run):
assets-metadata-remover ~/Photos --dry-run
Verbose mode with cleanup verification:
assets-metadata-remover ~/Photos -v --verify
Process a single file:
assets-metadata-remover ~/photo.jpg -o ~/clean/
Safety
Original files are never modified. The script always writes to a separate output folder.
Supported formats
Images: JPG, JPEG, PNG, TIFF, TIF, WebP, HEIC, HEIF, GIF, BMP
Videos: MP4, MOV, MKV, AVI, M4V, WebM, WMV, FLV, 3GP
Extension comparison is case-insensitive (.JPG and .jpg are equivalent).
Limitations
- Videos are copied without re-encoding (
-c copy), which is fast and lossless, but some exotic formats may not be compatible with the output container. - Some metadata embedded in proprietary formats may not be fully removed by
exiftool. - Directory symlinks are not followed to avoid loops.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file assets_metadata_remover-1.0.0.tar.gz.
File metadata
- Download URL: assets_metadata_remover-1.0.0.tar.gz
- Upload date:
- Size: 11.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18c886555d055c5226afb5bfdde012d780c49f5cab3c11a6bda6e66c0c451321
|
|
| MD5 |
ae7738f30a07b283f8d74bf87c400f8b
|
|
| BLAKE2b-256 |
b074ddce4d1374527787fb1dc644be4c66282e9c244279f9e93545ea9f900421
|
File details
Details for the file assets_metadata_remover-1.0.0-py3-none-any.whl.
File metadata
- Download URL: assets_metadata_remover-1.0.0-py3-none-any.whl
- Upload date:
- Size: 5.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dd5853685faa264ae9ea4c7d949d062ed99a0eaabb63a4ddb3c5e66408c3b077
|
|
| MD5 |
eb46f0f178709d3bf2e6ec0bf15ff976
|
|
| BLAKE2b-256 |
258e911a9d059db2be431bf34176fcf1954d73df80183243f41b905e2b10dd2f
|