Tools for parsing QuickTime container files.
The entry point for the script is qtparse/__main__.py.
Breakdown of files:
qtparse/qt_atoms.py- functions for extracting the tree of atoms from a file, the user would most likely useread_atomsto read all atoms;qtparse/atom_parsers.py- dataclasses for interpreting the payloads of several specific atoms needed for completing the task;qtparse/extract_metadata.py- contains the logic that uses the above two files to extract the relevant atoms and infer the size of the video and the sample rate of the audio track;
At least Python 3.7 is required.
python3 -m qtparse test_content/Clouds.movThis will print all atoms recognized by the tool:
python3 -m qtparse test_content/Clouds.mov --print-all-atomspip install pyinstaller
pyinstaller --onefile --name qtparse qtparse/__main__.pyThe executable will be put in the dist subfolder.