Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Captures at 30fps. #70

Open
somewhatfrog opened this issue Jun 11, 2022 · 16 comments
Open

Captures at 30fps. #70

somewhatfrog opened this issue Jun 11, 2022 · 16 comments
Labels

Comments

@somewhatfrog
Copy link

somewhatfrog commented Jun 11, 2022

OBS is set to record at 60fps, both the preview of source and recording itself looks like 30fps.
There is no such issue with any other method of capturing window or entire screen.
As if plugin is just set to capture at 30fps.

i3wm
archlinux zen
nvidia proprietary
all up to date

Thanks.

@nowrep
Copy link
Owner

nowrep commented Jun 11, 2022

There's no throttling, it captures every single frame from the game. Even if OBS is set to record at lower framerate, the plugin will still capture each game's frame.

@somewhatfrog
Copy link
Author

It is what it is, I tested Elden RIng, Dark Souls III and Mortal Shell (I don't have any other games)
Log has no errors.

info: [linux-vkcapture] Creating texture from dmabuf 1920x1064 modifier:216172782120099860
info: [linux-vkcapture]  [0] fd:81 stride:7680 offset:0

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

Can you upload sample recording?

@somewhatfrog
Copy link
Author

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

Does enabling/disabling cursor make any difference?

@somewhatfrog
Copy link
Author

somewhatfrog commented Jun 12, 2022

:D ye that fixes it. But what to do if I don't want the cursor?

Added: It seems like it goes back to 30fps the moment i enable windowed preview.

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

So enabling cursor fixed it? That's strange, I would certainly expect it the other way around.

Added: It seems like it goes back to 30fps the moment i enable windowed preview.

What's windowed preview? Also, do you have multiple screens?

@somewhatfrog
Copy link
Author

somewhatfrog commented Jun 12, 2022

Cursor seems to have no effect on it anymore, it stays at 60fps if there is no "Windowed Projector (preview)". I have single 4k@60hz monitor. It also goes to 30fps the moment you open "Game Capture" source settings.

Added: could it be that plugin intentionally lowers the capturing framerate when settings are opened and also treats additional preview window the same way? Or thinks that settings are opened?

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

No, there's nothing like that in the plugin. The plugin code is actually very simple.

What's to blame here is most likely nvidia+xorg. What I don't understand is why it can only be reproduced with game capture. You are only setting OBS_USE_EGL when using game capture, right? It could be bug in nvidia egl.

Crazy idea, maybe it halves the framerate for each copy of the scene? So if you open game capture preferences AND the windowed preview, would it bring it down to 15fps?

@somewhatfrog
Copy link
Author

somewhatfrog commented Jun 12, 2022

LOL yes it does drop it to 15fps

Added: the normal preview in obs window itself doesn't cause it.
Yes, I have OBS_USE_EGL only to make this plugin to work.
It also seems that you can't capture with it in two instances of OBS at the same time, it just shows black window in second instance.

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

It does seem like nvidia EGL bug then.

Can you try to add "Media Source" to the scene with some video file and reproduce the same frame halving behavior (with OBS running with OBS_USE_EGL)?

@nowrep nowrep added the nvidia label Jun 12, 2022
@somewhatfrog
Copy link
Author

Yes it is absolutely the same with "Media Source".

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

In that case, you can try reporting it to nvidia.

It also seems that you can't capture with it in two instances of OBS at the same time, it just shows black window in second instance.

The plugin doesn't support running multiple instances of OBS. Is that actually valid usecase?
You can add multiple game capture sources into scene, and they can show the same game. You can also have showing multiple games in multiple game capture sources, but all of this has to be running inside single OBS instance.

@somewhatfrog
Copy link
Author

somewhatfrog commented Jun 12, 2022

Well, it is kinda valid but I'd say it is very specific use case, no need to worry about it.
So vkcapture is more efficient than regular window capture right?

Added: I will try to report to nvidia, should I tell them that framerate halves with each new copy of the same scene, right?

@nowrep
Copy link
Owner

nowrep commented Jun 12, 2022

So vkcapture is more efficient than regular window capture right?

It generally should be yes, but you should benchmark it for yourself on your setup.

Added: I will try to report to nvidia, should I tell them that framerate halves with each new copy of the same scene, right?

It should be enough to tell them how to reproduce it (Xorg + OBS_USE_EGL + media source). You can also link this issue.

@somewhatfrog
Copy link
Author

K, thanks for the help and plugin!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants