QTGMC nightmare
Warning impatient video nerd crap ahead:
This has been pissing me off for 2 or 3 days by now, so I'm writing about it now, to share the fucking dreadful experience with y'all.
The starting point in this great endeavor of suffering was discovering that in classic TV fuckery fashion the extra video on one blu-ray rip I definitely ripped myself and did not spend 2 days of my life downloading off the internet archive, was in 1080i29.97 (essentially a poor man's 1080p59.94). What I did not expect is to spend 2 fucking days of my life trying to get a deinterlacer to work.
Step one was easy, putting the directory structure back together and figuring out which of the files should I drag into MKVToolNix to extract the extra track with full info (for anyone needing that info it's "MovieObject.bdmv"), mkv created, cool, mediainfo and fuck it's interlaced. Well, I remember back when I used Windows on my main PC that staxrip used something called QTGMC to deinterlace video.
A quick round of about an hour of googling later showed that there's no easy tool to do it on a mac, so onto my Linux machine I go. "paru -Ss qtgmc" shown a package, promising enough, aannnnnd welcome to dependency hell as some package is straight up missing from the AUR. Cool, I just edit that out, install the rest manually, and ... signature mismatch ... on a AviSynth file. Skipped, cool, now it installs. One issue, I have no clue how to do anything in a frameserver.
A quick round of scouring through wikis and the arch BBS later, I've found a supposedly working vapoursynth script, and disappointment in form of finding out that there's no way in hell I'm getting the AviSynth version working, since it depends on a library that is Windows-only (or at least developed using Visual Studio). Script saved, command ran, and havsfunc doesn't have QTGMC despite the script having it, as it was removed in version 34. Fucking hell. Additionally staxrip refused to start under wine.
Day 2 - absolutely no work on it because of personal reasons.
Day 3 - PC: actual stationary PC with decent (for a PC that's already 6 years old) specs running arch, btw. I did the unthinkable and installed Windows (10, fuck 11), in a VM of course with a fitting username I stole from one twitter user ("Pierre d'Oleesh"), and long story short after fucking around with 4 different versions of staxrip and a dependency walker I found out that VMWare Workstation 25H2 doesn't give any OpenCL.dll that one of the dependencies of QTGMC needs. And that means only one thing, rm -rf /mnt/hdd/vm/Windows\ 10
Fast forward to about 30mins ago I finally have a working vapoursynth script however I still haven't figured out all the switches to set to make it behave like QTGMC preset very slow. At least it shows a 59.9401FPS video when piped into mpv. TL;DR: install all the QTGMC dependencies and vapoursynth-plugin-vsjetpack (it's the aur package name, on other distros IDK, on mac it seems you're out of luck), and here's the script:
!/usr/bin/env python3 . import os import sys Based on https://aur.archlinux.org/cgit/aur.git/tree/qtgmc.vpy?h=qtgmc from vapoursynth import core import havsfunc import vsdeinterlace VapourSynth Settings core.num_threads = int(16) video = core.ffms2.Source("input.mkv") video = vsdeinterlace.qtgmc.QTempGaussMC(clip=video, input_type=float(0)), tff=os.getenv("QTGMC_TFF", "True")=="True", #preset=os.getenv("QTGMC_PRESET", "very slow"), ).deinterlace() video.set_output()
All of this just to maybe have a decent VVC encode of this.














