Search code examples
androidadbscreen-capture

adb shell screencap return black image from video


I am trying to get a screenshot of a video on android 9 using standard command:

adb shell screencap -p /sdcard/printscreen.png

That works fine with any static content but just returns a black picture when trying to get screenshot of a video. I have seen quite a few similar questions, however do not seem to find an answer. Any suggestions?


Solution

  • The issue seems to come from OpenGL. I have it working with:

    1 - Open VLC on Android device
    2 - Goto: Other => Settings
    3 - Goto: Advanced => OpenGL ES2 usage
    4 - Select "Force On"
    5 - Back up one level, and select "Quit and restart application"

    Alternatively, add the following line to data/data/org.videolan.vlc/shared_prefs/org.videolan.vlc_preferences.xml

    <string name="opengl">1</string>
    

    Now, the following command should work

    adb shell screencap /sdcard/printscreen.png