1. 10 Oct, 2022 3 commits
    • Adjust track selection with Dolby Vision if display does not support · 46dfb1b7
      If the sample type is Dolby Vision and the display does not support Dolby Vision, then the capabilities DecoderSupport flag is set to DECODER_SUPPORT_FALLBACK_MIMETYPE. This denotes that the renderer will use a decoder for a fallback mimetype if possible. This alters track selection as tracks with DecoderSupport DECODER_SUPPORT_PRIMARY are preferred.
      
      UnitTests included
      -DefaultTrackSelector test that checks track selection reordering with DECODER_SUPPORT_FALLBACK_MIMETYPE
      -MediaCodecVideoRenderer test that checks setting of DecoderSupport flag based on Display's Dolby Vision support
      
      Issue: google/ExoPlayer#8944
      PiperOrigin-RevId: 480040876
      (cherry picked from commit 266de1b2)
      michaelkatz committed
    • MediaControllerListenerTest: use local MediaController instances · 20b086ce
      Replace the instance-field MediaController with a local instance created
      in each test.
      
      PiperOrigin-RevId: 480039768
      (cherry picked from commit ba1ecafb)
      christosts committed
    • Set new playlist and start index with one command · d35f67a8
      PlayableFolderActivity currently uses two seperate commands
      to set the playlist and then seek to the requested item.
      
      This is slightly inefficient and also causes analytics
      listeners to believe the first item in the playlist was
      briefly active.
      
      #minor-release
      
      Issue: androidx/media#180
      PiperOrigin-RevId: 480031682
      (cherry picked from commit 5d6d069e)
      tonihei committed
  2. 07 Oct, 2022 5 commits
  3. 06 Oct, 2022 3 commits
  4. 05 Oct, 2022 4 commits
  5. 04 Oct, 2022 2 commits
    • HDR: Check isToneMappingApplied in HDR editing test. · 4449ba9c
      Assert that tone mapping is applied when an HDR edit cannot be HDR, but is successfully tone mapped. Meanwhile, assert that fallback, which is applied after codec configuration (which throws the "Tone-mapping requested but not supported by the decoder" error) is not applied when that error is called.
      
      PiperOrigin-RevId: 478762951
      (cherry picked from commit 253486d4)
      huangdarwin committed
    • Allow using different notification IDs for different media sessions · 9842c273
      When a media service currently produces multiple media sessions, the notification of the second session overwrites the notification of the first one, because all sessions use the same notification ID. When we use different notification IDs for different sessions, multiple media notifications can be up at the same time, which means that they can both be controlled at the same time.
      
      PiperOrigin-RevId: 478709069
      (cherry picked from commit 7783c6e4)
      Googler committed
  6. 03 Oct, 2022 1 commit
  7. 30 Sep, 2022 3 commits
  8. 29 Sep, 2022 1 commit
  9. 28 Sep, 2022 3 commits
  10. 27 Sep, 2022 2 commits
  11. 26 Sep, 2022 4 commits
    • Fix badly formatted AudioProcessor javadoc. · b39dff76
      PiperOrigin-RevId: 476909855
      (cherry picked from commit 3e4aa050)
      samrobinson committed
    • Remove test that just times out · c91cdb49
      One of the tests in MediaBrowserListenerTest caused the remote
      browser service to crash and then just timed out. As this asserts
      nothing useful besides checking that the timeout method is working,
      we can remove the test.
      
      Crashing the remote browser service had the side effect of letting
      subsequent tests in the same class fail because the previous session
      was never released and was still present in the static MediaSession
      SESSION_ID_TO_SESSION_MAP instance, which prevented the creation
      of new sessions with the same id. This is only an issue in test
      runs because a real process would also lose its static variables
      when it crashes.
      
      PiperOrigin-RevId: 476905337
      (cherry picked from commit d2887d52)
      tonihei committed
    • Don't start the service in the foreground with a pause intent · 05ebdb92
      `PlaybackStateCompat.toKeyCode(command)` was replaced by our
      own implementation of `toKeyCode()`. The legacy implementation used PLAY and PAUSE, while the new implementation uses PLAY_PAUSE. This made `pause` a pending intent that attempt to start the service in the foreground, but `service.startForeground()` won't be called in `MediaNotificationManager.updateNotificationInternal` when paused.
      
      PiperOrigin-RevId: 476895752
      (cherry picked from commit acd9e581)
      bachinger committed
    • HDR: Update gamma comments to linear. · 4c3acbf7
      Comment-only change.
      
      PiperOrigin-RevId: 476873286
      (cherry picked from commit 16dca182)
      huangdarwin committed
  12. 23 Sep, 2022 4 commits
  13. 30 Sep, 2022 1 commit
  14. 23 Sep, 2022 4 commits