Reduce Frame Rate in Adapter or in OBS?

Painted Zebra

New Member
Hi everyone.

I am running a video signal via HDMI from a Sony A7 III camera to an Elgato HD60 Pro and then into OBS and am live streaming talking head type stuff (with very little movement) to YouTube.

I have the HDMI on the camera set to output 1080/50p and the Elgato can receive this and then output to OBS at 1080p at 50fps or a number of other options such as (for example) 25fps.

Now if I want to stream to YouTube at 25fps (for example), is it better to drop the frame rate down in the Elgato adapter or from within OBS?

Presumably there is going to be a 50% reduction in frames (getting dropped somewhere) but where is it best to do this when you want the best quality image?

Thank-you for your help

PZ
 
To give a more concrete example of what I actually am doing but wondering if I am doing it right...

I want to stream to YouTube at 30fps but the camera only outputs 1080/60p (not 1080/30p although there are some other options like 1080/24p NTSC and 1080/50p PAL in the camera).

So I am taking the 1080/60p from the camera, dropping this down to 1080/30p in the Elgato and feeding this to OBS which then streams at 1080/30p to YouTube.

Alternatively I could leave the output from the Elgato at 1080/60p and let OBS drop the frame rate for streaming to 1080/30p.

So one is happening in hardware/software; the other is purely done in the OBS software - which is better do you think?

TIA
 
Personally I'd let the encoder decide which frames to drop, so get the highest possible framerate onto your canvas (leave everything to 60fps) and only set your output/stream to 30. That does increase CPU usage a little bit, but keeping your source High quality as long as possible is better in the long run. If you ever decide to stream other things, then your output would be the only thing you need to change as everything else is already the highest possible quality.
 
Thank-you Arthur for your valuable insights - yes what you say makes perfect sense.

I was thinking about extra CPU cycles and whether this would affect/effect the quality of the stream...

So leave it to x264 to work it's magic?
 
If you have no GPU to take care of the encoding for you, then yes, x264 would be the way to go. If you have a more modern graphics card though, say an NVidia GTX 1080 or better, I'd use NVENC instead. Modern AMD cards should have a similar encoder, though your choice of encoder should be decided where you have the work cycles to spare. Factoring in you use a Capture device for input, I'd let the GPU handle the encoding if possible, that way the CPU can handle whatever else, say scene sources you might want to add, or special effects from Chat commands, etc.

In terms of testing what suits your situation the best, take a look at the recording settings (You can see them in the Settings, Output).
If you switch to the advanced view, and then select the Recording tab, you can switch the recording encoder to "Use stream encoder". That way, recording will use the same system resources as when you would be streaming and deliver the same quality. (Without the network load of course, unless your recording location would be on a network drive).This provides a way to test out your performance and settings without having to actually stream, and watch your results back to see if they are to your liking. I often use this method to sync up my camera to my capture card, which has a slight delay as it's quite old.
 
Back
Top