I’ve recently started digitizing my mother-in-law’s collection of home movies. What I would love is some recommendations or tweaks I can do to improve the quality and remove any combing or minimize static. I am not particularly concerned with audio quality, but I’ll list it below as well.
And so far I’m enjoying the processes. It’s really fun to see old videos and to learn a bit about video formats and encoding. I’m an amateur when it comes to these kinds of things so I’m learning as I go along. Each tape I make the picture clearer and the file size smaller!
Recording
- Sony Handycam (DCR-TRV27)
- Various DV 60/90 cassette tapes
- Seemingly ran in standard recording mode (tapes are 60 minutes)
VCR
- Elgato USB Analog Video Capture Device
- Handycam’s VCR mode connected via S-Video Cable and 3.5mm audio jack*
* I have ordered a A/V to RCA cable which is the manufacturer’s recommended connection, but unsure about the effects on quality
Software
- OBS for recording the VCR feed
- Downscale Filter: Bicubic (Sharpened scaling, 16 samples)
- Deinterlace - Linear 2x
- 720x540 @ 29.97 FPS (NTSC) (upscaled from 720x480)
- “Indistinguishable Quality, Large File Size”
- .mkv format with H.264 encoder
- Audio Encoder AAC
- Audio 48khz steroe
- Handbrake for re-encoding
- 720x480 @ 29.97 FPS
- H.264 (x264) MKV format
- No additional deinterlacing
- “Constant Quality” set to 20
- Audio Encoder AAC
OK, followup to my last “PS”. Even though no one asked, but I’ve got some upvotes:
Here’s a short function I didn’t test extensively (can’t post the one I use, because that one’s specific to our work and is intertwined with more of our functions like checking a file’s extension and properties to automatically determine its field order and if it needs to be deinterlaced):
It worked in a few short tests, so it should be OK, but if anyone notices a problem, feel free to add to that:
function tff_for_all(clip c, string "fieldorder") { #Usage if source is TFF: tff_for_all("tff") | else if BFF or unknown (will assume BFF): tff_for_all() or tff_for_all("bff") fieldorder = default(fieldorder, "bff") c fieldorder == "bff" ? propSet("_FieldBased", 1).AssumeBFF().DoubleWeave().SelectOdd() : last propSet("_FieldBased", 2).AssumeTFF() }