diff --git a/RELEASENOTES.md b/RELEASENOTES.md index ab3989eaef..fb98ceca1c 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -144,6 +144,12 @@ * Deprecate `setControlDispatcher` in `MediaSessionConnector`. The `ControlDispatcher` parameter has also been deprecated in all `MediaSessionConnector` listener methods. +* HLS: + * Report audio track type in + `AnalyticsListener.onDownstreamFormatChanged()` for audio-only + playlists, so that the `PlaybackStatsListener` can derive audio + format-related information. + ([#9175](https://github.com/google/ExoPlayer/issues/9175)). ### 2.14.2 (2021-07-20) diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java index a13a7bb3a1..785e7f1d36 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaPeriod.java @@ -628,9 +628,13 @@ public final class HlsMediaPeriod numberOfAudioCodecs <= 1 && numberOfVideoCodecs <= 1 && numberOfAudioCodecs + numberOfVideoCodecs > 0; + int trackType = + !useVideoVariantsOnly && numberOfAudioCodecs > 0 + ? C.TRACK_TYPE_AUDIO + : C.TRACK_TYPE_DEFAULT; HlsSampleStreamWrapper sampleStreamWrapper = buildSampleStreamWrapper( - C.TRACK_TYPE_DEFAULT, + trackType, selectedPlaylistUrls, selectedPlaylistFormats, masterPlaylist.muxedAudioFormat,