1. 25 May, 2023 8 commits
  2. 18 May, 2023 20 commits
  3. 17 May, 2023 12 commits
    • Enable live DASH stream for IMA DAI · 73b82337
      This change enables the IMA extension to play live DASH streams
      with DAI support. Samples streams can be found and played in the
      main demo app.
      
      Issue: google/ExoPlayer#10912
      #minor-release
      PiperOrigin-RevId: 532407708
      (cherry picked from commit 806f19c44dd3685be119bdc78e0e09f22fca13e1)
      bachinger committed
    • Update mixed input test to include images of different aspect ratios · fcc11a08
      Makes this test a little more thorough.
      
      PiperOrigin-RevId: 532386515
      (cherry picked from commit 8ab38dc3f97330ecb823f0beb0dc16e79da89d17)
      tofunmi committed
    • Test: Suppress SSIM timeouts on galaxy fold/flip. · 05c2ff34
      This is a failure only in SSIM, so it seems unlikely we'll prioritize this over
      other work or bugs soon. Suppress test failures to reduce triage burden.
      
      PiperOrigin-RevId: 532200729
      (cherry picked from commit 7050340b73529b1b8480b71676b512b9e0cf4c98)
      huangdarwin committed
    • Remove two deprecated `InvalidResponseCodeException` constructors · 14026a5f
      Use a non-deprecated constructor that accepts additional fields(`cause`, `responseBody`) to enhance error logging.
      
      #minor-release
      
      PiperOrigin-RevId: 532190896
      (cherry picked from commit d73f7dd0be749f3a786c6559ac77e7f2b88ac2c0)
      rohks committed
    • Add Player.replaceMediaItem(s) · 6197b576
      This methods allows to replace single items or a range of items directly
      without using separate operations for add and remove. The advantage is
      more readable code for apps and the potential for player
      implementations to optimize this process (e.g. only replace values
      without interrupting playback).
      
      The current change just introduces the API with its default behavior.
      The default logic will be removed again in the future in favor of
      better logic in the Player implementations.
      
      Issue: google/ExoPlayer#8046
      PiperOrigin-RevId: 532151471
      (cherry picked from commit 7289186c937245a4f328f4c9b6e9cda34129306a)
      tonihei committed
    • Allow ExoPlayer to opt into volume device control, forbidden by default · cc1ad85c
      PiperOrigin-RevId: 532136692
      (cherry picked from commit 4518dbfdc8e6d6228d2a39e0db4bb1b6245e15d7)
      jbibik committed
    • Remove deprecated `DefaultDrmSessionManager` constructors · 7ebf05c3
      Use `DefaultDrmSessionManager.Builder` instead.
      
      #minor-release
      
      PiperOrigin-RevId: 532102375
      (cherry picked from commit 9d039c6ff0452431d8ec30d42a615b4e85602e5d)
      ibaker committed
    • Effect: Multiple Texture output · 719715d2
      Allow the VideoFrameProcessor to output multiple textures at a time, so that
      lifetime of textures is up to the consumer calling VFP.releaseOutputFrame.
      
      The FinalShaderProgramWrapper also has a new maxCapacity limit added, to ensure
      the a reasonable amount of textures is used and avoid using up memory.
      
      PiperOrigin-RevId: 532094256
      (cherry picked from commit 025f71bec45e06b19b7237967af2677b84387b08)
      huangdarwin committed
    • Fix lost shader input capacity after end-of-stream · 568233f6
      When exporting compositions with multiple images in a row, transformation could
      get stuck if a shader was ready to accept input when end-of-stream was already
      signaled and queued from upstream. Fix accounting for the downstream capacity.
      
      Manually tested on concatenations with several images and several videos in a
      row, by adding logging and verifying the capacity updates as expected across
      edited media item transitions.
      
      PiperOrigin-RevId: 532088793
      (cherry picked from commit 73d05d5d9dc6fdf06c59c6cb2247efba3bbc9f86)
      andrewlewis committed
    • Delete deprecated zero-arg `DefaultBandwidthMeter` constructor · 02b989f5
      Use `DefaultBandwidthMeter.Builder` instead.
      
      #minor-release
      
      PiperOrigin-RevId: 532069549
      (cherry picked from commit 8a9ac8a9de8a62f33f61257ace98440f4ab22bfc)
      ibaker committed
    • Refactor SequenceAssetLoader release · 31a9680a
      In the past, the SequenceAssetLoader was released in TransformerInternal
      when the export ended.
      
      https://github.com/google/ExoPlayer/commit/782f19edcf9dcc4ecf47dc32776429990c4a928f was made to release the SequenceAssetLoader earlier, when
      loading ended. This was causing player release timeouts because the last
      AssetLoader in the sequence was released before the SamplePipelines (see
      https://github.com/google/ExoPlayer/commit/78669f874309aa1ea9d7679707afde8f747f0c2b for more information).
      
      The code that was releasing the SequenceAssetLoader was first commented
      out because we didn't have an understanding of what was happening.
      
      This change removes the early SequenceAssetLoader release all together.
      It doesn't have any effect as this code was already commented out.
      
      PiperOrigin-RevId: 532065673
      (cherry picked from commit ff515c1d74339df8dad11ed7b9ea6c571d3c90e9)
      kimvde committed
    • Signal end-of-stream after creating latch · 45b51d26
      The output end-of-stream notification from the last shader could theoretically
      arrive before the latch for detecting it is created, which might cause waiting
      on the latch indefinitely. Create the latch before signaling end of stream so
      that it's guaranteed to be set before the end-of-stream signal arrives.
      
      PiperOrigin-RevId: 532056472
      (cherry picked from commit 53c379cb98874c7697965a82fbd2aa29063a238b)
      andrewlewis committed