From 3919843db27c78dc04ec498087182058393cced0 Mon Sep 17 00:00:00 2001 From: aquilescanta Date: Tue, 16 Jan 2018 09:56:12 -0800 Subject: [PATCH] Force single audio and video sample queues This solves the problem of having dense tracks' ids change. For example, if the available variants offer both HEVC and AVC video tracks, all video samples will map to the same sample queue even if IDs don't match. Issue:#3653 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=182070486 --- .../exoplayer2/source/hls/HlsMediaChunk.java | 2 +- .../source/hls/HlsSampleStreamWrapper.java | 69 ++++++++++++++++--- 2 files changed, 62 insertions(+), 9 deletions(-) diff --git a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaChunk.java b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaChunk.java index c4e54d4bd3f..50c1200fae8 100644 --- a/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaChunk.java +++ b/library/hls/src/main/java/com/google/android/exoplayer2/source/hls/HlsMediaChunk.java @@ -156,7 +156,7 @@ public HlsMediaChunk(HlsExtractorFactory extractorFactory, DataSource dataSource */ public void init(HlsSampleStreamWrapper output) { this.output = output; - output.init(uid, shouldSpliceIn); + output.init(uid, shouldSpliceIn, reusingExtractor); if (!reusingExtractor) { extractor.init(output); } 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 0dbadcd8e08..e4c71e43c5c 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 @@ -93,6 +93,10 @@ public interface Callback extends SequenceableLoader.Callback