title: UDP stream not playing on ExoPlayer
body: <p>I am new in Exoplayer udp streaming. I already done some working on HTTP live streaming but not udp. Now trying to play a udp stream on exoplayer, googled a lot, but no luck. </p>
  
  <p>Please have a look on the following logcat. </p>
  
  <p>Any help would be appreciated.</p>
  
  <pre><code>04-03 21:33:45.376 31547-31827/com.chernowii.udp_stream_android E/ExoPlayerImplInternal: Source error.
      com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: Unable to connect to udp://@x.x.x.x:xxxx
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:194)
          at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:137)
          at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:692)
          at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
          at java.lang.Thread.run(Thread.java:762)
       Caused by: java.net.MalformedURLException: unknown protocol: udp
          at java.net.URL.&lt;init&gt;(URL.java:596)
          at java.net.URL.&lt;init&gt;(URL.java:486)
          at java.net.URL.&lt;init&gt;(URL.java:435)
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.makeConnection(DefaultHttpDataSource.java:341)
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:192)
          at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:137) 
          at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:692) 
          at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315) 
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
          at java.lang.Thread.run(Thread.java:762) 
  04-03 21:33:45.377 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerError...
  04-03 21:33:45.378 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onTimelineChanged...
      Listener-onLoadingChanged...isLoading:false
  04-03 21:33:45.379 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerStateChanged...1
  04-03 21:33:45.395 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerStateChanged...2
  04-03 21:33:45.396 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onTimelineChanged...
      Listener-onLoadingChanged...isLoading:true
  04-03 21:33:48.406 31547-31827/com.chernowii.udp_stream_android E/ExoPlayerImplInternal: Source error.
      com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: Unable to connect to udp://@224.2.2.1:3000
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:194)
          at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:137)
          at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:692)
          at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315)
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
          at java.lang.Thread.run(Thread.java:762)
       Caused by: java.net.MalformedURLException: unknown protocol: udp
          at java.net.URL.&lt;init&gt;(URL.java:596)
          at java.net.URL.&lt;init&gt;(URL.java:486)
          at java.net.URL.&lt;init&gt;(URL.java:435)
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.makeConnection(DefaultHttpDataSource.java:341)
          at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:192)
          at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:137) 
          at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:692) 
          at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315) 
          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
          at java.lang.Thread.run(Thread.java:762) 
  04-03 21:33:48.419 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerError...
  04-03 21:33:48.421 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onTimelineChanged...
  04-03 21:33:48.422 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onLoadingChanged...isLoading:false
  04-03 21:33:48.423 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerStateChanged...1
  04-03 21:33:48.440 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onPlayerStateChanged...2
  04-03 21:33:48.441 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onTimelineChanged...
  04-03 21:33:48.442 31547-31547/com.chernowii.udp_stream_android V/ExoPlayer GP Demo: Listener-onLoadingChanged...isLoading:true
  </code></pre>