dit-mate
dit-mate is a toolkit for Digital Imaging Technicians and Media Managers, fully cross-platform. It contains the following tools:
-
basicmetalists the essential metadata that needs to be consistent across all cameras in a given shooting day: frame rate, resolution and recorded date. It integrates Media-Info and ExifTool to support all professional camera acquisition formats (MXF, MOV, MP4, R3D, and BWF WAV audio), as well as some extra video containers (MKV, AVI, M4V, MTS, FLV, WebM). -
mkdaycreates a user-defined folder structure in the volumes provided, a time-saver at the beginning of each shooting day. -
lifsaveraddresses a macOS bug on LIFS (Live Image File System) which prevents multiple cards from mounting when they have the name "Untitled". Run it to force mount any card that is found. Please note that whereas this utility has been fully tested, you should use it as your own risk and only if you are confident using terminal commands. -
mrltakes a directory with camera rolls and copies to the clipboard the values you need to paste in your Master Rushes Log: first and last clip name, clip count, size and duration. It requires FFmpeg, and it handles clips split across multiple files correctly (like RED .R3D and GoPros). -
xpandrolluses an editable dictionary (.TSV) to rename camera rolls in multiple directories. Useful in combination with ShotPut Pro when roll names need to have longer names that the volume admits
🚀 Installation
- Install prerequisites (Media-Info, ExifTool, FFmpeg) and uv from the official installers, or:
- macOS:
brew install media-info exiftool ffmpeg uv - Windows:
winget install MediaArea.MediaInfo OliverBetz.ExifTool Gyan.FFmpeg astral-sh.uv - Linux (Debian):
apt-get install mediainfo libimage-exiftool-perl ffmpeg uv
- Install the toolkit:
uv tool install dit-mate
- Test the installation (if the command is not recognised try
uv tool update-shelland restart your terminal):
basicmeta --version; mkday --version; lifsaver --version; mrl --version; xpandroll --version
📖 Usage examples
Check the essential metadata of multiple camera rolls:
basicmeta "path/to/rushes/"
basicmeta # scans the current directory
Make the folder structure for shooting day 1, using the preset "example", on two backup drives:
mkday -p example_preset -d 1 "path/to/drive1" "path/to/drive2"
Copy the values you need for your Master Rushes Log:
mrl "path/to/camera/roll" # copy default values
mrl "path/to/camera/roll" -cs # copy only clip count and size (in that order)
mrl "path/to/rushes/" # auto-detects multiple rolls
mrl # scans the current directory
Force mount "Untitled" cards (on macOS only):
lifsaver
Run any tool with --help to see the full list of options.
⚠️ Disclaimer
The lifsaver utility deliberately circumvents standard macOS Disk Arbitration and LIFS (Live Image File System) protections to force-mount stalled volumes. The author assumes no liability for lost or corrupted data, or hardware failures of any kind.
🧪 Feedback & Contributing
If this tool fails to parse metadata from your specific camera files, or if you have ideas for improvement, please fork the repository and submit a pull request, or open an issue with a sample of the problematic metadata output. Help me make this tool more robust for the DIT community!
Release files for dit-mate 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dit_mate-0.1.0.tar.gz | 69.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dit_mate-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 138.3 kB
Release files / dit_mate-0.1.0.tar.gz
| Download URL | dit_mate-0.1.0.tar.gz |
|---|---|
| Size | 69.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9f21999b67baae20f6e8c88bd9e913d2ef9a23e858ac0a014eae590d59ef7281
|
|
BLAKE2b-256 checksum How to use checksums |
56accfc1c935972ec9a151771530e5ef60a768ced4519707709129e9621d9a8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / dit_mate-0.1.0-py3-none-any.whl
| Download URL | dit_mate-0.1.0-py3-none-any.whl |
|---|---|
| Size | 68.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
799657e9c9fccc7b0ac25d7e1f545b3f8b0b074b3d66b2ada9924c2b117e78e9
|
|
BLAKE2b-256 checksum How to use checksums |
df0a6e23b54ba0a031dffb5123d65cd38af97da7e5505418b8505ecf52123d70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|