media3/libraries/exoplayer_rtsp
tonihei 51fb72b00d Replace deprecated NullableType from checkerframework with our own one
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
2023-06-19 16:08:20 +01:00
..

ExoPlayer RTSP module

Provides support for RTSP playbacks in ExoPlayer.

Getting the module

The easiest way to get the module is to add it as a gradle dependency:

implementation 'androidx.media3:media3-exoplayer-rtsp:1.X.X'

where 1.X.X is the version, which must match the version of the other media modules being used.

Alternatively, you can clone this GitHub project and depend on the module locally. Instructions for doing this can be found in the top level README.

Using the module

Adding a dependency to this module is all that's required to enable playback of RTSP media items added to ExoPlayer in its default configuration. Internally, DefaultMediaSourceFactory will automatically detect the presence of the module and convert a RTSP MediaItem into a RtspMediaSource for playback.

For advanced playback use cases, applications can build RtspMediaSource instances and pass them directly to the player.