A clear and concise description of what the bug is.
Currently, when I try to use scrcpy, a window of my phone's screen pops up very shortly (for about a split second from the phone's output? not entirely sure about this), then closes again. Not entirely sure what's causing the issue here, but it renders scrcpy unusable with the newest beta on my phone. (side note: it worked with the previous beta version, so something may have changed significantly enough to break.)
scrcpy 3.3.2 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO: --> (tcpip) awooPixel:42731 device Pixel_7_Pro
/usr/share/scrcpy/scrcpy-server: 1 file pushed, 0 skipped. 171.4 MB/s (90808 bytes in 0.001s)
[server] INFO: Device: [Google] google Pixel 7 Pro (Android 16)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6 (Compatibility Profile) Mesa 25.2.2-arch1.2
INFO: Trilinear filtering enabled
[server] ERROR: Exception on thread Thread[binder:24022_3,5,main]
java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
at android.view.IDisplayWindowListener$Stub.onTransact(IDisplayWindowListener.java:257)
at android.os.Binder.execTransactInternal(Binder.java:1478)
at android.os.Binder.execTransact(Binder.java:1418)
INFO: Texture: 1440x3120
WARN: Device disconnected
Aborted
09-18 02:09:47.939 24931 24931 D AndroidRuntime: Calling main entry com.genymobile.scrcpy.Server
09-18 02:09:47.943 24931 24931 I scrcpy : Device: [Google] google Pixel 7 Pro (Android 16)
09-18 02:09:48.164 24942 24942 D AndroidRuntime: Calling main entry com.genymobile.scrcpy.CleanUp
09-18 02:09:48.261 738 2218 D SurfaceFlinger: Creating virtual display: scrcpy
09-18 02:09:48.261 1614 4273 I DisplayDeviceRepository: Display device added: DisplayDeviceInfo{"scrcpy": uniqueId="virtual:com.android.shell,2000,scrcpy,5", 1440 x 3120, modeId 10, renderFrameRate 60.0, hasArrSupport false, frameRateCategoryRate null, supportedRefreshRates [], defaultModeId 10, userPreferredModeId -1, supportedModes [{id=10, width=1440, height=3120, fps=60.0, vsync=60.0, synthetic=false, alternativeRefreshRates=[], supportedHdrTypes=[]}], colorMode 0, supportedColorModes [0], hdrCapabilities null, isForceSdr false, allmSupported false, gameContentTypeSupported false, density 1, 1.0 x 1.0 dpi, appVsyncOff 0, presDeadline 16666666, touch NONE, rotation 0, type VIRTUAL, deviceProductInfo null, state UNKNOWN, committedState UNKNOWN, owner com.android.shell (uid 2000), frameRateOverride , brightnessMinimum 0.0, brightnessMaximum 1.0, brightnessDefault 0.0, brightnessDim -1.0, hdrSdrRatio NaN, FLAG_PRIVATE, installOrientation 0, displayShape DisplayShape{ spec=2091232517 displayWidth=1440 displayHeight=3120 physicalPixelDisplaySizeRatio=1.0 rotation=0 offsetX=0 offsetY=0 scale=1.0}}
09-18 02:09:48.264 1614 1675 I DisplayDevice: [7] Layerstack set to 7 for virtual:com.android.shell,2000,scrcpy,5
09-18 02:09:48.289 24931 24971 E JavaBinder: java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
09-18 02:09:48.289 24931 24971 E AndroidRuntime: java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
09-18 02:09:48.289 24931 24971 E scrcpy : Exception on thread Thread[binder:24931_4,5,main]
09-18 02:09:48.289 24931 24971 E scrcpy : java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
09-18 02:09:48.289 24931 24971 E scrcpy : at android.view.IDisplayWindowListener$Stub.onTransact(IDisplayWindowListener.java:257)
09-18 02:09:48.289 24931 24971 E scrcpy : at android.os.Binder.execTransactInternal(Binder.java:1478)
09-18 02:09:48.289 24931 24971 E scrcpy : at android.os.Binder.execTransact(Binder.java:1418)
09-18 02:09:48.289 24931 24971 F app_process: jni_internal.cc:824] JNI FatalError called: java.lang.Error thrown during binder transaction: java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
09-18 02:09:48.295 1614 1724 I DisplayPowerController[7]: BrightnessEvent: brt=0.0(0.0%), nits=-1.0, lux=-1.0, reason=manual, strat=FallbackBrightnessStrategy, state=ON, stateReason=DEFAULT_POLICY, policy=BRIGHT, flags=, initBrt=NaN, rcmdBrt=NaN, preBrt=NaN, preLux=0.0, wasShortTermModelActive=false, autoBrightness=true (default), unclampedBrt=0.0, hbmMax=1.0, hbmMode=off, thrmMax=1.0, rbcStrength=-1, powerFactor=1.0, physDisp=scrcpy(virtual:com.android.shell,2000,scrcpy,5), logicalId=7, slowChange=false, rampSpeed=1.0
09-18 02:09:48.295 1614 24975 D VirtualDisplayAdapter: Changing state of virtual display scrcpy from UNKNOWN to ON
09-18 02:09:48.295 1614 24975 D VirtualDisplayAdapter: Requesting power mode for display scrcpy to 2
09-18 02:09:48.295 1614 1674 I DisplayDeviceRepository: Display device changed state: "scrcpy", ON
09-18 02:09:48.298 738 738 E SurfaceFlinger: [scrcpy] getUniqueId: Invalid operation on virtual display
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] - waiting on <0x09d52a36> (a com.genymobile.scrcpy.CleanUp)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.CleanUp.run(CleanUp.java:150)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] - locked <0x09d52a36> (a com.genymobile.scrcpy.CleanUp)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.CleanUp.runCleanUp(CleanUp.java:119)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.CleanUp.lambda$new$0$com-genymobile-scrcpy-CleanUp(CleanUp.java:34)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.CleanUp$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.ControlMessageReader.read(ControlMessageReader.java:26)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.ControlChannel.recv(ControlChannel.java:18)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.Controller.handleEvent(Controller.java:261)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.Controller.control(Controller.java:219)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.Controller.lambda$start$1$com-genymobile-scrcpy-control-Controller(Controller.java:227)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.Controller$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.audio.AudioDirectCapture.startRecording(AudioDirectCapture.java:103)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.audio.AudioDirectCapture.start(AudioDirectCapture.java:125)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.audio.AudioEncoder.encode(AudioEncoder.java:235)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.audio.AudioEncoder.lambda$start$0$com-genymobile-scrcpy-audio-AudioEncoder(AudioEncoder.java:158)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.audio.AudioEncoder$$ExternalSyntheticLambda4.run(D8$$SyntheticClass:0)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.Server.scrcpy(Server.java:168)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.Server.internalMain(Server.java:267)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.Server.main(Server.java:215)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.DeviceMessageSender.loop(DeviceMessageSender.java:28)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.DeviceMessageSender.lambda$start$0$com-genymobile-scrcpy-control-DeviceMessageSender(DeviceMessageSender.java:36)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.control.DeviceMessageSender$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.video.SurfaceEncoder.encode(SurfaceEncoder.java:202)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.video.SurfaceEncoder.streamCapture(SurfaceEncoder.java:110)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.video.SurfaceEncoder.lambda$start$0$com-genymobile-scrcpy-video-SurfaceEncoder(SurfaceEncoder.java:296)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] at com.genymobile.scrcpy.video.SurfaceEncoder$$ExternalSyntheticLambda0.run(D8$$SyntheticClass:0)
09-18 02:09:48.357 24931 24971 F app_process: runtime.cc:715] Pending exception java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>
09-18 02:09:48.678 24990 24990 F DEBUG : Cmdline: app_process / com.genymobile.scrcpy.Server 3.3.2 scid=35a74d33 log_level=info
09-18 02:09:48.679 24990 24990 F DEBUG : Abort message: 'JNI FatalError called: java.lang.Error thrown during binder transaction: java.lang.AbstractMethodError: abstract method "void android.view.IDisplayWindowListener.onDisplayAnimationsDisabledChanged(int, boolean)" on receiver java.lang.Class<com.genymobile.scrcpy.video.DisplaySizeMonitor$1>'
09-18 02:09:48.753 24942 24942 I scrcpy : Cleaning up
09-18 02:09:48.754 738 2218 D SurfaceFlinger: Destroying virtual display: scrcpy
09-18 02:09:48.756 1614 1674 I DisplayDeviceRepository: Display device removed: DisplayDeviceInfo{"scrcpy": uniqueId="virtual:com.android.shell,2000,scrcpy,5", 1440 x 3120, modeId 10, renderFrameRate 60.0, hasArrSupport false, frameRateCategoryRate null, supportedRefreshRates [], defaultModeId 10, userPreferredModeId -1, supportedModes [{id=10, width=1440, height=3120, fps=60.0, vsync=60.0, synthetic=false, alternativeRefreshRates=[], supportedHdrTypes=[]}], colorMode 0, supportedColorModes [0], hdrCapabilities null, isForceSdr false, allmSupported false, gameContentTypeSupported false, density 1, 1.0 x 1.0 dpi, appVsyncOff 0, presDeadline 16666666, touch NONE, rotation 0, type VIRTUAL, deviceProductInfo null, state ON, committedState UNKNOWN, owner com.android.shell (uid 2000), frameRateOverride , brightnessMinimum 0.0, brightnessMaximum 1.0, brightnessDefault 0.0, brightnessDim -1.0, hdrSdrRatio NaN, FLAG_PRIVATE, installOrientation 0, displayShape DisplayShape{ spec=2091232517 displayWidth=1440 displayHeight=3120 physicalPixelDisplaySizeRatio=1.0 rotation=0 offsetX=0 offsetY=0 scale=1.0}}
Please read the prerequisites to run scrcpy.
Also read the FAQ and check if your issue already exists.
Environment
pacman)Describe the bug
A clear and concise description of what the bug is.
On errors, please provide the output of the console (and
adb logcatif relevant).Currently, when I try to use scrcpy, a window of my phone's screen pops up very shortly (for about a split second from the phone's output? not entirely sure about this), then closes again. Not entirely sure what's causing the issue here, but it renders scrcpy unusable with the newest beta on my phone. (side note: it worked with the previous beta version, so something may have changed significantly enough to break.)
Log output on my computer's end
adb logcatoutput on my phone's end:(important edit: this is filtered through
grep, filtering for lines containing "scrcpy" only. if this is missing something relevant to fixing this issue, please let me know!)