1. 04 Feb, 2022 4 commits
  2. 02 Feb, 2022 12 commits
  3. 01 Feb, 2022 9 commits
  4. 28 Jan, 2022 15 commits
    • Rollback of https://github.com/google/ExoPlayer/commit/651fa0dbb7c935480ab82a4ddf370b43134a45ab · 91511039
      *** Original commit ***
      
      Apply suggested AVC profile depending on the API version.
      
      ***
      
      PiperOrigin-RevId: 424856077
      claincly committed
    • Publish the transformer demo app · b81568f8
      PiperOrigin-RevId: 424850283
      andrewlewis committed
    • Remove opt-out for suppressing wrong thread usage error. · 174d9948
      Enforcing the correct thread usage has been enabled since 2.13.0.
      Opting-out of this enforement is dangerous as it can hide very hard
      to debug bugs.
      
      PiperOrigin-RevId: 424815808
      tonihei committed
    • Fix NPE in Transformer.getProgress() · 1402bd6f
      If muxerWrapper.release() was throwing an exception, the progress state
      was not updated and getProgress could throw an exception.
      
      #minor-release
      
      PiperOrigin-RevId: 424696783
      kimvde committed
    • Remove `FOREGROUND_SERVICE` permission · 6e305936
      This shouldn't be required for transformer instrumentation tests, as they don't use a foreground service.
      
      PiperOrigin-RevId: 424654463
      andrewlewis committed
    • Make sure that onTransformationError is called once · 98a99729
      The second error is probably a consequence of the first one.
      
      #minor-release
      
      PiperOrigin-RevId: 424619944
      kimvde committed
    • Fix transformer stuck forever · 8ec18086
      When the decoder output buffer was partially read, a call to
      Codec.getOutputBuffer() was returning the same buffer, but with the
      position reset to 0. The reason was that, in
      Codec.maybeDequeueAndSetOutputBuffer(), mediaCodec.getOutputBuffer()
      was called with the same buffer index (L350 in old rev), even though
      there was already a buffer available (outputBufferIndex >=0). This
      change avoids calling mediaCodec.getOutputBuffer() if the previous
      buffer has not been released.
      
      #minor-release
      
      PiperOrigin-RevId: 424612197
      kimvde committed
    • Take encoder resolution fallback into account in video sample pipeline. · 8123ef5d
      If the encoder picks a fallback resolution the video pipeline needs
      to take this into account when configuring the frameEditor and when
      setting up the fallback TransformationRequest that's passed to the
      fallbackListener.
      
      PiperOrigin-RevId: 424611290
      hschlueter committed
    • Make audio track min buffer size configurable. · 901a5a48
      Move the code in its own class as DefaultAudioTrack
      is getting very big. It also help for testability.
      
      The new class is easily configurable and highly tested.
      Manual test was used to catch any regression.
      
      https://github.com/google/ExoPlayer/issues/8891
      
      PiperOrigin-RevId: 424602011
      krocard committed
    • Remove unneccessary nullability. · 777246d9
      AnalyticsCollector can't be null when passed into ExoPlayerImplInternal,
      so there is no need to pass it around as nullable.
      
      PiperOrigin-RevId: 424594031
      tonihei committed
    • Fix flakiness in DefaultPlaybackSessionManagerTest · 145e923d
      Two of the sessions are finished at the same time in the test
      and the order of the corresponding callbacks depends on the randomly
      generated session string and the order these strings are stored in a
      HashSet.
      
      Update test to assert both callbacks are called and they contain the
      right arguments, but don't assert on the order of these two callbacks.
      
      PiperOrigin-RevId: 424548819
      tonihei committed
    • Enforce unit speed for ad playback · 73d9728f
      Ad playback shouldn't be affected by manual speed adjustments set
      by the user. This change enforces unit speed for ad playback.
      
      Issue: google/ExoPlayer#9018
      PiperOrigin-RevId: 424546258
      tonihei committed
    • Propagate error policy to ProgressiveMediaSource used for subtitles · be43ac75
      This only affects playbacks using the
      experimentalUseProgressiveMediaSourceForSubtitles method.
      
      Also update the SingleSampleMediaSource instantiation to be more
      similar, to try and highlight differences like this in future.
      
      PiperOrigin-RevId: 424545980
      ibaker committed
    • Move playback speed update at period transitions to reading period. · 8c685aba
      In some cases we need to update the PlaybackParameters at period
      boundaries, for example when switching from live to VOD and live
      playback speed adjustment was still active at the point of switching.
      
      Currently, we send the update when the playing MediaPeriod changes in
      EPII, which is slightly too late because the new speed gets only applied
      after the entire existing AudioTrack buffer has been played out.
      
      We can time the update slightly better by updating the values at the
      point where we change the reading period. This makes the update slightly
      too early because it also applies to all samples currently in the
      decoder. But generally, this is a lot better because the time spent
      in the decoder is likely to be considerably lower than the duration of
      the AudioTrack buffer.
      
      Note that this change isn't perfectly aligning to the period boundary,
      but reduces the number of samples with the wrong speed to a minimum.
      If we are getting around to add additional code that allows updating
      the speed at exactly the boundary, it also needs to be triggered from
      the reading period update, so the new code location is also helpful in
      the future.
      
      Issue: google/ExoPlayer#9018
      PiperOrigin-RevId: 424540551
      tonihei committed
    • Wrap expression in paranthesis · bfa68866
      When I locally link to exoplayer source modules as described in the README and I
      do this directly into a fig/citc client, I get an error saying
      "missing_aar_type_workaround.gradle': 79: unexpected token: || @ line 79, column
      29.". I can fix this by wrapping the expression in parenthesis (¯\_(ツ)_/¯).
      
      I don't think this file lands in the public source tree, but if we want to
      correct this, it may help someone from the team.
      
      This CL can be ignored and reverted also.
      
      PiperOrigin-RevId: 424537619
      bachinger committed