media3/extensions/rtmp/README.md
olly 6fe2f25fe9 Update DataSource extension documentation
Also upgrade the RTMP extension to use an inner class
for its factory.

PiperOrigin-RevId: 381469114
2021-06-30 13:39:09 +01:00

2.1 KiB

ExoPlayer RTMP extension

The RTMP extension is a DataSource implementation for playing RTMP streams using LibRtmp Client for Android.

License note

Please note that whilst the code in this repository is licensed under Apache 2.0, using this extension requires depending on LibRtmp Client for Android, which is licensed separately.

Getting the extension

The easiest way to use the extension is to add it as a gradle dependency:

implementation 'com.google.android.exoplayer:extension-rtmp:2.X.X'

where 2.X.X is the version, which must match the version of the ExoPlayer library being used.

Alternatively, you can clone the ExoPlayer repository and depend on the module locally. Instructions for doing this can be found in ExoPlayer's top level README.

Using the extension

ExoPlayer requests data through DataSource instances. These instances are obtained from instances of DataSource.Factory, which are instantiated and injected from application code.

DefaultDataSource will automatically use the RTMP extension whenever it's available. Hence if your application is using DefaultDataSource or DefaultDataSourceFactory, adding support for RTMP streams is as simple as adding a dependency to the RTMP extension as described above. No changes to your application code are required. Alternatively, if you know that your application doesn't need to handle any other protocols, you can update any DataSource.Factory instantiations in your application code to use RtmpDataSource.Factory directly.

  • Javadoc: Classes matching com.google.android.exoplayer2.ext.rtmp.* belong to this module.