Upscaling old DVDs to 4K (SciFi & Star Trek)

Multiple VEAI passes is something I have been doing, and at times I will have two instances of TVEAI running doing two different upscales at the same time. I don’t know exactly why, I just know I seem to be better off using the SSD primarily than the main drives.

The H265 on PLEX is that there are very specific rules around what can direct play and what cannot and they have been slow to increase this compatibility. It means that if one aspect of the encode doesn’t match, the entire video will re-encode. Even if it just a mismatching audio stream.

My NAS server is a standalone Synology - and I spent a fair bit on it - but as soon as it starts transcoding H265 content it slows to a crawl. Obviously different people have different setups though ^^

Thank you for posting your settings! I look forward to testing them.

Wow, that is quite the workflow! Thank you for posting, I will definitely be trying some of it. I don’t have enough hard drive space to replicate exactly.

Thanks for all the input.

As member “virtutis” has pointed out (correctly): We will probably never have “one model/workflow” to “handle it all”. There are just too many variables … bad resolution/quality of objects/people in the background, color space (and conversion), compression artefacts … the list is lllooonnnggg …

And as for StaxRip and the faux interlacing: The progressive full repair mode tries to basically restore to full image information based on NNEDI3 interpolation, then I just set the assume fps to 23,976 fps to have the “original live action 23,976 from the NTSC”. I like that more than 25 FPS, it looks more “cinematic” to me; 25 sometimes reminds me a little of the soap opera effect (not too badly, but at times).

Also, I used to work with Artemis AAv9 a lot before and yes, it is the one model that can handle “most things”, but I found that the results tend to look like a “soft upsizing” of the original with minimal detail enhancement, so I favor a multi model approach now - I know, that comes with additional problems sometimes, but it’s the only way (in my book) to get “more” out of the source.

The only reason I was asking is the PAL DVD’s (at least Voyager seasons 1-3 and 7 which are the ones I have looked at so far) are actually 25fps progressive sources, not interlaced. They have only been phase shifted for broadcast so you end up with a temporal resolution of only 25 fields per second, not 50. Note that I have not tried the DS9 ones, so there is a chance it may be different.

I couldn’t exactly see how it was handling the interlacing in that script, but was going to mention that if you remove this, you are left with original 25fps in progressive frames without having to interpolate anything between frames and any attempt at deinterlacing will usually introduce artifacts due to the lack of temporal shift between the fields.

Having said that, the source was black magic boxed from the original mixed frame footage into the 25 “progressive” so the underlying frames have weirdness from time to time which is baked into the source. It was why I was “trying” to use the NTSC source now to at least get rid of that weirdness from the start.

I definitely don’t have an issue converting it to 23.976 ^^

Ok, sounds logical. As I have said before: Trek (DS9 and VOY in particular) are really messy (considering the DVD sources).

Hey guys, I thought I’d let you know that I am currently upscaling a 5-minute sample clip from the season 5 finale “A Call to Arms” to 4K.
I will share the results soon.

The reason: I wanted to give you a little comparison, considering that the later seasons of DS9 have better quality when it comes to the source DVDs. And that is not a phenomenon exclusively occuring with DS9 - many (older) TV-series improved there production values (like camera hardware, set design and so on) over the course of their run, so I thought I’d give you a little visual aid.

I think the 5-minute scene I have chosen is a pretty valid example, since it has all the things that could possibly challenge an AI-Upscaler: Different lighting (some bright, some dimmly lit, some dark, consistent and inconsistent light (like flashes or explosions)), slow and fast moving objects, real and artificial elements, live action and cgi/vfx, interior and exterior shots, big and small objects, close ups and things in the background … so that should really put things to the test.

Also, I was curious to see if my overly complicated workflow would also work there - for now the results look very promising. Can’t wait to share :wink:

Ok guys, here you have it, the upscaled space battle scene from the season 5 finale (Password on both links is DS9Up):

4K Videoclip:

Comparison Shots/Images (DVD on the left, upscale on the right side):

So, why encode to mp4 to just input right back into VEAI? You could output to tiff or png which would avoid any aberrations the mp4 encoding causes.

1 Like

Because Topaz VEAI has massive issues importing over 10.000 images - the pilot alone has about 133.000, so that’s my only option so far.

You could use ffmpeg to convert the image stream to a lossless file to feed back in to veai. Adds another step, of course, but it would be a fast one. Something like

ffmpeg -framerate "24000/1001" -i "image-dir/%06d.png" -c:v huffyuv "outfile.mkv"

huffyuv is a lossless codec. A regular episode is about 33 gig. I’m not using multiple veai passes, but I use ffmpeg as my vehicle for running avisynth and use huffyuv as a target for that step.

