/bin/sh doesn't exist on this system, sh is at /usr/bin/sh.
Use shutil.which to locate the shell at runtime.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
subprocess.Popen with executable= fails on linuxbrew due to symlink/execve
incompatibility. Use bash exec -a so ffmpeg is resolved via PATH instead.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Drop the setproctitle dependency. Use prctl(PR_SET_NAME) to change
/proc/self/comm and directly overwrite argv memory via Py_GetArgcArgv
to clear /proc/self/cmdline, so ps aux shows no arguments.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add -n/--process-name flag to set ffmpeg argv[0] alias (exec -a equivalent)
- Show real-time per-file progress via ffmpeg -progress pipe:1
- Use slot queue to manage per-worker tqdm bars (position 1..N)
- Add -pix_fmt yuv420p10le for 10-bit output
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>