Question / Help Help a newb... Trying to upload 720p60 to Youtube without quality loss

KozmykTunes

New Member
After more than a dozen tutorials on OBS from YouTube, I'm completely confused and nothing I'm trying is working.

Goal: Record a 720p window from my monitor (1080p native resolution), and get a high quality mp4 file and then upload it to YouTube and end up withe the same quality on the resulting video on YouTube.

I'm on a i7-4770K CPU @3.5GHz with 16 GB RAM and dual NVidia Gefore GTX 760 video cards.
I'm playing a tune on Winamp, start one of its visualization plugins, and resize the resulting visual window to 1280x720.

Now I use OBS to record this window. I use some recommended settings from youtube tutorials, etc, and I end up with an mp4 video file that looks *exactly* as the window I'm recording.

Here's a shot of a frame of that video. It looks very busy, but note that the text on the top right and bottom left is legible:
https://i.imgur.com/LxT52H4.jpg
https://i.imgur.com/LxT52H4.jpg
I then upload that video to YouTube. After about 2 to 3 dozen of different tests in recording settings from YouTube tutorials, I can *NEVER* get the resulting YouTube video look better than this: (same frame from the YouTube upload)
https://i.imgur.com/V9SNB8N.jpg

How can a 720p60 video look so blurry like that? Some times YouTube gives me a warning that I should follow recording settings recommendations from here: https://support.google.com/youtube/answer/1722171?hl=en
I've tried several times to adjust OBS settings according to those recommendations without any luck in resulting in high quality YouTube videos.

The same blurry mess happens if I max up the source visual window to take up my full 1080p monitor, record a video resulting in a 1080p mp4 video that looks great, sounds great, I then upload it to YouTube and I get a horrible blurry mess.

There has to be a way to record the screen source in such a way that it results in a good looking and sounding video, but it still keeps its high quality *after* uploading it to YouTube.

I must be doing something wrong but I can't figure out what it is!

Any help and suggestions very welcome! I've been trying to figure this out for more than 3 years! :-)
 

R1CH

Forum Admin
Developer
YouTube will always re-encode your video, there is no way to avoid it. No matter how good your source file is, it will look different on YouTube after their encoding pass.
 

KozmykTunes

New Member
YouTube will always re-encode your video, there is no way to avoid it. No matter how good your source file is, it will look different on YouTube after their encoding pass.

Thank you for your comment :-)

Then what do other posters do, to end up with high quality and sharp looking videos on YouTube? YT is re-encoding their videos too, but their results are very high quality. What kind if videos do they have that the resulting re-encoding looks 720p60 as intended? Can OBS create such kind of source videos from its recording settings?
 

R1CH

Forum Admin
Developer
Other videos look good to you since you don't have the original to compare it to. Doing frame by frame comparisons with the original will only lead to disappointment - just upload the best quality you can and try to be happy with it :).
 

KozmykTunes

New Member
Other videos look good to you since you don't have the original to compare it to. Doing frame by frame comparisons with the original will only lead to disappointment - just upload the best quality you can and try to be happy with it :).

Thank you for the suggestion, but that can't be the ultimate answer to my inquiry :-)

There has to be a way to upload a 720p60 or 1080p60 to YouTube using a recording by OBS that results in the same quality 720p60 or 1080p60 of a video after the upload.

I'll keep on searching. Thank you for your feedback :)
 
YouTube uses several different codecs to lower the data size of the uploaded video.
It starts off with a very poor quality output (avc - several codec formats) after just uploading, then when the video has more views they will re-encode it using a higher quality codec (vp9)

While you don't have to,
What I sometimes try any do to retain more quality is I record with the greatest quality possible, then convert the video using Shotcut, then I compress the video with handbrake, which (dependent upon the length of the video can take from minutes to hours) greatly reduces the filesize which in turn helps to mitigate YouTube from gutting the video quality whilst they compress it when they do their re-encoding.

https://www.shotcut.org/
https://handbrake.fr/

 

KozmykTunes

New Member
[...]
While you don't have to,
What I sometimes try any do to retain more quality is I record with the greatest quality possible, then convert the video using Shotcut, then I compress the video with handbrake, which (dependent upon the length of the video can take from minutes to hours) greatly reduces the filesize which in turn helps to mitigate YouTube from gutting the video quality whilst they compress it when they do their re-encoding.

https://www.shotcut.org/
https://handbrake.fr/
[...]

It looks like a lot of work... but I'll check it out. Thank you!
 
It is a lot of work and I only do it for games that have a lot of contrast/shadows/smoke/fog/grass type stuff, that is what YouTube really kills in terms of quality reduction.

If you do start doing Shotcut conversion/HandBrake compression, make sure if you overclock, make sure your overclock is as stable as a granite slab, otherwise it will likely crash in the 2nd passes.

Also make sure you have adequate cooling as HandBrake will push your CPU harder than any game will.
 

BK-Morpheus

Active Member
You can also upscale your 720p 60fps footage to 1440p before uploading. Of course this will not give you a better video, but the way Youtube is re-encoding and downscaling the footage might result in a slightly better 720p 60fps version, than a direct 720p 60fps upload.

Either way...as R1CH is correct, the compression from youtube is relatively strong and you can't do anything about it, than just uploading the best quality you have, so Youtube has the best possible source material for its encoding.

