1. 18 Apr, 2023 3 commits
  2. 17 Apr, 2023 25 commits
  3. 13 Apr, 2023 4 commits
  4. 12 Apr, 2023 8 commits
    • Enable multidex for demo-gl app · 81fd9d28
      #minor-release
      
      PiperOrigin-RevId: 523708424
      rohks committed
    • Update comment on `Track.nalUnitLengthFieldLength` · 642d34ff
      This field is also non-zero for h.265 tracks.
      
      PiperOrigin-RevId: 523676455
      ibaker committed
    • Remove cache term from TestUtil methods · 61822012
      PiperOrigin-RevId: 523675327
      sheenachhabra committed
    • Rename misleading COMMAND_GET/SET_MEDIA_ITEMS_METADATA · c5baf238
      The setter command is only used for setPlaylistMetadata and can
      be named COMMAND_SET_PLAYLIST_METADATA. The getter commnad is
      used to access getMediaMetadata and getPlaylistMetadata and can
      be better named COMMAND_GET_METADATA to reflect this usage.
      
      PiperOrigin-RevId: 523673286
      tonihei committed
    • Channel mix to 16-bit int not float · affc2370
      Previously `ChannelMixingAudioProcessor` output float because it was
      implemented using the audio mixer's float mixing support.
      
      Move the implementation over to just using the `ChannelMixingMatrix` and make
      it publicly visible in the common module so it can be used by apps for both
      playback and export.
      
      Also resolve a TODO that no longer had a bug attached by implementing support
      for putting multiple mixing matrices to handle different input audio channel
      counts, and fix some nits in the test code.
      
      Tested via unit tests and manually configuring a `ChannelMixingAudioProcessor`
      in the transformer demo app and playing an audio stream that identifies
      channels, and verifying that they are remapped as expected.
      
      PiperOrigin-RevId: 523653901
      andrewlewis committed
    • Mark MediaController methods final to prevent accidental overrides · 2a6472f9
      It's currently not possible to even subclass MediaController because
      the constructor is package-private. To avoid any accidental usage or
      future indirect subclassing, all methods can be marked as final.
      
      PiperOrigin-RevId: 523648114
      tonihei committed
    • Precedence for app provided media button receiver · e54a9343
      This change selects the best suited media button receiver
      component and pending intent when creating the legacy
      session. This is important to ensure that a service can
      be started with a media button event from BT headsets
      after the app has been terminated.
      
      The `MediaSessionLegacyStub` selects the best suited
      receiver to be passed to the `MediaSessionCompat`
      constructor.
      
      1. When the app has declared a broadcast receiver for
       `ACTION_MEDIA_BUTTON` in the manifest, this broadcast
       receiver is used.
      2. When the session is housed in a service, the service
       component is used as a fallback.
      3. As a last resort a receiver is created at runtime.
      
      When the `MediaSessionLegacyStub` is released, the media
      button receiver is removed unless the app has provided a
      media button receiver in the manifest. In this case we
      assume the app supports resuming when the BT play intent
      arrives at `MediaSessionService.onStartCommand`.
      
      #minor-release
      
      Issue: androidx/media#167
      Issue: androidx/media#27
      Issue: androidx/media#314
      PiperOrigin-RevId: 523638051
      bachinger committed
    • Update available commands when setting a new player in MediaSession · ae875648
      #minor-release
      
      PiperOrigin-RevId: 523633865
      tonihei committed