1. 23 May, 2022 5 commits
    • Do not setOffloadEndOfStream if AudioTrack is not playing · 3c9b0b9b
      AudioTrack.setOffloadEndOfStream should be called after a track
      has been buffered. Additionally, the AudioTrack must be playing.
      
      It has been observed that for very short media (<1s), the AudioTrack
      might not have started immediately after the read that buffered
      the audio.
      
      In such a situation, calling AudioTrack.setOffloadEndOfStream throws
      and playback fails.
      
      Avoid this failure by checking that the AudioTrack is playing before
      calling setOffloadEndOfStream.
      
      This means that very short gapless media will not be gapless, this was
      deemed acceptable given that such very short media should be very rare
      in offload.
      
      PiperOrigin-RevId: 450431146
      bachinger committed
    • Add a dev guide section about ForwardingPlayer · 96f35bbc
      Issue: google/ExoPlayer#9897
      Issue: google/ExoPlayer#10268
      
      #minor-release
      
      PiperOrigin-RevId: 450428520
      ibaker committed
    • Skip performance tests if device is not capable. · ffb75d74
      PiperOrigin-RevId: 450427828
      claincly committed
    • Add `DefaultMediaSourceFactory.setDataSourceFactory` · e39a324b
      Also add this to the stable API instead of the constructor that takes
      `DataSource.Factory`.
      
      PiperOrigin-RevId: 450414119
      ibaker committed
    • Rollback of 57182ac7 · 274f3a13
      *** Original commit ***
      
      Remove `@Nullable` from `MediaSource.Factory` setters
      
      The null-behaviour of these methods creates a minimization footgun,
      because **any** call to these setters will prevent R8 from removing
      the default implementation (even if it's never used by the app) - this
      is because R8 can't tell the default implementation is only used if the
      parameter is `null`.
      
      ******
      
      PiperOrigin-RevId: 450410833
      ibaker committed
  2. 24 May, 2022 33 commits
  3. 10 May, 2022 1 commit
  4. 09 May, 2022 1 commit