From c98f7e83481173f67d0dbae1430d402c0d225124 Mon Sep 17 00:00:00 2001 From: olly Date: Mon, 14 Mar 2016 08:47:18 -0700 Subject: [PATCH] Fixed the Mp4 embedded WebVTT playback Issue: #1185 ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=117136646 --- .../dash/mpd/MediaPresentationDescriptionParser.java | 11 +++++++---- .../android/exoplayer/text/TextTrackRenderer.java | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/library/src/main/java/com/google/android/exoplayer/dash/mpd/MediaPresentationDescriptionParser.java b/library/src/main/java/com/google/android/exoplayer/dash/mpd/MediaPresentationDescriptionParser.java index 2c98336031..db772df855 100644 --- a/library/src/main/java/com/google/android/exoplayer/dash/mpd/MediaPresentationDescriptionParser.java +++ b/library/src/main/java/com/google/android/exoplayer/dash/mpd/MediaPresentationDescriptionParser.java @@ -629,11 +629,14 @@ public class MediaPresentationDescriptionParser extends DefaultHandler return getVideoMediaMimeType(codecs); } else if (mimeTypeIsRawText(containerMimeType)) { return containerMimeType; - } else if (MimeTypes.APPLICATION_MP4.equals(containerMimeType) && "stpp".equals(codecs)) { - return MimeTypes.APPLICATION_TTML; - } else { - return null; + } else if (MimeTypes.APPLICATION_MP4.equals(containerMimeType)) { + if ("stpp".equals(codecs)) { + return MimeTypes.APPLICATION_TTML; + } else if ("wvtt".equals(codecs)) { + return MimeTypes.APPLICATION_MP4VTT; + } } + return null; } /** diff --git a/library/src/main/java/com/google/android/exoplayer/text/TextTrackRenderer.java b/library/src/main/java/com/google/android/exoplayer/text/TextTrackRenderer.java index 7e43fe0b29..74aa265f88 100644 --- a/library/src/main/java/com/google/android/exoplayer/text/TextTrackRenderer.java +++ b/library/src/main/java/com/google/android/exoplayer/text/TextTrackRenderer.java @@ -90,7 +90,7 @@ public final class TextTrackRenderer extends SampleSourceTrackRenderer implement } try { DEFAULT_PARSER_CLASSES.add( - Class.forName("com.google.android.exoplayer.text.mp4webvtt.Mp4WebvttParser") + Class.forName("com.google.android.exoplayer.text.webvtt.Mp4WebvttParser") .asSubclass(SubtitleParser.class)); } catch (ClassNotFoundException e) { // Parser not found.