From 106ebbf7dfd37f5feba24200e6ed3192e7a3e494 Mon Sep 17 00:00:00 2001
From: ood_tsen
Date: Tue, 2 Jun 2015 21:00:22 +0800
Subject: [PATCH] clean up unused code.
---
.../google/android/exoplayer/MediaFormat.java | 2 +-
.../exoplayer/text/tx3g/SubtitleData.java | 50 ++++---------------
.../exoplayer/text/tx3g/TextParser.java | 50 ++++++-------------
.../exoplayer/text/tx3g/TextSubtitle.java | 5 +-
.../android/exoplayer/util/MimeTypes.java | 2 +-
5 files changed, 28 insertions(+), 81 deletions(-)
diff --git a/library/src/main/java/com/google/android/exoplayer/MediaFormat.java b/library/src/main/java/com/google/android/exoplayer/MediaFormat.java
index 3bce2d8902..aaaad2cf26 100644
--- a/library/src/main/java/com/google/android/exoplayer/MediaFormat.java
+++ b/library/src/main/java/com/google/android/exoplayer/MediaFormat.java
@@ -107,7 +107,7 @@ public class MediaFormat {
}
public static MediaFormat createTx3GFormat() {
- return createFormatForMimeType(MimeTypes.TEXT_TX3G);
+ return createFormatForMimeType(MimeTypes.APPLICATION_TX3G);
}
public static MediaFormat createFormatForMimeType(String mimeType) {
diff --git a/library/src/main/java/com/google/android/exoplayer/text/tx3g/SubtitleData.java b/library/src/main/java/com/google/android/exoplayer/text/tx3g/SubtitleData.java
index 1bba2de8bd..5bc846c400 100644
--- a/library/src/main/java/com/google/android/exoplayer/text/tx3g/SubtitleData.java
+++ b/library/src/main/java/com/google/android/exoplayer/text/tx3g/SubtitleData.java
@@ -20,61 +20,29 @@ import java.util.Comparator;
class SubtitleData implements Comparable , Comparator {
- private long mStartTimePosUs;
- private long mEndTimePosUs;
- private String strSubtitle;
+ public final long startTimePosUs;
+ public final String strSubtitle;
- SubtitleData()
+ SubtitleData(long startTimePosUs, String strSubtitle)
{
- mStartTimePosUs = 0l;
- mEndTimePosUs = 0l;
- strSubtitle = "";
- }
-
- protected void setStartTimePos(long time)
- {
- mStartTimePosUs = time;
- }
-
- protected void setEndTimePos(long time)
- {
- mEndTimePosUs = time;
- }
-
- protected void setSubtitleText(String text)
- {
- strSubtitle = text;
- }
-
- protected long getStartTimePos()
- {
- return mStartTimePosUs;
- }
-
- protected long getEndTimePos()
- {
- return mEndTimePosUs;
- }
-
- protected String getsubtitleText()
- {
- return strSubtitle;
+ this.startTimePosUs = startTimePosUs;
+ this.strSubtitle = strSubtitle;
}
@Override
public int compare(SubtitleData o1 , SubtitleData o2) {
- if (o1.getStartTimePos() < o2.getStartTimePos())
+ if (o1.startTimePosUs < o2.startTimePosUs)
return -1;
- if (o1.getStartTimePos() > o2.getStartTimePos())
+ if (o1.startTimePosUs > o2.startTimePosUs)
return 1;
return 0;
}
@Override
public int compareTo(SubtitleData another) {
- if (getStartTimePos() < another.getStartTimePos())
+ if (startTimePosUs < another.startTimePosUs)
return -1;
- if (getStartTimePos() > another.getStartTimePos())
+ if (startTimePosUs > another.startTimePosUs)
return 1;
return 0;
}
diff --git a/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextParser.java b/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextParser.java
index a802761d6b..008d7af078 100644
--- a/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextParser.java
+++ b/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextParser.java
@@ -30,38 +30,20 @@ import java.util.LinkedList;
import java.util.List;
/**
- * A simple Text parser that supports Tx3g presentation profile.
- *
- * Supported features in this parser are:
- *
- * - content
- *
- core
- *
- presentation
- *
- profile
- *
- structure
- *
- time-offset
- *
- timing
- *
- tickRate
- *
- time-clock-with-frames
- *
- time-clock
- *
- time-offset-with-frames
- *
- time-offset-with-ticks
- *
- *
- * @see TTML specification
+ * A simple Text parser that supports tx3g atom.
+ *
+ * Only support to parse a single text track at this version ,
+ * since ExtractorSampleSource does not handle multiple audio/video tracks.
+ *
*/
public class TextParser implements SubtitleParser {
private static final String TAG = "TextParser";
+ private final List subtitleList;
- private final List mSubtitleList;
-
- /**
- * Equivalent to {@code TtmlParser(true)}.
- */
public TextParser() {
Log.i(TAG,"TextParser ");
- mSubtitleList = new LinkedList();
+ subtitleList = new LinkedList();
}
@@ -74,29 +56,27 @@ public class TextParser implements SubtitleParser {
text = (text == null) ? "" : text;
Log.i(TAG,"parse(" + text + "," + startTimeUs + ")" );
- SubtitleData cue = new SubtitleData();
- cue.setSubtitleText(text);
- cue.setStartTimePos(startTimeUs);
- mSubtitleList.add(cue);
+ SubtitleData cue = new SubtitleData(startTimeUs, text);
- Collections.sort(mSubtitleList, new Comparator() {
+ subtitleList.add(cue);
+
+ Collections.sort(subtitleList, new Comparator() {
@Override
public int compare(SubtitleData o1 , SubtitleData o2) {
- if (o1.getStartTimePos() < o2.getStartTimePos())
+ if (o1.startTimePosUs < o2.startTimePosUs)
return -1;
- if (o1.getStartTimePos() > o2.getStartTimePos())
+ if (o1.startTimePosUs > o2.startTimePosUs)
return 1;
return 0;
}
});
- TextSubtitle textSubtitle = new TextSubtitle(mSubtitleList);
+ TextSubtitle textSubtitle = new TextSubtitle(subtitleList);
return textSubtitle;
}
@Override
public boolean canParse(String mimeType) {
- boolean rtn = MimeTypes.TEXT_TX3G.equals(mimeType);
- Log.i(TAG,"canParse " + mimeType + "," + rtn);
+ boolean rtn = MimeTypes.APPLICATION_TX3G.equals(mimeType);
return rtn;
}
}
diff --git a/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextSubtitle.java b/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextSubtitle.java
index 32f1a76d24..ad74ec9b80 100644
--- a/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextSubtitle.java
+++ b/library/src/main/java/com/google/android/exoplayer/text/tx3g/TextSubtitle.java
@@ -22,7 +22,7 @@ import com.google.android.exoplayer.text.Cue;
import com.google.android.exoplayer.text.Subtitle;
/**
- * A representation of a TTML subtitle.
+ * A representation of a tx3g subtitle.
*/
public final class TextSubtitle implements Subtitle {
static String TAG = "TextSubtitle";
@@ -47,7 +47,6 @@ public final class TextSubtitle implements Subtitle {
@Override
public int getEventTimeCount() {
- //LOG.I(TAG,"getEventTimeCount() = " + text.size());
return text.size();
}
@@ -55,7 +54,6 @@ public final class TextSubtitle implements Subtitle {
public long getEventTime(int index) {
if (index > text.size() - 1) return -1;
- //LOG.I(TAG,"getEventTime(" + index + ") = " + text.get(index).getStartTimePos());
return text.get(index).getStartTimePos();
}
@@ -77,6 +75,7 @@ public final class TextSubtitle implements Subtitle {
}
private int findTheClosed(long timeUs) {
+ //TODO : Time complexity is O(n),not good solution.
int length = text.size();
for (int i = 0; i < length ; i++) {
diff --git a/library/src/main/java/com/google/android/exoplayer/util/MimeTypes.java b/library/src/main/java/com/google/android/exoplayer/util/MimeTypes.java
index dea171b6df..d81ea84991 100644
--- a/library/src/main/java/com/google/android/exoplayer/util/MimeTypes.java
+++ b/library/src/main/java/com/google/android/exoplayer/util/MimeTypes.java
@@ -53,12 +53,12 @@ public class MimeTypes {
public static final String AUDIO_OPUS = BASE_TYPE_AUDIO + "/opus";
public static final String TEXT_VTT = BASE_TYPE_TEXT + "/vtt";
- public static final String TEXT_TX3G = BASE_TYPE_TEXT + "/tx3g";
public static final String APPLICATION_ID3 = BASE_TYPE_APPLICATION + "/id3";
public static final String APPLICATION_EIA608 = BASE_TYPE_APPLICATION + "/eia-608";
public static final String APPLICATION_TTML = BASE_TYPE_APPLICATION + "/ttml+xml";
public static final String APPLICATION_M3U8 = BASE_TYPE_APPLICATION + "/x-mpegURL";
+ public static final String APPLICATION_TX3G = BASE_TYPE_APPLICATION + "/x-quicktime-tx3g";
private MimeTypes() {}