It’s too bad that veai doesn’t just let us enter some ffmpeg options as an alternative to choosing one of the very limited built in ways to encode the output. Unless they build an incredibly complex gui, it will never be flexible enough to be useful for everyone.

1 Like

Oh, I didn’t know you had issues with importing that many images. I’m lucky, I guess as it works fine for me. VEAI goes unresponsive for a minute or so, then works normally.

Ok, now that the new beta is out, I shall try again, just wanted to finish one thing before jumping into the next.

All of my files are on a ssd, which may also make a difference.

Just a note on the import of images - image import is almost all I have done with Topaz for about 6x months now - I can’t remember the last time I imported an actual video file into Topaz. It has no issues at all with large quantities of images files - the first episode, double length at 59fps when I tried had over 300k images imported.

I also use an SSD as per @steelfatboy which may make a difference as I have noticed if I don’t, I have a lot of issues in the process as a whole. Now most of the time though, I use AVS files instead as the recent versions allow direct import - makes it a lot quicker usually then exporting as images. I did , however, just this morning finish an import of 65k images for an Artemis upscale in the new Beta to test and that ran at something like 0.15s per frame which was impressive.

The examples make me want to play around with the DS9 upscale but I have so much time invested in Voyager I want to finish it first >.<, like that is going to happen anytime soon…

On that subject, just for the completely opposite end of the spectrum from what @CodeGrey is doing, I made a small personal breakthrough last night with processing speed for where I am happy with it.

This script, exported to images (about an hour) then Topaz current Beta with Artemis V12 Medium upscale (about 2-3 hours) puts a total processing time at under 4x hours per episode and I am liking the results (subjective of course). Also only at 1080p still, not 4K that @CodeGrey is doing.

D2VSource("D:\Video\Voyager\S01E13 Demuxed\VTS_03_1.d2v").ConvertToYV12()

fft3dfilter(sigma=3,sigma2=3,sigma3=12,sigma4=3,bt=3,plane=2)

chroma = last.checkmate(thr=12,max=25,tthr2=25)
luma   = last.checkmate(thr=12,max=25,tthr2=0)
fixed  = luma.MergeChroma(chroma)

tfm(d2v = "D:\Video\Voyager\S01E13 Demuxed\VTS_03_1.d2v")
tdecimate(hybrid = 1, mode = 1) 

santiag()

QTGMC(preset="slow", inputtype = 1, Sharpness=0.4, matchpreset="slow", matchpreset2="slow", sourcematch=3, TR2=3, EdiThreads=2, border=true)

Spline16Resize(640,480)

Obviously its not perfect, I don’t think it will be for a long time somehow, but it works for me with short upscale times (so I can at least get quite a few done) and is very watchable with hopefully not noticing too much in the way of video artifacts on the TV. It “might” also work as a jumping off point if someone can improve on them.

link Dropbox - File Deleted

I do still enjoy seeing the DS9 progress ^^. Something to look forward to when I stop looking at Voyager :rofl:

Looks pretty good. Solid work, not to mention a lot less time consuming.

I will soon upload another sample, done with an adjusted workflow that includes working from uncompressed tiff-images exclusively (I managed to get my hands on an external ssd to make it work), so that should take care of banding and 8-bit issues in color space (hopefully).
My goal here is to avoid using a deband filter later on to preserve as much image quality as possible.

I think I will be able to upload by this weekend. Stay tuned.

Is there a reason to believe that TIFF16 will produce any different results than PNG or TIFF8, given that everything in the pipeline is 8 bit? Do we believe that VEIA uses 16-bit processing internally?

I started out with 16 bit tiff and couldn’t tell any difference so I ended up switching to PNG. I have plenty of HDD space, so I’d gladly switch back if there’s some practical reason to do so.

I just thought there could (or at least potentially) be problems, because my StaxRip Filtering renders out in 10-bit (the source being 8 bit), then when I used mp4 at 0 compression in Topaz, the resulting file has 8 bit again (confirmed through media info), but the final topaz step in my chain exports to 16 bit tiff uncompressed and da vinci resolve then encodes as 10-bit h265.

I noticed banding issues in my workflow before, I thought it might have to do with the chain being 8-bit to 10-bit (Staxrip), then back to 8-bit, only to be finally 16bit tiff and down to 10-bit in DaVinci.
Someone suggested to me that I might get better results with the chain being 8-bit to 10 bit, then using topaz with 16 bit tiff uncompressed only, which is then being encoded in DaVinci as 10-bit.

I will see if that works, because it could actually make a difference, especially with old DVDs, I have several examples where banding becomes really annoying on a bigger screen.

I thought DVD is 8 bit only?