
The existing NullableType has been deprecated 5 years ago and causes crashes in Kotlin apps because Kotlin doesn't recognize this annotation as a nullable type annotation. While we can't align on a single @Nullable annotation yet, we can at least replace this one by JSR305's @Nonnull(MAYBE) as it fulfils all requirements, including full Kotlin compatiblity. To avoid the cumbersome name, we can redefine it as our own @NullableType annotation. (We can't use @Nullable to avoid name clashes with the main @Nullable annotation from AndroidX) Issue: google/ExoPlayer#6792 PiperOrigin-RevId: 540497469
ExoPlayer GL demo
This app demonstrates how to render video to a GLSurfaceView while applying a GL shader.
The shader shows an overlap bitmap on top of the video. The overlay bitmap is drawn using an Android canvas, and includes the current frame's presentation timestamp, to show how to get the timestamp of the frame currently in the off-screen surface texture.
Please see the demos README for instructions on how to build and run this demo.