1. 01 Mar, 2023 7 commits
    • Update translations · 13a86b38
      #minor-release
      
      PiperOrigin-RevId: 512890813
      tonihei committed
    • Handle multiple sequences in a Composition · 128d8ff0
      This lays the groundwork for full multi-asset, and more particularly for
      adding looping background audio.
      
      PiperOrigin-RevId: 512887888
      kimvde committed
    • Ensure getPlaybackHeadPosition isn't called if not needed · 4cf7d3c7
      Once the value returned from AudioTimestampPoller advances, we
      only need getPlaybackHeadPosition to sample sync params and
      verify the returned timestamp. Both of these happen less often
      and we can avoid calling getPlaybackHeadPosition if we don't
      actually need it.
      
      PiperOrigin-RevId: 512882170
      tonihei committed
    • Increase GL release timeout to 500 ms · 05d36524
      Based on 1000 test runs an emulator, with the current timeout releasing
      fails (even with no custom effects) about one percent of the time.
      Releasing normally completes in about 30 ms but occasionally
      `eglTerminate` took up to 200 ms (and even releasing an effect
      took up to 80 ms in one case).
      
      With the new timeout of 500 ms, we still catch stuck effects reasonably
      quickly but the number of flaky test failures should be less than one in
      ten thousand.
      
      PiperOrigin-RevId: 512690715
      andrewlewis committed
    • Add FakeMultiPeriodLiveTimeline and test case · 28545c66
      This timeline will be used in unit test cases of follow-up
      CLs. It basically can be used to emulate the timeline created by a
      multi-period live media source when the real time advances.
      
      PiperOrigin-RevId: 512665552
      bachinger committed
    • Create DataSourceBitmapLoader · f2c06fff
      PiperOrigin-RevId: 512659747
      tofunmi committed
    • Fix some playback parameter signalling problems. · d3639771
      Playback parameter signalling can be quite complex because
       (a) the renderer clock often has a delay before it realizes
           that it doesn't support a previously set speed and
       (b) the speed set on media clock sometimes intentionally
           differs from the one surfaced to the user, e.g. during
           live speed adjustment or when overriding ad playback
           speed to 1.0f.
      
      This change fixes two problems related to this signalling:
       1. When resetting the media clock speed at a period transition,
          we don't currently tell the renderers that this happened.
       2. When a delayed speed change update from the media clock is
          pending and the renderer for this media clock is disabled
          before the change can be handled, the pending update becomes
          stale but it still applied later and overrides any other valid
          speed set in the meantime.
      
      Both edge cases are also covered by extended or new player tests.
      
      Issue: google/ExoPlayer#10882
      
      #minor-release
      
      PiperOrigin-RevId: 512658918
      tonihei committed
  2. 27 Feb, 2023 15 commits
  3. 24 Feb, 2023 18 commits