Skip to main content

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.

Commands

clean — Remove metadata

assets-metadata-remover clean /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 clean [-h] [-o OUTPUT] [--dry-run] [-v] [--verify] [--report] 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
  --report           Show table of metadata removed from each file

Examples

Process a directory with custom output:

assets-metadata-remover clean ~/Photos -o ~/Photos_clean

Simulate without writing (dry run):

assets-metadata-remover clean ~/Photos --dry-run

Verbose mode with cleanup verification:

assets-metadata-remover clean ~/Photos -v --verify

Show metadata removal report:

assets-metadata-remover clean ~/Photos --report

Process a single file:

assets-metadata-remover clean ~/photo.jpg -o ~/clean/

read — Display metadata

assets-metadata-remover read /path/to/your_files

Displays metadata from images and videos in a human-readable table format.

Options

usage: assets-metadata-remover read [-h] [--json] input

positional:
  input              Directory (or file) to inspect

options:
  --json             Output as JSON

Examples

Read metadata from a single file:

assets-metadata-remover read ~/photo.jpg

Read metadata from a directory:

assets-metadata-remover read ~/Photos

Output as JSON for programmatic use:

assets-metadata-remover read ~/Photos --json

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

assets_metadata_remover-1.3.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

assets_metadata_remover-1.3.0-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file assets_metadata_remover-1.3.0.tar.gz.

File metadata

  • Download URL: assets_metadata_remover-1.3.0.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for assets_metadata_remover-1.3.0.tar.gz
Algorithm Hash digest
SHA256 e577807c8ceb9324cfc4cead581498942e1b1d6a0a9b7eaff8331c78be7b2eea
MD5 48168b6acf3155dced2a3930328d5950
BLAKE2b-256 ffbb76565f2ff314128b13f0a1b23aa1f55b94f3a6d3f5acb0f34ff28f13080f

See more details on using hashes here.

File details

Details for the file assets_metadata_remover-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for assets_metadata_remover-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e004ef95b42df178b05e32caaa5ec230cca6e1fcc4ce6814bcc0d07a67630c1
MD5 db8d6a1b2e90787c540c858ed847a9fb
BLAKE2b-256 17fb982c1d444c5f3a2efa41a330a7f6712e8dd02e5b05d352bda139c249c6b2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page