Question / Help No FPS decrease ingame but the FPS isn't 'smooth' - LoL

Shafski

Member
Hi, I recently stream with OBS, and I've noticed that when I stream, my ingame FPS doesn't drop so much, it can stay at like 50 which is great because I normally play at 60 even, but it's very jerky. It's like it's skipping ingame frames - the stream itself is fine. Like honestly, I wouldn't even care if it dropped to 30 FPS.. just as long as the ingame gameplay was smooth. If I turn off the capture source but run the stream, the FPS goes to normal. I'm using the most recommended capture mode from trying different methods, using a monitor capture and desktop capture for out of gameplay, using a scene switcher. Like without streaming my FPS can drop to 30 if I have stuff running in the background.. but it doesn't even bother me because it's still smooth, which is important at the level of gaming I play at (I can get away with it at lower elo but to make micro plays I need that smoothness). I have all my ingame settings on lowest quality too.

Just to paste my specs from when I bought it..
  • AMD A8 6600K Quad Core Processor / CPU running at 3.9GHz (With 4.2GHz Turbo Mode!)
  • 8GB DDR3 1600Mhz RAM
  • RADEON HD8570D Graphics
  • 1TB Hard Drive
  • SAMSUNG 24X DVD / CD - RW Dual Layer Optical Disc Drive
  • MSI A78M-E35 uATX Motherboard
  • 500W Quiet Power Supply Featuring Large 120mm Cooling Fan
  • High Quality Vantage RED Desktop PC Gaming Case with 3 x 120mm RED LED Cooling FansGpu-Z
Gpu-Z says my GPU clock is 844MHz and Memory 800MHZ which idk what diff that makes to any values above

Log File: https://gist.github.com/a8798060c50898058fd6

Also, disabling aero makes the unsmooth FPS ingame NOTICEABLY less smooth which is bad, idk if that helps-

Any advice would be appreciated :)
 

dping

Active Member
Hi, I recently stream with OBS, and I've noticed that when I stream, my ingame FPS doesn't drop so much, it can stay at like 50 which is great because I normally play at 60 even, but it's very jerky. It's like it's skipping ingame frames - the stream itself is fine. Like honestly, I wouldn't even care if it dropped to 30 FPS.. just as long as the ingame gameplay was smooth. If I turn off the capture source but run the stream, the FPS goes to normal. I'm using the most recommended capture mode from trying different methods, using a monitor capture and desktop capture for out of gameplay, using a scene switcher. Like without streaming my FPS can drop to 30 if I have stuff running in the background.. but it doesn't even bother me because it's still smooth, which is important at the level of gaming I play at (I can get away with it at lower elo but to make micro plays I need that smoothness). I have all my ingame settings on lowest quality too.

Just to paste my specs from when I bought it..
  • AMD A8 6600K Quad Core Processor / CPU running at 3.9GHz (With 4.2GHz Turbo Mode!)
  • 8GB DDR3 1600Mhz RAM
  • RADEON HD8570D Graphics
  • 1TB Hard Drive
  • SAMSUNG 24X DVD / CD - RW Dual Layer Optical Disc Drive
  • MSI A78M-E35 uATX Motherboard
  • 500W Quiet Power Supply Featuring Large 120mm Cooling Fan
  • High Quality Vantage RED Desktop PC Gaming Case with 3 x 120mm RED LED Cooling FansGpu-Z
Gpu-Z says my GPU clock is 844MHz and Memory 800MHZ which idk what diff that makes to any values above

Log File: https://gist.github.com/a8798060c50898058fd6

Also, disabling aero makes the unsmooth FPS ingame NOTICEABLY less smooth which is bad, idk if that helps-

Any advice would be appreciated :)
your best bet is to change to a build that will allow you to use your GPU hardware encoder since your CPU is weak.
https://obsproject.com/forum/threads/obs-branch-with-amd-vce-support.13996/ on the last page of that thread, I posted some instructions on what do download on the first page if youhave trouble with that.
 

Shafski

Member
your best bet is to change to a build that will allow you to use your GPU hardware encoder since your CPU is weak.
https://obsproject.com/forum/threads/obs-branch-with-amd-vce-support.13996/ on the last page of that thread, I posted some instructions on what do download on the first page if youhave trouble with that.
Hey

