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

Windows goes to sleep causing Android machine memory to increase #5024

Open
2 tasks done
erd-yunmu opened this issue Jun 25, 2024 · 9 comments
Open
2 tasks done

Windows goes to sleep causing Android machine memory to increase #5024

erd-yunmu opened this issue Jun 25, 2024 · 9 comments

Comments

@erd-yunmu
Copy link

erd-yunmu commented Jun 25, 2024

  • I have read the FAQ.
  • I have searched in existing issues.

Environment

  • OS: Windows
  • scrcpy version: 2.4
  • installation method: Windows exe
  • device model:rk3588
  • Android version: Android12、Android13

Describe the bug
I am using Windows to interact with rk3588 development and found that the memory usage is increased
Causes the memory to be full, terminating all running background programs
I think it may be caused by the data packet not being released.

Here is how I tested Reappear soon:First open scrcpy and enter the desktop, then open the system camera --->stand still,Next, put your computer Windows into sleep mode.
Select Sleep on the power button in the lower left corner of Windows and wait for 1 minute before waking up.
Then open adb shell and execute top to find that the memory usage is more than 80%. As shown
clipboard-202406251339-poymy
image

I am using 16GB of RAM
I have tried Android 12 and Android 13 and both have this problem
This happens only when the computer is shut down after sleeping and the adb connection is disconnected. I have also tried disconnecting the adb cable and this does not happen.

Normal memory is as shown in the figure
image

I have finished talking about the above questions. If you need testing, I am willing to test the software for you.
Thank you!

@erd-yunmu
Copy link
Author

I used this software and it did not increase the memory capacity. https://www.vysor.io/

@rom1v
Copy link
Collaborator

rom1v commented Jun 25, 2024

Thank you for the report.

Given the description, it looks like the device buffers input data indefinitely if it is not consumed by the client (applying a backpressure). But if I "freeze" (Ctrl+z on Linux) the client process, I cannot reproduce on my device.

First open scrcpy and enter the desktop, then open the system camera --->stand still,Next, put your computer Windows into sleep mode.

I fail to reproduce: when I put a Windows into sleep mode, when I wake it up, scrcpy is disconnected (the adb socket is closed probably).

Can you reproduce with a different device (other than rk3588)?

Does it also happen with another encoder?

@rom1v
Copy link
Collaborator

rom1v commented Jun 25, 2024

Also, does it happen if you capture the camera directly (instead of mirroring the screen and opening the camera app)?

scrcpy --video-source=camera

@erd-yunmu
Copy link
Author

Sorry, I didn't make that clear.

First open scrcpy and enter the desktop, then open the system camera --->stand still,Next, put your computer Windows into sleep mode.

  1. Open scrcpy software in Windows
  2. Use the mouse to open the system camera on the scrcpy desktop
  3. Put the computer to sleep
  4. Wait for 1 minute
  5. Wake up the Windows computer again
  6. Use adb to connect to the Android device and execute top to check the memory usage to see if it has increased
    This is how I did it, please try again

@rom1v
Copy link
Collaborator

rom1v commented Jun 25, 2024

Use the mouse to open the system camera on the scrcpy desktop

You mean opening the camera app on Android while scrcpy is running, is that correct? (clicking via scrcpy or not is irrelevant, it is opened on the device anyway)

Use adb to connect to the Android device and execute top to check the memory usage to see if it has increased
This is how I did it, please try again

I tried again, and when I wake up, memory usage on Android is normal (and also scrcpy is closed on wake up). But this is not the same device as yours.

@erd-yunmu
Copy link
Author

My Xiaomi phone 12GB also has a similar situation, which does cause the memory to increase
image
For Xiaomi, I do this: I use scrcpy on the computer to open the Xiaomi 12 mobile phone camera, and then the computer goes to sleep.
At this time, the mobile phone camera is always open and not closed.
The memory starts to increase slowly.
It is recommended to wait 1-2 minutes before waking up the computer during sleep, open adb shell and execute top to find that the memory is occupied a lot.

@rom1v
Copy link
Collaborator

rom1v commented Jun 25, 2024

In adb shell, run top with these arguments:

top -o PID,USER,CMDLINE,%MEM

It will list the process sorted by memory usage.

@erd-yunmu
Copy link
Author

image
It seems that the application does not take up memory

@erd-yunmu
Copy link
Author

hi is there any solution?
If I haven't explained it clearly, we can contact you via Google chat and I will tell you the steps to reproduce the problem.

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

No branches or pull requests

2 participants