TL;DR: Upscaling to achieve better youtube quality is a waste of time.
Following previous discussion, I decided to do my own tests since I couldn't find any good article about this.
The hypothesis: upscaling 1080p videos to UHD (3840x2160px) before uploading to youtube increases the video conversion quality for 1080p.
The argument for this is that youtube uses VP9 codec for resolutions higher than 1080p, instead of H.264.
Test Methodology
1- 20s video using 50D MLV with resolution of 1920x1080px
2- Processed with MLVApp (no sharpness or denoise filter) and exported to DNxHR HQ 8bit. This file was used as the reference file.
3- Interpolated the reference file to 3840x2160px on Premiere Pro v12.0.0 (with "Use Maximum Render Quality" box enabled) and exported to DNxHR HQ 8bit. I didn't wanted to use some better interpolation algorithm, like NNEDI3 or SuperResolution-based. Most people just use Premiere or FinalCut to do this.
4- Uploaded both and waited for youtube conversion. Note: youtube is now accepting direct DNxHR uploads.
5- Downloaded with youtube-dl using format code 137 (standard for 1080p H.264 files) and 248 (standard for 1080p VP9 files). Youtube-dl is a python script that gets the original files from googlevideo server, so there's not conversion in-between.
6- Converted to raw YUV420p using ffmpeg
7- Analyzed with VQMT tool (600 frames), to get MSSSIM, SSIM and VIFP values. Output to CSV.
8- Graphs using LibreOffice Calc
Non-Interpolated link: https://youtu.be/HtR-hJe-2Wo
Interpolated link: https://youtu.be/JMbeoiblla8
Note
Interpolation adds artifacts and downscaling can add what seems to be sharpness. As you can see in the example bellow, the "re-interpolated" crop (using Bicubic algorithm), seems to be sharper. This can affect the test, but I did not applied any sharpness on any of the files.
Results
Averaged from 600 frames. The closer to 1.0, the better:
Averages
MSSSIM:
Non-Interpolated H.264: 0.989555
Interpolated H.264: 0.989429
Interpolated VP9: 0.991146
SSIM
Non-Interpolated H.264: 0.956130
Interpolated H.264: 0.956211
Interpolated VP9: 0.962942
VIFP:
Non-Interpolated H.264: 0.635854
Interpolated H.264: 0.636947
Interpolated VP9: 0.677739
Percentage difference between the Non-Interpolated H.264 and the Interpolated VP9 averages:
- SSIM: 0.68%
- VIFP: 4.18%
- MSSSIM: 0.15%
Conclusion
The difference is placebo or induced by the added sharpness from the re-interpolation.
Besides wasting time, processing power and network bandwidth, you'll generate interpolation artifacts (I noticed some distortion in fine details on shadows). VP9 has a better compression ratio than H.264, this doesn't mean youtube keeps the same bitrate as H.264. In fact, that's the point of the lossy compression research: less data for the same perceptual quality, so you need less storage and load the video faster.
Haven't tested with HDR uploads (10-bit, Rec.2020).
Following previous discussion, I decided to do my own tests since I couldn't find any good article about this.
The hypothesis: upscaling 1080p videos to UHD (3840x2160px) before uploading to youtube increases the video conversion quality for 1080p.
The argument for this is that youtube uses VP9 codec for resolutions higher than 1080p, instead of H.264.
Test Methodology
1- 20s video using 50D MLV with resolution of 1920x1080px
2- Processed with MLVApp (no sharpness or denoise filter) and exported to DNxHR HQ 8bit. This file was used as the reference file.
3- Interpolated the reference file to 3840x2160px on Premiere Pro v12.0.0 (with "Use Maximum Render Quality" box enabled) and exported to DNxHR HQ 8bit. I didn't wanted to use some better interpolation algorithm, like NNEDI3 or SuperResolution-based. Most people just use Premiere or FinalCut to do this.
4- Uploaded both and waited for youtube conversion. Note: youtube is now accepting direct DNxHR uploads.
5- Downloaded with youtube-dl using format code 137 (standard for 1080p H.264 files) and 248 (standard for 1080p VP9 files). Youtube-dl is a python script that gets the original files from googlevideo server, so there's not conversion in-between.
6- Converted to raw YUV420p using ffmpeg
7- Analyzed with VQMT tool (600 frames), to get MSSSIM, SSIM and VIFP values. Output to CSV.
8- Graphs using LibreOffice Calc
Non-Interpolated link: https://youtu.be/HtR-hJe-2Wo
Interpolated link: https://youtu.be/JMbeoiblla8
Note
Interpolation adds artifacts and downscaling can add what seems to be sharpness. As you can see in the example bellow, the "re-interpolated" crop (using Bicubic algorithm), seems to be sharper. This can affect the test, but I did not applied any sharpness on any of the files.
Results
Averaged from 600 frames. The closer to 1.0, the better:
Averages
MSSSIM:
Non-Interpolated H.264: 0.989555
Interpolated H.264: 0.989429
Interpolated VP9: 0.991146
SSIM
Non-Interpolated H.264: 0.956130
Interpolated H.264: 0.956211
Interpolated VP9: 0.962942
VIFP:
Non-Interpolated H.264: 0.635854
Interpolated H.264: 0.636947
Interpolated VP9: 0.677739
Percentage difference between the Non-Interpolated H.264 and the Interpolated VP9 averages:
- SSIM: 0.68%
- VIFP: 4.18%
- MSSSIM: 0.15%
Conclusion
The difference is placebo or induced by the added sharpness from the re-interpolation.
Besides wasting time, processing power and network bandwidth, you'll generate interpolation artifacts (I noticed some distortion in fine details on shadows). VP9 has a better compression ratio than H.264, this doesn't mean youtube keeps the same bitrate as H.264. In fact, that's the point of the lossy compression research: less data for the same perceptual quality, so you need less storage and load the video faster.
Haven't tested with HDR uploads (10-bit, Rec.2020).