btw. the footage from your screenshot, gives a hint about how bitrate-hungry that footage must be.
The whole frame has moving, colored details in it.
This will eat up a shit load of bitrate compared to something like a normal visual equlizer band where ~25-50% of the frame stays the same and only some bars are jumping up and down or those visuals from NCS (no copyright sounds), where there is one static picture in the backround and only a circle is animated.
 
Last edited:

KozmykTunes

New Member
You can also upscale your 720p 60fps footage to 1440p before uploading. Of course this will not give you a better video, but the way Youtube is re-encoding and downscaling the footage might result in a slightly better 720p 60fps version, than a direct 720p 60fps upload.

I'll try that, but even if I start with a 1080p60 recording, the resulting YouTube video is still blurry as h*ll. (Because of stated reasons)

Either way...as R1CH is correct, the compression from youtube is relatively strong and you can't do anything about it, than just uploading the best quality you have, so Youtube has the best possible source material for its encoding.

So, what settings should I use in OBS so I end up with the best possible quality of an mp4, so that after I upload it to YT, the resulting YT video is as good as possible?

btw. the footage from your screenshot, gives a hint about how bitrate-hungry that footage must be.
The whole frame has moving, colored details in it.
This will eat up a shit load of bitrate compared to something like a normal visual equlizer band where ~25-50% of the frame stays the same and only some bars are jumping up and down or those visuals from NCS (no copyright sounds), where there is one static picture in the backround and only a circle is animated.

You are correct and I failed to mention that my source is always a highly animated video with a lot of detail moving around in high speed. How do I translate that "bitrate-hungry" you mentioned to a setting in OBS that can capture that high level of color and detail animation?

If anyone is still not bored to death with this thread, here's the latest attempt:

Here's a 15 second, 56.8 MB, mp4 file, the result of recording a window with the visual effect going on. When I play this mp4 on my PC, it looks as good as the source window I'm recording with OBS:
https://drive.google.com/file/d/1JS-BtELr96l52t4aBiTtRaawZH6oVgyS/view?usp=sharingj

(more weirndess: If you click the above link, Google will stream that file from my Google Drive account, and it looks *very good!* ... not as good as the initial mp4 source, but I would be very happy with that quality if YouTube could also show that quality after the upload!)

This is the resulting video after uploading it to YT. The quality says 720p60, but the blur is very noticeable:
https://www.youtube.com/watch?v=ZAdn-UBmJT8

The major recording settings in OBS I used for this recording are:

Output > Recording > Encoder x264 ( I have NVENC available too, due to the dual GTX 760 video cards)
Rescale Output: 1280x720
Rate Control: CBR
Bitrate: 30000 (I saw that from a YT tutorial for how to get high definition videos using OBS)
Keyframe Interval: 0 (Auto)
CPU Usage Preset: faster
Profile: Main

Video > Base (Canvas) Resolution: 1280x70 (the 720p window I'm recording is on a 1080p monitor - I don't know if this is the correct setting)
Output (Scaled) Resolution: 1280x720
Downscale Filter: Lanczos
Common FPS Values: 60

To recap: I'm assuming there is a combination of settings in OBS to use for a recording, that will result in a high enough quality mp4 file, that even after YouTube's compression, the resulting file on YT will be equally as good as the mp4 file that OBS recorded.

By the way, I'm using OBS for streaming too, and it's excellent! No quality issues whatsoever and the chatters I'm streaming to are all very happy with the stream quality! I'm grateful for such an amazing software to be available for free!

Thank you for any further suggestions or ideas! :-)
 

Bugfragged

New Member
Unlike 1080p videos, uploading 1440p forces Youtube to use VP9 instead of AVC, even for a video or channel with little traffic (I would know, lol). However, the AVC version will be shown for a while until Youtube is done encoding the VP9 version. You can check which codec it's using by right clicking the YT video and clicking "Stats for Nerds."

In OBS, you can set the Output (Scaled) Resolution to 2560x1440 while keeping your Base (Canvas) Resolution at 1280x720, which will allow you to record a 1440p video. However, this will be harder on your system than your original settings, so using a different program to upscale an existing 720p recording might still be a better solution.
 

KozmykTunes

New Member
In OBS, you can set the Output (Scaled) Resolution to 2560x1440 while keeping your Base (Canvas) Resolution at 1280x720, which will allow you to record a 1440p video. However, this will be harder on your system than your original settings, so using a different program to upscale an existing 720p recording might still be a better solution.

I can't get the 2560x1440 setting in either the Output > Recording or the Video settings. The most I can get is 1920x1080, which is the full resolution of the monitor I'm recording from.

Thank you for the suggestion.
 

Bugfragged

New Member
That's strange, I was able to to scale beyond my monitor resolution when using Output (Scaled) Resolution. I had to manually type in the resolution though, since the drop-down menu didn't give me the resolution I wanted.
 

KozmykTunes

New Member
That's strange, I was able to to scale beyond my monitor resolution when using Output (Scaled) Resolution. I had to manually type in the resolution though, since the drop-down menu didn't give me the resolution I wanted.

I found another screen recording software that's doing a great job recording a 720p window and after the YT upload, the result looks good! Much better than I could get using OBS, which I'll certainly continue to use for live streaming.

If anyone is interested, it's ZD Soft Sreen Recorder... not affiliated at all... just a happy customer! :-)

It's a psy-chill tune... and it looks great on YouTube! :-) https://www.youtube.com/watch?v=S2I3bkTLQFU
 
Last edited:
Top