diff --git a/RELEASENOTES.md b/RELEASENOTES.md index bc9f64a001..4f75b95663 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -19,6 +19,8 @@ * Add VR player demo. * Wrap decoder exceptions in a new `DecoderException` class and report as renderer error. +* Add support for auto-detecting UDP streams in `DefaultDataSource` + ([#6036](https://github.com/google/ExoPlayer/pull/6036)). ### 2.10.2 ### diff --git a/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java b/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java index aeaa977b12..dec035c12e 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/upstream/DefaultDataSource.java @@ -42,6 +42,7 @@ import java.util.Map; *
  • rtmp: For fetching data over RTMP. Only supported if the project using ExoPlayer has an * explicit dependency on ExoPlayer's RTMP extension. *
  • data: For parsing data inlined in the URI as defined in RFC 2397. + *
  • udp: For fetching data over UDP (e.g. udp://something.com/media). *
  • http(s): For fetching data over HTTP and HTTPS (e.g. https://www.something.com/media.mp4), * if constructed using {@link #DefaultDataSource(Context, String, boolean)}, or any other * schemes supported by a base data source if constructed using {@link @@ -164,7 +165,7 @@ public final class DefaultDataSource implements DataSource { dataSource = getContentDataSource(); } else if (SCHEME_RTMP.equals(scheme)) { dataSource = getRtmpDataSource(); - } else if(SCHEME_UDP.equals(scheme)){ + } else if (SCHEME_UDP.equals(scheme)) { dataSource = getUdpDataSource(); } else if (DataSchemeDataSource.SCHEME_DATA.equals(scheme)) { dataSource = getDataSchemeDataSource(); @@ -204,7 +205,7 @@ public final class DefaultDataSource implements DataSource { } } - private DataSource getUdpDataSource(){ + private DataSource getUdpDataSource() { if (udpDataSource == null) { udpDataSource = new UdpDataSource(); addListenersToDataSource(udpDataSource);