8000 screen freeze after starting minicap · Issue #10 · openstf/minicap · GitHub
[go: up one dir, main page]

Skip to content

screen freeze after starting minicap  #10

Open

Description

@gebitang

phone:

  • manufacturer: 'OPPO'
  • model: 'OPPO X9007'
  • version: '4.3'
  • abi: 'armeabi-v7a'
  • sdk: '18'

after starting minicap on device manually:

F:\>adb shell
shell@X9007:/ $ cd /data/local/tmp
cd /data/local/tmp
shell@X9007:/data/local/tmp $ LD_LIBRARY_PATH=/data/local/tmp /data/local/tmp/mi
nicap -P 1080x1920@1080x1920/0
cal/tmp /data/local/tmp/minicap -P 1080x1920@1080x1920/0                      <
PID: 25100
INFO: Using projection 1080x1920@1080x1920/0
INFO: (external/MY_minicap/src/minicap_18.cpp:239) Creating SurfaceComposerClien
t
INFO: (external/MY_minicap/src/minicap_18.cpp:242) Performing SurfaceComposerCli
ent init check
INFO: (external/MY_minicap/src/minicap_18.cpp:249) Creating virtual display
INFO: (external/MY_minicap/src/minicap_18.cpp:255) Creating CPU consumer
INFO: (external/MY_minicap/src/minicap_18.cpp:259) Creating buffer queue
INFO: (external/MY_minicap/src/minicap_18.cpp:264) Creating frame waiter
INFO: (external/MY_minicap/src/minicap_18.cpp:268) Publishing virtual display
INFO: (jni/minicap/JpgEncoder.cpp:64) Allocating 6268932 bytes for JPG encoder

The whole screen will be frozen immediately, not response to any touch or click gesture.

then close minicap via Ctrl+C. Current application, whatever it is on device, will show ANR message.


For other device(Meizu m1 note). it will be frozen too after a while.
phone info:

  • manufacturer: 'Meizu'
  • model: 'Meizu m1 note'
  • version: '4.4.4'
  • abi: 'armeabi-v7a'
  • sdk: '19'

What is the possible reason for this problem? Both of the two devices use custom android ROM.

Activity

  1. sorccu commented on Nov 14, 2015

    @sorccu
    Member

    Probably minicap isn't able to convert the frames quickly enough on those devices, the system runs out of free framebuffers, and due to maker customizations decides to lock up itself instead of killing old buffers.

    The situation could be improved somewhat by using separate threads for the frame tracking and conversion, but I'm not sure when I'll have the time to work on that. Also, I don't have any device that exhibits that problem.

    If you or your company wants to get those devices supported, consider becoming a hardware sponsor to speed things up.

  2. gebitang commented on Nov 21, 2015

    @gebitang
    Author

    @sorccu First of all, thanks for your advice.
    It seems that this problem turns out to be that there are too many frames available before consuming them on above mentioned device OPPO.

    If we consume these available frames when there are more than 3 ones, and release consumed frame, then the device screen will be fine, no longer freeze anymore.

    this is some kind of work around I guess.


    But here is another thing, what if there is only one frame? This happened on Meitu phone(other custom ROM). Device is normal, you can do what you want, but minicap can only receive the first one frame.

    manufacturer: 'Meitu'
    model: 'Meitu MK150'
    version: '4.2.1'
    abi: 'armeabi-v7a'
    sdk: '17'
    

    What could cause that?

  3. a05151988 commented on Jun 2, 2016

    @a05151988

    Hello , I have the same issue.
    My phone information:

    manufacturer: 'Acer'
    model: 'S510'
    version: '4.2.2'
    abi: 'armeabi-v7a'
    sdk: '17'
    

    It just can get first one frame , when I touch phone screen , It dosen't change frame.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0