I did that all, but it's the same. I dont know if its using the gpu to encode? This is how my settings are. I get an error message initially when I go on the encoding page (Pic 1), and then its like this (Pic 2)

b7ehwwl.png


2u7JZIt.png
 

Shafski

Member
Thanks, that seems to help a lot! It's still not as good as I'd like yet, i don't know if my settings are on point though. The reason for the error message was that I installed the wrong bit of the visual thing.

I set the settings to "speed" on the "AMD VCE Encoder" tab

Anyway, can you check my logfile to check my settings are alright if you have time? Thanks again!

https://gist.github.com/13232eb2a8eac90d0dfb
 

dping

Active Member
Thanks, that seems to help a lot! It's still not as good as I'd like yet, i don't know if my settings are on point though. The reason for the error message was that I installed the wrong bit of the visual thing.

I set the settings to "speed" on the "AMD VCE Encoder" tab

Anyway, can you check my logfile to check my settings are alright if you have time? Thanks again!

https://gist.github.com/13232eb2a8eac90d0dfb
only 1080@60 needs the speed preset (which is only for local recording.

all other modes up to 720@60 and 1080@30 and below can use the quality preset.
in AMD VCE Encoder tab, set IDR to 0 and GOP to 30
 

Shafski

Member
only 1080@60 needs the speed preset (which is only for local recording.

all other modes up to 720@60 and 1080@30 and below can use the quality preset.
in AMD VCE Encoder tab, set IDR to 0 and GOP to 30
Thanks, that seems to have helped.

May I ask what the IDR/GOP does?
 

dping

Active Member
Thanks, that seems to have helped.

May I ask what the IDR/GOP does?
you may ask...:P

IDR (Instantaneous Decoding Refresh) aka key frame aka keyint is basically a refresh trigger used like a seekpoint with recordings and with stream, it gives flash player a full picture to start watching. without IDR your stream would be black.
IDR frames are not compressed but are needed for most applications. twitch recommends 1 every 2 seconds,

in this case of VCE, 0 sets the IDR to happen every 2 seconds aka 2x the fps set. twitch recommends an IDR every 2 seconds.

not to be more confusing but both IDR and GOP are measured in frames so if your FPS is 30, IDR will need to be 60

GOP is group of pictures its basically the selection of frames the encoder uses to encode frames from eachother.

high GOP (2xfps) is harder on the encoder and has better quality,
 

Shafski

Member
you may ask...:P

IDR (Instantaneous Decoding Refresh) aka key frame aka keyint is basically a refresh trigger used like a seekpoint with recordings and with stream, it gives flash player a full picture to start watching. without IDR your stream would be black.
IDR frames are not compressed but are needed for most applications. twitch recommends 1 every 2 seconds,

in this case of VCE, 0 sets the IDR to happen every 2 seconds aka 2x the fps set. twitch recommends an IDR every 2 seconds.

not to be more confusing but both IDR and GOP are measured in frames so if your FPS is 30, IDR will need to be 60

GOP is group of pictures its basically the selection of frames the encoder uses to encode frames from eachother.

high GOP (2xfps) is harder on the encoder and has better quality,
Thanks a lot! Makes sense. Everythings running smooth but one issue;

Mobile viewers are saying it doesn't work on mobile - "some green stuff was coming all over the screen" to put it in their words. Any idea what's up with that?
 

dping

Active Member
Thanks a lot! Makes sense. Everythings running smooth but one issue;

Mobile viewers are saying it doesn't work on mobile - "some green stuff was coming all over the screen" to put it in their words. Any idea what's up with that?
make sure "profile" is set to "main" in the encoding tab of OBS. Also, just hard set the IDR to x2 your fps if that still happens. if you are doing 30fps, IDR should say 60, If 60fps, IDR to 120, and so on.
 

Shafski

Member
make sure "profile" is set to "main" in the encoding tab of OBS. Also, just hard set the IDR to x2 your fps if that still happens. if you are doing 30fps, IDR should say 60, If 60fps, IDR to 120, and so on.

Hey.. sorry to bother :P Like my stream is alright, the smoothness ingame is as perfect as I want it, but the stream itself even though my setting is on 30 fps.. runs at like 11-20 fps unstable and constantly changing (where it says it at the bottom of obs). The audio runs smooth and perfect on the stream.

What would you suggest would be the next step? Would it just be to increase the FPS on my stream settings? Or is there something else that I could do better.
 

dping

Active Member
Hey.. sorry to bother :P Like my stream is alright, the smoothness ingame is as perfect as I want it, but the stream itself even though my setting is on 30 fps.. runs at like 11-20 fps unstable and constantly changing (where it says it at the bottom of obs). The audio runs smooth and perfect on the stream.

What would you suggest would be the next step? Would it just be to increase the FPS on my stream settings? Or is there something else that I could do better.
Usually reported lower fps either means that either Aero is disabled, or there is a monitor capture along with other sources in the same scene.
solution is to make sure Aero is enabled and only use a single game capture or monitor capture in each scene.

If thats not it, post your log file from the help menu of OBS, maybe even a screen shot of your obs settings.
 

Shafski

Member
Usually reported lower fps either means that either Aero is disabled, or there is a monitor capture along with other sources in the same scene.
solution is to make sure Aero is enabled and only use a single game capture or monitor capture in each scene.

If thats not it, post your log file from the help menu of OBS, maybe even a screen shot of your obs settings.

I've been running game capture with aero enabled as I experimented with the rest and they all inferior marginally.

Log File: https://gist.github.com/61d0a0721dec8202e781

More screenshots below

3Bb3nmT.png


Again, thank you very much.. really do appreciate it.
 

Shafski

Member
http://www.twitch.tv/shafski/v/5479126

This is a VOD btw of ingame.. Like the quality and the ingame FPS are spot on.. I would even sell a small bit of the stream quality for more stable fps of the stream. Ignore any network lag on the stream as it was expected since I'm back home and during the day time my family are all here using the net so the spikes can't be helped xD (I usually run stream at night anyway)

The VOD is on 720p 30fps with 2.5k bitrate.
 

dping

Active Member
I've been running game capture with aero enabled as I experimented with the rest and they all inferior marginally.

Log File: https://gist.github.com/61d0a0721dec8202e781

More screenshots below

3Bb3nmT.png


Again, thank you very much.. really do appreciate it.
First, this is a fork build of OBS and should probably post issues there but since I heavily post there as well,

I will say your IDR and GOP need to be based on your FPS. meaning, if you use 25fps, you need to use IDR of 50 and a GOP of either 25 or 50 (50 would probably be best).

try disabling the OBS preview window. this can cause stuttering in many games. right click on the preview screen, click preview again, then uncheck "enable view".

you can also try "host" for your AMF engine type and check disable D3D/OpenCL interop.

you are getting a message in OBS saying " Failed to submit input buffer multiple times already. VCE is probably too slow for current settings." meaning you probably need to downscale to 720p or even 616p (you'd get better picture anyway)

Lastly, you shouldn't check OpenCL and AMF in the Encoding tab at the same time. one or the other, AMF preferred so uncheck OpenCL from the Encoding tab of OBS


lastly, after we get this working, you should post here for future issues.
https://obsproject.com/forum/threads/obs-branch-with-amd-vce-support.13996/
 

Shafski

Member
First, this is a fork build of OBS and should probably post issues there but since I heavily post there as well,

I will say your IDR and GOP need to be based on your FPS. meaning, if you use 25fps, you need to use IDR of 50 and a GOP of either 25 or 50 (50 would probably be best).

try disabling the OBS preview window. this can cause stuttering in many games. right click on the preview screen, click preview again, then uncheck "enable view".

you can also try "host" for your AMF engine type and check disable D3D/OpenCL interop.

you are getting a message in OBS saying " Failed to submit input buffer multiple times already. VCE is probably too slow for current settings." meaning you probably need to downscale to 720p or even 616p (you'd get better picture anyway)

Lastly, you shouldn't check OpenCL and AMF in the Encoding tab at the same time. one or the other, AMF preferred so uncheck OpenCL from the Encoding tab of OBS


lastly, after we get this working, you should post here for future issues.
https://obsproject.com/forum/threads/obs-branch-with-amd-vce-support.13996/
Seems to have fixed it.. found a good balance that I'm happy with.

Thank you so much!
 
Top