#!/usr/bin/env python3 import os import shlex import subprocess import sys if __name__ == '__main__': ffmpeg_cli = ['ffmpeg'] + sys.argv[1:] if len(ffmpeg_cli) > 1: ffmpeg_ver = subprocess.run(['ffmpeg', '-version'], capture_output=True, text=True) ffmpeg_ver = ffmpeg_ver.stdout.splitlines()[0] ffmpeg_str = ' '.join(shlex.quote(arg) for arg in ffmpeg_cli) ffmpeg_cli[-1:-1] = [ '-metadata', f'FFMPEG_VER={ffmpeg_ver}', '-metadata', f'FFMPEG_CMD={ffmpeg_str}', ] out_path = ffmpeg_cli[-1] out_dir = os.path.dirname(out_path) if out_dir: os.makedirs(out_dir, exist_ok=True) result = subprocess.run(ffmpeg_cli) sys.exit(result.returncode)