From be304486e043616a36ee13eba75dab6431ed6930 Mon Sep 17 00:00:00 2001 From: aquilescanta Date: Tue, 16 Jan 2018 09:11:07 -0800 Subject: [PATCH] Fix HLS' mime type propagation Issue:#3653 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=182064250 --- RELEASENOTES.md | 2 ++ .../java/com/google/android/exoplayer2/Format.java | 11 +++++++++-- .../exoplayer2/source/hls/HlsSampleStreamWrapper.java | 2 ++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/RELEASENOTES.md b/RELEASENOTES.md index ba82f46525..f086bbf515 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -2,6 +2,8 @@ ### dev-v2 (not yet released) ### +* HLS: Fix mime type propagation + ([#3653](https://github.com/google/ExoPlayer/issues/3653)). * SimpleExoPlayerView: Automatically apply video rotation if `SimpleExoPlayerView` is configured to use `TextureView` ([#91](https://github.com/google/ExoPlayer/issues/91)). diff --git a/library/core/src/main/java/com/google/android/exoplayer2/Format.java b/library/core/src/main/java/com/google/android/exoplayer2/Format.java index 7799f411a9..6ef57537f1 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/Format.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/Format.java @@ -474,8 +474,15 @@ public final class Format implements Parcelable { drmInitData, metadata); } - public Format copyWithContainerInfo(String id, String codecs, int bitrate, int width, int height, - @C.SelectionFlags int selectionFlags, String language) { + public Format copyWithContainerInfo( + String id, + String sampleMimeType, + String codecs, + int bitrate, + int width, + int height, + @C.SelectionFlags int selectionFlags, + String language) { return new Format(id, containerMimeType, sampleMimeType, codecs, bitrate, maxInputSize, width, height, frameRate, rotationDegrees, pixelWidthHeightRatio, projectionData, stereoMode, colorInfo, channelCount, sampleRate, pcmEncoding, encoderDelay, encoderPadding, diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsSampleStreamWrapper.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsSampleStreamWrapper.java index eba4596b7f..0dbadcd8e0 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsSampleStreamWrapper.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsSampleStreamWrapper.java @@ -882,8 +882,10 @@ import java.util.Arrays; int bitrate = propagateBitrate ? playlistFormat.bitrate : Format.NO_VALUE; int sampleTrackType = MimeTypes.getTrackType(sampleFormat.sampleMimeType); String codecs = Util.getCodecsOfType(playlistFormat.codecs, sampleTrackType); + String mimeType = MimeTypes.getMediaMimeType(codecs); return sampleFormat.copyWithContainerInfo( playlistFormat.id, + mimeType, codecs, bitrate, playlistFormat.width,