xerpi / vita-udcd-uvc

PSVita UDCD USB Video Class plugin
461 stars 23 forks source link

Bilinear Filtering? #84

Open abaddononion opened 3 years ago

abaddononion commented 3 years ago

This is just a guess... I'm not entirely sure what's causing my issue. But when I stream certain games (I've only verified on PSX titles thus far) to my PC, I'm not getting exactly the same video I'm seeing on the Vita itself. In particular, when certain screens fade to black, rather than properly fading all the way, they linger on the last visible frame for too long.

I noticed this same issue if I enable bilinear filtering in Adrenaline. But as long as I leave it set to "Original", I don't see this issue on the Vita itself, however I do still have it through udcd. Is it possible that udcd is using bilinear filtering permanently, regardless of Adrenaline settings? And if so, is there some way I can turn it off?

xerpi commented 3 years ago

I think bilinear filtering can be removed by setting this to 0: https://github.com/xerpi/vita-udcd-uvc/blob/master/src/main.c#L605 Check https://github.com/xerpi/vita-udcd-uvc/issues/59#issuecomment-651236352

abaddononion commented 3 years ago

Thanks for the pointer! That was exactly what I was looking for!!

Unfortunately... it's apparently not the root caue of my issue. =/

I know my changes are working because i tried the other change mentioned in that ticket you linked, and it totally changed the output aspect ratio.

I tried both setting params.unk04 = 0; and removing the line entirely. in both scenarios, it didn't fix the problem.

Are there other video "improvement" parameters I can try to turn off? I'd like to get as close as possible to the PSX "Original" mode.

The easiest way to observe this problem is to simple start up any PSX game under Adrenaline (with the vita screen still on) and watch the Playstation logo on both screens. When it fades on the Vita screen, it will continue to linger for quite some time longer on the PC screen. There's several other scenarios where it causes artifacts, but that one is the quickest/easiest to test.