Genymobile / scrcpy

Display and control your Android device
Apache License 2.0
108.84k stars 10.47k forks source link

vsync/screen tearing issue on macOS 13.0.1 Ventura #3600

Open FingerMove opened 1 year ago

FingerMove commented 1 year ago

Bug description:

When I upgraded to macOS 13 Ventura, the screen where scrcpy is running has massive screen tearing, only happens when scrcpy is running.

I even tested it on a fresh macOS 13 install with only scrcpy installed, still happening. macOS 12 was fine, but I can't downgrade anymore.

Would be nice if there was a solution or workaround for this. Thanks in advance.

Edit: Issue still persists on 13.1.0 Ventura.

RoiArthurB commented 11 months ago

Can relate. This issue also happens on MacOS 14, but no issues with Linux :shrug:

FingerMove commented 11 months ago

Can relate. This issue also happens on MacOS 14, but no issues with Linux 🤷

Well, it's a bug that only impacts a very small minority, I guess. Open Source devs don't give a flying f about stuff like this, since this is still an open issue almost a year later without a fix.

RoiArthurB commented 11 months ago

In my case it's just a minor issue (some tearing on one defined line of the screen copy).

So I do understand that they keep pushing and fixing major issues first and I'm really thankful for the great work then did with this tool ! I won't blame them for not working on it actively, and they'll be more than happy to accept your help on this one :)

I was just updating the information on this issue as it's also happening on MacOS 14

JCKodel commented 3 months ago

Can relate. This issue also happens on MacOS 14, but no issues with Linux 🤷

Well, it's a bug that only impacts a very small minority, I guess. Open Source devs don't give a flying f about stuff like this, since this is still an open issue almost a year later without a fix.

Yeah, agree with you brother.

It would be wonderful if the source code was open and available for anyone to modify it and fix issues.

Oh, wait...

BTW, blame the stupid Apple with their crap hardware and software. That piece of garbage has a terrible video system (won't be even capable of displaying more then 60Hz on a 144Hz display, no matter the cable used (HDMI or DP)).

If you read the documentation, you will find this useful command:

scrcpy --list-encoders

Then, you'll find that the non-vsync encoders (the one you are using) has lower latency, but, if your OS is a piece of crap, it will tear (because that piece of trash has no configuration whatsoever for VSync, unlike decent OSes such as Windows or Linux).

Also, you'll find that other codecs, such as --video-codec=h264 --video-encoder='OMX.google.h264.encoder' provides a nice vsync experience but, as any vsync enabled video system it will add a lot of latency.

If you had a decent OS and a decent hardware, your operation system could use something like nVidia GSync or AMD FreeSync technology that makes tearing go away at variable refresh rates.

But, you use a mac... so, deal with it.