hyperion-project / hyperion.ng

The successor to Hyperion aka Hyperion Next Generation
https://hyperion-project.org/
MIT License
3.05k stars 377 forks source link

Stuttering with DX or QT screen capture under Windows #1329

Closed SunnyMoo closed 4 months ago

SunnyMoo commented 3 years ago

Bug report

When Hyperion is set to capture screen with DX or QT setting, Windows suffers from stuttering Changing capture frequency or picture decimation makes no change. Enable or disable Win10 transparency makes no change. Tried some changes in nVidia settings made no difference. Tested with Witcher3 it runs fine with no freeze or fps loss. Does not happen when using Hyperion ScreenCap instead of Hyperion DX or QT.

Steps to reproduce

Go to capturing hardware, enable screen capture, set device discovered to DX or QT.

What is expected?

Smooth normal Windows behavior.

What is actually happening?

Examples:

System

Hyperion Server:

Hyperion Server OS:

Thank you !

edit: issue remains with 2.0.15

Corbin1747 commented 2 years ago

I found the same issue. It was caused by a Windows update and Having NG start with windows. Once I disabled auto start up it would work fine when i started it up manually.

GreenDie commented 1 year ago

I know the solution... Turn of the remove black Bars function. Or use classic

GreenDie commented 1 year ago

Oh noch i got the Problem again without... I dont know why😭

Aasikki commented 1 year ago

Any chance for a fix? This is making Hyperion unusable on my system.

GreenDie commented 1 year ago

Use better CPU. Set Windows resolution down to 1080p .

GreenDie commented 1 year ago

Use "Prismatik" ambilight software

GreenDie commented 1 year ago

I have the same problem and am looking for a solution myself! Why should I talk nonsense? I've been dealing with the problem for about a year and am just passing on my experience reports. it helped me to lower the resolution in windows from 2160p to 1080p. Ultimately it leads back to a performance issue as far as I know. With my gaming PC (12600+6900xt) I don't have any stutters. With my Mini PC (4700u) it is... maybe it's because of the missing multithreading... I don't know. I don't know what CPU you have either. and I finally try to bring our experiences together so that the problem can be clearly identified.

GreenDie commented 1 year ago

It's not the place to discuss whether I'm talking nonsense... I also have a capture card. However, it also stutters for me when I have activated the USB recording. Of course, I also don't believe that it is due to the CPU performance, since Hyperion already runs perfectly on a Raspberry Pi Zero W. I am trying to identify the problem. It would therefore be useful if you provided more detailed information. I'll start. I start my PC and turn on this YouTube Video . The video runs perfectly without stuttering. Now I start Hyperion, the video starts to stutter. It doesn't matter what video quality I set (2160p or 720p) The stuttering still persists🤷. Even if I close Hyperion now: The stuttering stays until I restart the PC! Sometimes, I don't know why, the stuttering suddenly goes away. I can't say exactly what happens to make it go away or what to do to make it go away. Like when I disabled black bar detection on Wednesday, for example. Suddenly the stuttering was gone. The next day I could turn on and off the black bar detection as often as I wanted. The stuttering persisted. The only reliable one: I lower the Windows setting from 2160p to 1080p. The stuttering is gone...

GreenDie commented 1 year ago

https://photos.app.goo.gl/x1xVboVPz4ADH6aA6 This is what it Looks at me. Whitch Resolution so you use? Did it solved the Problem for you to Work with USB Capture?

Aasikki commented 1 year ago

Use better CPU. Set Windows resolution down to 1080p .

Ryzen 9 3900X, RTX 2080, 32 GB ram. I don't think my pc is the issue. Sure I can try to see if lowering my res from 1440p to 1080p helps but that's not a solution, I'm not going to game at 1080p with this monitor and setup even if it helps with this issue. I can stream to discord and use obs without any issues so I can't see why this wouldn't work without stutter as well.

Aasikki commented 1 year ago

I can post some videos of it too later today!

GreenDie commented 1 year ago

Ok thank you. I think i know a solition... May Hyperion require all ,,Microsoft Visual C++ Redistributable“ Versions. I will try my supposition.

I also ordered an HDMI splitter yesterday. so actually I'm on the way to give up and look for a way out.. I also have to add that "Prismatic" isn't a perfect solution either. it operates at a variable refresh rate, but browsing still occurs.

But again the question. Does your Problem was solved by working with an Capture Card and USB Capture instead of Screen capturing?

Aasikki commented 1 year ago

But again the question. Does your Problem was solved by working with an Capture Card and USB Capture instead of Screen capturing?

Even if usb capture "solves" the problem, using screen capture shouldn't cause any issues in the first place.

GreenDie commented 1 year ago

but since the USB recording caused stuttering for me myself, I suspect the problem elsewhere..

Aasikki commented 1 year ago

Yeah. Definitely a weird issues though

GreenDie commented 1 year ago

Yes, I have to revise that again. The problem clearly only occurs with the screen recording.

GreenDie commented 1 year ago

