Question / Help Question about scaling in regards to quality...

So recently I've been running some tests with my gaming livestreams to work out how to stop them from becoming pixellated and blurry.
I've found upping the bitrate helps a bunch, but I had a thought.

What I'm currently doing is changing the base canvas resolution to 1280x720, and the scaled output the same. Then, I've manually had to shrink the game capture to fit the screen. That's means I've had to shrink a 1920x1080 game capture into a 1280x720 area.

Now, say that I set the base canvas resolution to 1920x1080 so the game capture would fit without needing to shrink it. Then, I set the output scaled resolution to 1280x720.

My question is; Would downscaling the BASE canvas resolution to 1280x720 and shrinking the game capture to fit,
OR
leaving the base canvas at 1920x1080 so the game capture will fit normally and downscaling the image to 1280x720 in the encoding process...
cause less pixellation and blurriness.

For all I know, there is no difference. I would test myself, but I don't have the time right now. If someone wants to look into it for me, or maybe give me some info that will answer my question, I'd be very grateful. Thank you!
 

koala

Active Member
It's the same. Either way, OBS is telling the GPU to scale the video frames. First, it rescales the frames of the source, copies them to the canvas, then output. Second, it copies the frames of the source on the canvas, rescales the frames of the canvas, then output. Both variants do a one-time rescale of the game video frames from 1920x1080 to 1280x720.
It's probably even the same subroutine within OBS that performs the rescaling.

Canvas size and proper rescaling of source or canvas is rather unimportant, if you only stream one source that is a game or video source.
It becomes important, if you composite multiple sources and produce a stream from that. For example, if you add a webcam and some graphical overlays that build your visual stream channel identity. Usually, you create graphical assets for this, and while you have to rescale the game frames, you don't need to to rescale the graphical assets if you create them with the same resolution as the output resolution. So in this case, if you stream at 1280x720, you will set your canvas to 1280x720 and create your assets with this resolution in mind. You add them verbatim to the preview, no scaling, so they will appear as sharp as they can. You resize your game source to 1280x720, so only this is rescaled.
On the other hand, if you plan to stream at 1920x1080 one time in the future, you can as well create your graphical assets with that resolution in mind, set a canvas size of 19201080 and rescale the whole output instead of only the game source.
 
Top