I’ve been doing some de-junking at our house, and in this process discovered a box of Mini-DV tapes. I’ve owned two cameras that can write to these – an old Sony that shot in the original DV format, and a Cannon HV20 that shot in HDV. I’ve tried to archive these in the past, but due to the very high bitrate of DV/HDV and low storage capacity (at least 5-10 years ago), plus the computer power needed to convert to a better archival format, I just didn’t do it. These days, with several terrabytes of free space and ample processing power, it finally made sense to start compressing these.
My main machine is a Windows 10 PC, with an i5-4690. I used ffmpeg to convert the videos. I ran several tests using x264 and x265 at various bitrates to get results that were of sufficient quality without being too large, as well as several de-interlacers (Both cameras shot interlaced video). The HDV footage was a little more annoying, as the 1080p standard uses non-square (4:3) pixels (1440×1080 instead of 1920×1080). I know it would reduce the quality slightly, but I resampled to 1920×1080 to ensure the output would play back correctly on all of our current devices, including anything connected to our TV.
I ended up with two scripts:
REM This is MS Batch, as this was running on my Windows PC REM DV - the source is interlaced ffmpeg -i %1 -f mp4 -threads 4 -vf scale=iw*sar:ih -vf bwdif -vcodec h264 -preset veryslow -crf 24 -acodec aac -ac 2 -ab 128k %1-x264.mp4 ffmpeg -i %1 -f mp4 -threads 4 -vf scale=iw*sar:ih -vf bwdif -vcodec hevc -tag:v hvc1 -preset slower -crf 26 -acodec aac -ac 2 -ab 128k %1-x265.mp4
REM HDV ffmpeg -i %1 -f mp4 -threads 4 -vf bwdif -vcodec h264 -preset veryslow -crf 24 -acodec aac -ac 2 -ab 128k %1-x264.mp4 ffmpeg -i %1 -f mp4 -threads 4 -vf bwdif -vf scale=iw*sar:ih -vcodec libx265 -tag:v hvc1 -preset slow -crf 24 -acodec aac -ac 2 -ab 128k %1-x265.mp4
The resulting bitrates:
- x264: 1.7-3.5mpbs
- x265: 1.3-2.7mbps
- x264: 7.0mbps – 12mpbs, encode speed – 7.2fps
- x265: 5.0mbps – 8mbps, encode speed – 6.5fps