it would be nice if you would stop calling my assumptions nonsense and make me look stupid. Like I said, it's all just guesswork. I doubt that I'm at the GPU limit with 70%. I was also sitting today at a computer with an RTX 2060 on which the video playback with the screen capture in Hyperion also jerked. doubt a 2060 would have trouble with that.

GreenDie commented 1 year ago

However, since it also stutters with every other program, I assume that it is not due to Hyperion.

Aasikki commented 1 year ago

You're GPU limited, period.

I dont think the problem is being gpu limited, at least not for me. Other sceencapture programs don't have this issue and I can play games fine with the screencapture on, the only problem I'm having is stutter when moving windows around or scrolling in browser etc. I recommend to stop insulting people, that won't help fix the problem for anyone.

GreenDie commented 1 year ago

Have you tested whether my YouTube video also stutters for you or not at all? And what kind of hardware do you have anyway?

GreenDie commented 1 year ago

my rtx 2060 stutters and gets also up to 70%.. I think maybe the solution would be to be able to set the resolution of the screen recording and select 720p for example. I don't know if this possibility exists for the developers and I can't program it myself. Perhaps there would be the possibility of simulating a program that records the screen in 720p which is displayed as a USB recording device in Hyperion... However, I believe that it would then be easier to buy a capture card with an integrated loop for 15€... However. I will now go this way by splitting the HDMI signal and feeding it back via USB, which also bypasses the DRM copy protection at the same time. So it's actually a reasonable solution anyway.

Have fun with Hyperion and have a good week

GreenDie commented 1 year ago

The stuttering is definitely not due to my system performance :D I tested a system with RTX 2060 and 6900XT. That doesn't really matter at all!

GreenDie commented 1 year ago

dear friends, I know the Solution! HyperionScreenCapture install the software Enter the IP Adress of your Computer where Hyperion is installed on image

to figure out your IP Adress open CMD and enter ipconfig

make sure the icon is lit.

image

Possibly activate "Start Screen Capture Automatically"

image

Now, you Have fun!

Aasikki commented 1 year ago

dear friends, I know the Solution! HyperionScreenCapture

Seriously kid just get lost in the depths of the Schwarzwald and stop polluting this thread ! I've talked about hyperion screencap since the very first post and this is no solution, it's a workaround.

Yes it's not a solution and yes it was already talked about in this thread aaand yes this really needs an actual fix. BUT, here's no need to be so toxic, he was just trying to help.

Aasikki commented 1 year ago

I'm not toxic

Says the man while being incredibly toxic lmao.

holzmichlnator commented 1 year ago

I have exactly the same problem. This is especially noticable on a 120hz display. Just grab a random window like a windows explorer window and move it around. It will stutter like hell. As soon as you quit hyperion, the stuttering is gone.

Changing the capture method from QT to DX doesn't change anything. Disabling the screen capturing completely does "fix" the stuttering.

But @GreenDie is right, using HyperionScreenCapture works like a charm. Just disable screen capturing in Hyperion and setup and start HyperionScreenCap and everything works without stutter.

It would be nice to have this fixed in hyperion itself. Using HyperionScreenCap is just a work around imho.

Another nice thing to mention is that HyperionScreenCap uses a lot less CPU and GPU resources then Hyperion itself. But i haven't had the chance to test this over a longer priod of time and in some games yet.

kekkokk commented 1 year ago

I have exactly the same problem. This is especially noticable on a 120hz display. Just grab a random window like a windows explorer window and move it around. It will stutter like hell. As soon as you quit hyperion, the stuttering is gone.

Changing the capture method from QT to DX doesn't change anything. Disabling the screen capturing completely does "fix" the stuttering.

But @GreenDie is right, using HyperionScreenCapture works like a charm. Just disable screen capturing in Hyperion and setup and start HyperionScreenCap and everything works without stutter.

It would be nice to have this fixed in hyperion itself. Using HyperionScreenCap is just a work around imho.

Another nice thing to mention is that HyperionScreenCap uses a lot less CPU and GPU resources then Hyperion itself. But i haven't had the chance to test this over a longer priod of time and in some games yet.

I found myself in the same situation. With the embedded screen capture, things like moving windows in the desktop or also playing game results in slighlty stuttering like I am running on 60hz. I think this is related to the fact that I'm running on a 160hz display but the maximum capture rate I can set inside the app is capped at 60hz and it reflect this "mismatch" to the windows I move.

But, as someone suggested, does not happen if using external HyperionScreenCap standalone software and works like a charm. Love to see this fixed

PS. running on 5900x + RTX 3080 so I don't think it's an hardware bottleneck

Gremious commented 7 months ago

HyperionScreenCapture fixes the stutter, but it wasn't a great solution for me because it seems to disrespect the whites/color calibration on my nice RGBA-WW LED's.

On the other hand, the HyperHDR project seems to work without any secondary app running, and using the correct white color by default (and I don't really use an HDR monitor or anything).

Paulchen-Panther commented 7 months ago

On the other hand, the HyperHDR project seems to work without any secondary app running, and using the correct white color by default (and I don't really use an HDR monitor or anything).

philips ambilight also works with correct white.