futo-org / grayjay-android

Read-only mirror of Grayjay repo for issue tracking
https://gitlab.futo.org/videostreaming/grayjay
Other
418 stars 34 forks source link

[Bug] Wide Nebula video causes crash with PiP #922

Closed samir-nmx closed 2 weeks ago

samir-nmx commented 2 weeks ago

It seems the Nebula plugin does not properly handle videos that are too wide when switching to PiP. I tested wide videos on YouTube and they were cropped to 16:9 if they were too wide, but this one on Nebula caused the app to crash instead:

[https://nebula.tv/videos/lsoo-the-most-bonkers-franchise-of-the-20th-century]

Version information (version_name = 236, version_code = 236, flavor = stable, build_type = release)
Device information (brand= Xiaomi, manufacturer = Xiaomi, device = houji, version-sdk = 34, version-os = )

(e, ExceptionActivity, 2024-04-21 07:01:28): Uncaught exception ("Unknown Context"): enterPictureInPictureMode: Aspect ratio is too extreme (must be between 0.418410 and 2.390000).

java.lang.IllegalArgumentException: enterPictureInPictureMode: Aspect ratio is too extreme (must be between 0.418410 and 2.390000).
    at android.os.Parcel.createExceptionOrNull(Unknown Source:19)
    at android.os.Parcel.createException(Unknown Source:0)
    at android.os.Parcel.readException(Unknown Source:11)
    at android.os.Parcel.readException(Unknown Source:10)
    at android.app.IActivityClientController$Stub$Proxy.enterPictureInPictureMode(Unknown Source:32)
    at android.app.ActivityClient.enterPictureInPictureMode(Unknown Source:4)
    at android.app.Activity.enterPictureInPictureMode(Unknown Source:20)
    at com.futo.platformplayer.fragment.mainactivity.main.VideoDetailFragment.onUserLeaveHint(VideoDetailFragment.kt:292)
    at com.futo.platformplayer.activities.MainActivity.onUserLeaveHint(MainActivity.kt:876)
    at android.app.Activity.performUserLeaving(Unknown Source:3)
    at android.app.Instrumentation.callActivityOnUserLeaving(Unknown Source:0)
    at android.app.ActivityThread.performUserLeavingActivity(Unknown Source:11)
    at android.app.ActivityThread.handlePauseActivity(Unknown Source:2)
    at android.app.servertransaction.PauseActivityItem.execute(Unknown Source:20)
    at android.app.servertransaction.ActivityTransactionItem.execute(Unknown Source:4)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(Unknown Source:32)
    at android.app.servertransaction.TransactionExecutor.execute(Unknown Source:79)
    at android.app.ActivityThread$H.handleMessage(Unknown Source:233)
    at android.os.Handler.dispatchMessage(Unknown Source:19)
    at android.os.Looper.loopOnce(Unknown Source:198)
    at android.os.Looper.loop(Unknown Source:83)
    at android.app.ActivityThread.main(Unknown Source:123)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(Unknown Source:11)
    at com.android.internal.os.ZygoteInit.main(Unknown Source:378)
Kelvin-FUTO commented 2 weeks ago

This will be solved in upcoming version 238+ (release this week)