Prevent timeline access in AnalyticsCollector for future windows and periods.

Some of the events are emitted by the media periods itself and their index may
not be available in the publicly accessible timeline yet.

To prevent this, we currently check for timeline.isEmpty() only. But this may
also happen for dynamic changes, e.g. when new sources are added in fast
succession and a manifest for one of the new sources starts loading before the
updated timeline is reported.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=194057401
This commit is contained in:
tonihei 2018-04-24 02:26:07 -07:00 committed by Oliver Woodman
parent f96f053f2e
commit 874dc202f8
57 changed files with 200 additions and 170 deletions

View File

@ -80,7 +80,6 @@ public class AnalyticsCollector
private final CopyOnWriteArraySet<AnalyticsListener> listeners; private final CopyOnWriteArraySet<AnalyticsListener> listeners;
private final Player player; private final Player player;
private final Clock clock; private final Clock clock;
private final Period period;
private final Window window; private final Window window;
private final MediaPeriodQueueTracker mediaPeriodQueueTracker; private final MediaPeriodQueueTracker mediaPeriodQueueTracker;
@ -95,7 +94,6 @@ public class AnalyticsCollector
this.clock = Assertions.checkNotNull(clock); this.clock = Assertions.checkNotNull(clock);
listeners = new CopyOnWriteArraySet<>(); listeners = new CopyOnWriteArraySet<>();
mediaPeriodQueueTracker = new MediaPeriodQueueTracker(); mediaPeriodQueueTracker = new MediaPeriodQueueTracker();
period = new Period();
window = new Window(); window = new Window();
} }
@ -164,13 +162,10 @@ public class AnalyticsCollector
*/ */
public final void resetForNewMediaSource() { public final void resetForNewMediaSource() {
// Copying the list is needed because onMediaPeriodReleased will modify the list. // Copying the list is needed because onMediaPeriodReleased will modify the list.
List<MediaPeriodId> activeMediaPeriods = List<WindowAndMediaPeriodId> activeMediaPeriods =
new ArrayList<>(mediaPeriodQueueTracker.activeMediaPeriods); new ArrayList<>(mediaPeriodQueueTracker.activeMediaPeriods);
Timeline timeline = mediaPeriodQueueTracker.timeline; for (WindowAndMediaPeriodId mediaPeriod : activeMediaPeriods) {
for (MediaPeriodId mediaPeriod : activeMediaPeriods) { onMediaPeriodReleased(mediaPeriod.windowIndex, mediaPeriod.mediaPeriodId);
int windowIndex =
timeline.isEmpty() ? 0 : timeline.getPeriod(mediaPeriod.periodIndex, period).windowIndex;
onMediaPeriodReleased(windowIndex, mediaPeriod);
} }
} }
@ -309,7 +304,7 @@ public class AnalyticsCollector
@Override @Override
public final void onMediaPeriodCreated(int windowIndex, MediaPeriodId mediaPeriodId) { public final void onMediaPeriodCreated(int windowIndex, MediaPeriodId mediaPeriodId) {
mediaPeriodQueueTracker.onMediaPeriodCreated(mediaPeriodId); mediaPeriodQueueTracker.onMediaPeriodCreated(windowIndex, mediaPeriodId);
EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId); EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId);
for (AnalyticsListener listener : listeners) { for (AnalyticsListener listener : listeners) {
listener.onMediaPeriodCreated(eventTime); listener.onMediaPeriodCreated(eventTime);
@ -318,7 +313,7 @@ public class AnalyticsCollector
@Override @Override
public final void onMediaPeriodReleased(int windowIndex, MediaPeriodId mediaPeriodId) { public final void onMediaPeriodReleased(int windowIndex, MediaPeriodId mediaPeriodId) {
mediaPeriodQueueTracker.onMediaPeriodReleased(mediaPeriodId); mediaPeriodQueueTracker.onMediaPeriodReleased(windowIndex, mediaPeriodId);
EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId); EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId);
for (AnalyticsListener listener : listeners) { for (AnalyticsListener listener : listeners) {
listener.onMediaPeriodReleased(eventTime); listener.onMediaPeriodReleased(eventTime);
@ -377,7 +372,7 @@ public class AnalyticsCollector
@Override @Override
public final void onReadingStarted(int windowIndex, MediaPeriodId mediaPeriodId) { public final void onReadingStarted(int windowIndex, MediaPeriodId mediaPeriodId) {
mediaPeriodQueueTracker.onReadingStarted(mediaPeriodId); mediaPeriodQueueTracker.onReadingStarted(windowIndex, mediaPeriodId);
EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId); EventTime eventTime = generateEventTime(windowIndex, mediaPeriodId);
for (AnalyticsListener listener : listeners) { for (AnalyticsListener listener : listeners) {
listener.onReadingStarted(eventTime); listener.onReadingStarted(eventTime);
@ -597,7 +592,8 @@ public class AnalyticsCollector
// This event is for content in the currently playing window. // This event is for content in the currently playing window.
eventPositionMs = player.getContentPosition(); eventPositionMs = player.getContentPosition();
} }
} else if (timeline.isEmpty() || (mediaPeriodId != null && mediaPeriodId.isAd())) { } else if (windowIndex >= timeline.getWindowCount()
|| (mediaPeriodId != null && mediaPeriodId.isAd())) {
// This event is for an unknown future window or for an ad in a future window. // This event is for an unknown future window or for an ad in a future window.
// Assume start position of zero. // Assume start position of zero.
eventPositionMs = 0; eventPositionMs = 0;
@ -617,17 +613,14 @@ public class AnalyticsCollector
bufferedDurationMs); bufferedDurationMs);
} }
private EventTime generateEventTime(@Nullable MediaPeriodId mediaPeriodId) { private EventTime generateEventTime(@Nullable WindowAndMediaPeriodId mediaPeriod) {
Timeline timeline = player.getCurrentTimeline(); if (mediaPeriod == null) {
if (mediaPeriodId == null) { int windowIndex = player.getCurrentWindowIndex();
mediaPeriodId = mediaPeriodQueueTracker.tryResolveWindowIndex(player.getCurrentWindowIndex()); MediaPeriodId mediaPeriodId = mediaPeriodQueueTracker.tryResolveWindowIndex(windowIndex);
}
int windowIndex =
mediaPeriodId == null || timeline.isEmpty()
? player.getCurrentWindowIndex()
: timeline.getPeriod(mediaPeriodId.periodIndex, period).windowIndex;
return generateEventTime(windowIndex, mediaPeriodId); return generateEventTime(windowIndex, mediaPeriodId);
} }
return generateEventTime(mediaPeriod.windowIndex, mediaPeriod.mediaPeriodId);
}
private EventTime generateLastReportedPlayingMediaPeriodEventTime() { private EventTime generateLastReportedPlayingMediaPeriodEventTime() {
return generateEventTime(mediaPeriodQueueTracker.getLastReportedPlayingMediaPeriod()); return generateEventTime(mediaPeriodQueueTracker.getLastReportedPlayingMediaPeriod());
@ -651,11 +644,11 @@ public class AnalyticsCollector
// TODO: Investigate reporting MediaPeriodId in renderer events and adding a listener of queue // TODO: Investigate reporting MediaPeriodId in renderer events and adding a listener of queue
// changes, which would hopefully remove the need to track the queue here. // changes, which would hopefully remove the need to track the queue here.
private final ArrayList<MediaPeriodId> activeMediaPeriods; private final ArrayList<WindowAndMediaPeriodId> activeMediaPeriods;
private final Period period; private final Period period;
private MediaPeriodId lastReportedPlayingMediaPeriod; private WindowAndMediaPeriodId lastReportedPlayingMediaPeriod;
private MediaPeriodId readingMediaPeriod; private WindowAndMediaPeriodId readingMediaPeriod;
private Timeline timeline; private Timeline timeline;
private boolean isSeeking; private boolean isSeeking;
@ -666,33 +659,34 @@ public class AnalyticsCollector
} }
/** /**
* Returns the {@link MediaPeriodId} of the media period in the front of the queue. This is the * Returns the {@link WindowAndMediaPeriodId} of the media period in the front of the queue.
* playing media period unless the player hasn't started playing yet (in which case it is the * This is the playing media period unless the player hasn't started playing yet (in which case
* loading media period or null). While the player is seeking or preparing, this method will * it is the loading media period or null). While the player is seeking or preparing, this
* always return null to reflect the uncertainty about the current playing period. May also be * method will always return null to reflect the uncertainty about the current playing period.
* null, if the timeline is empty or no media period is active yet. * May also be null, if the timeline is empty or no media period is active yet.
*/ */
public @Nullable MediaPeriodId getPlayingMediaPeriod() { public @Nullable WindowAndMediaPeriodId getPlayingMediaPeriod() {
return activeMediaPeriods.isEmpty() || timeline.isEmpty() || isSeeking return activeMediaPeriods.isEmpty() || timeline.isEmpty() || isSeeking
? null ? null
: activeMediaPeriods.get(0); : activeMediaPeriods.get(0);
} }
/** /**
* Returns the {@link MediaPeriodId} of the currently playing media period. This is the publicly * Returns the {@link WindowAndMediaPeriodId} of the currently playing media period. This is the
* reported period which should always match {@link Player#getCurrentPeriodIndex()} unless the * publicly reported period which should always match {@link Player#getCurrentPeriodIndex()}
* player is currently seeking or being prepared in which case the previous period is reported * unless the player is currently seeking or being prepared in which case the previous period is
* until the seek or preparation is processed. May be null, if no media period is active yet. * reported until the seek or preparation is processed. May be null, if no media period is
* active yet.
*/ */
public @Nullable MediaPeriodId getLastReportedPlayingMediaPeriod() { public @Nullable WindowAndMediaPeriodId getLastReportedPlayingMediaPeriod() {
return lastReportedPlayingMediaPeriod; return lastReportedPlayingMediaPeriod;
} }
/** /**
* Returns the {@link MediaPeriodId} of the media period currently being read by the player. May * Returns the {@link WindowAndMediaPeriodId} of the media period currently being read by the
* be null, if the player is not reading a media period. * player. May be null, if the player is not reading a media period.
*/ */
public @Nullable MediaPeriodId getReadingMediaPeriod() { public @Nullable WindowAndMediaPeriodId getReadingMediaPeriod() {
return readingMediaPeriod; return readingMediaPeriod;
} }
@ -701,7 +695,7 @@ public class AnalyticsCollector
* currently loading or will be the next one loading. May be null, if no media period is active * currently loading or will be the next one loading. May be null, if no media period is active
* yet. * yet.
*/ */
public @Nullable MediaPeriodId getLoadingMediaPeriod() { public @Nullable WindowAndMediaPeriodId getLoadingMediaPeriod() {
return activeMediaPeriods.isEmpty() return activeMediaPeriods.isEmpty()
? null ? null
: activeMediaPeriods.get(activeMediaPeriods.size() - 1); : activeMediaPeriods.get(activeMediaPeriods.size() - 1);
@ -713,20 +707,23 @@ public class AnalyticsCollector
} }
/** /**
* Tries to find an existing media period from the specified window index. Only returns a * Tries to find an existing media period id from the specified window index. Only returns a
* non-null media period id if there is a unique, unambiguous match. * non-null media period id if there is a unique, unambiguous match.
*/ */
public @Nullable MediaPeriodId tryResolveWindowIndex(int windowIndex) { public @Nullable MediaPeriodId tryResolveWindowIndex(int windowIndex) {
MediaPeriodId match = null; MediaPeriodId match = null;
if (timeline != null && !timeline.isEmpty()) { if (timeline != null) {
int timelinePeriodCount = timeline.getPeriodCount();
for (int i = 0; i < activeMediaPeriods.size(); i++) { for (int i = 0; i < activeMediaPeriods.size(); i++) {
MediaPeriodId mediaPeriodId = activeMediaPeriods.get(i); WindowAndMediaPeriodId mediaPeriod = activeMediaPeriods.get(i);
if (timeline.getPeriod(mediaPeriodId.periodIndex, period).windowIndex == windowIndex) { int periodIndex = mediaPeriod.mediaPeriodId.periodIndex;
if (periodIndex < timelinePeriodCount
&& timeline.getPeriod(periodIndex, period).windowIndex == windowIndex) {
if (match != null) { if (match != null) {
// Ambiguous match. // Ambiguous match.
return null; return null;
} }
match = mediaPeriodId; match = mediaPeriod.mediaPeriodId;
} }
} }
} }
@ -742,10 +739,10 @@ public class AnalyticsCollector
public void onTimelineChanged(Timeline timeline) { public void onTimelineChanged(Timeline timeline) {
for (int i = 0; i < activeMediaPeriods.size(); i++) { for (int i = 0; i < activeMediaPeriods.size(); i++) {
activeMediaPeriods.set( activeMediaPeriods.set(
i, updateMediaPeriodIdToNewTimeline(activeMediaPeriods.get(i), timeline)); i, updateMediaPeriodToNewTimeline(activeMediaPeriods.get(i), timeline));
} }
if (readingMediaPeriod != null) { if (readingMediaPeriod != null) {
readingMediaPeriod = updateMediaPeriodIdToNewTimeline(readingMediaPeriod, timeline); readingMediaPeriod = updateMediaPeriodToNewTimeline(readingMediaPeriod, timeline);
} }
this.timeline = timeline; this.timeline = timeline;
updateLastReportedPlayingMediaPeriod(); updateLastReportedPlayingMediaPeriod();
@ -763,24 +760,25 @@ public class AnalyticsCollector
} }
/** Updates the queue with a newly created media period. */ /** Updates the queue with a newly created media period. */
public void onMediaPeriodCreated(MediaPeriodId mediaPeriodId) { public void onMediaPeriodCreated(int windowIndex, MediaPeriodId mediaPeriodId) {
activeMediaPeriods.add(mediaPeriodId); activeMediaPeriods.add(new WindowAndMediaPeriodId(windowIndex, mediaPeriodId));
if (activeMediaPeriods.size() == 1 && !timeline.isEmpty()) { if (activeMediaPeriods.size() == 1 && !timeline.isEmpty()) {
updateLastReportedPlayingMediaPeriod(); updateLastReportedPlayingMediaPeriod();
} }
} }
/** Updates the queue with a released media period. */ /** Updates the queue with a released media period. */
public void onMediaPeriodReleased(MediaPeriodId mediaPeriodId) { public void onMediaPeriodReleased(int windowIndex, MediaPeriodId mediaPeriodId) {
activeMediaPeriods.remove(mediaPeriodId); WindowAndMediaPeriodId mediaPeriod = new WindowAndMediaPeriodId(windowIndex, mediaPeriodId);
if (mediaPeriodId.equals(readingMediaPeriod)) { activeMediaPeriods.remove(mediaPeriod);
if (mediaPeriod.equals(readingMediaPeriod)) {
readingMediaPeriod = activeMediaPeriods.isEmpty() ? null : activeMediaPeriods.get(0); readingMediaPeriod = activeMediaPeriods.isEmpty() ? null : activeMediaPeriods.get(0);
} }
} }
/** Update the queue with a change in the reading media period. */ /** Update the queue with a change in the reading media period. */
public void onReadingStarted(MediaPeriodId mediaPeriodId) { public void onReadingStarted(int windowIndex, MediaPeriodId mediaPeriodId) {
readingMediaPeriod = mediaPeriodId; readingMediaPeriod = new WindowAndMediaPeriodId(windowIndex, mediaPeriodId);
} }
private void updateLastReportedPlayingMediaPeriod() { private void updateLastReportedPlayingMediaPeriod() {
@ -789,16 +787,48 @@ public class AnalyticsCollector
} }
} }
private MediaPeriodId updateMediaPeriodIdToNewTimeline( private WindowAndMediaPeriodId updateMediaPeriodToNewTimeline(
MediaPeriodId mediaPeriodId, Timeline newTimeline) { WindowAndMediaPeriodId mediaPeriod, Timeline newTimeline) {
if (newTimeline.isEmpty() || timeline.isEmpty()) { if (newTimeline.isEmpty() || timeline.isEmpty()) {
return mediaPeriodId; return mediaPeriod;
} }
Object uid = timeline.getPeriod(mediaPeriodId.periodIndex, period, /* setIds= */ true).uid; Object uid =
int newIndex = newTimeline.getIndexOfPeriod(uid); timeline.getPeriod(mediaPeriod.mediaPeriodId.periodIndex, period, /* setIds= */ true).uid;
return newIndex == C.INDEX_UNSET int newPeriodIndex = newTimeline.getIndexOfPeriod(uid);
? mediaPeriodId if (newPeriodIndex == C.INDEX_UNSET) {
: mediaPeriodId.copyWithPeriodIndex(newIndex); return mediaPeriod;
}
int newWindowIndex = newTimeline.getPeriod(newPeriodIndex, period).windowIndex;
return new WindowAndMediaPeriodId(
newWindowIndex, mediaPeriod.mediaPeriodId.copyWithPeriodIndex(newPeriodIndex));
}
}
private static final class WindowAndMediaPeriodId {
public final int windowIndex;
public final MediaPeriodId mediaPeriodId;
public WindowAndMediaPeriodId(int windowIndex, MediaPeriodId mediaPeriodId) {
this.windowIndex = windowIndex;
this.mediaPeriodId = mediaPeriodId;
}
@Override
public boolean equals(@Nullable Object other) {
if (this == other) {
return true;
}
if (other == null || getClass() != other.getClass()) {
return false;
}
WindowAndMediaPeriodId that = (WindowAndMediaPeriodId) other;
return windowIndex == that.windowIndex && mediaPeriodId.equals(that.mediaPeriodId);
}
@Override
public int hashCode() {
return 31 * windowIndex + mediaPeriodId.hashCode();
} }
} }
} }

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Geen</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Outo</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">ምንም</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">ራስ-ሰር</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">بدون اختيار</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">تلقائي</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Yoxdur</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Avtomatik</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Nijedna</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatski</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Няма</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Аўтаматычна</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ništa</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatski</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Cap</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automàtica</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Žádné</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automaticky</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ingen</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatisk</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Keine</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatisch</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Κανένα</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Αυτόματο</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ninguna</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automática</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ninguna</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automático</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Bat ere ez</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatikoa</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">هیچ‌کدام</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">خودکار</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none"></string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automaattinen</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Aucun</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Auto</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Aucun</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatique</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ningunha pista</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Pista automática</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ništa</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatski</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Nincs</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatikus</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ekkert</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Sjálfvirkt</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Nessuno</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Auto</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">ללא</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">אוטומטי</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">なし</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">自動</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">არცერთი</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">ავტომატური</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ешқайсысы</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Автоматты</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">គ្មាន</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">ស្វ័យប្រវត្តិ</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">없음</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">자동</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Жок</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Авто</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">ບໍ່ມີ</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">ອັດຕະໂນມັດ</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Нема</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Автоматскa</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Байхгүй</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Автомат</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Tiada</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatik</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ingen</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatisk</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Geen</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Auto</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Brak</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatycznie</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Nenhuma</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automático</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Nenhuma</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automática</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Нет</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Авто</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Žiadne</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automaticky</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">N</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Samodejno</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Asnjë</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatike</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ниједна</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Аутоматски</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Ingen</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Automatiskt</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Hamna</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Otomatiki</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">ไม่มี</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">ยานยนต์</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Wala</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Awtomatiko</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Yok</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Otomatik</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Нічого</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Автоматично</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Hech biri</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Avtomatik</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Bỏ chọn tất cả</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Tự động</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none"></string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">自動</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none"></string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">自動</string>
</resources> </resources>

View File

@ -20,6 +20,6 @@
<string name="exo_track_selection_title_video">Video</string> <string name="exo_track_selection_title_video">Video</string>
<string name="exo_track_selection_title_audio">Audio</string> <string name="exo_track_selection_title_audio">Audio</string>
<string name="exo_track_selection_title_text">Text</string> <string name="exo_track_selection_title_text">Text</string>
<string name="exo_track_selection_none">None</string> <string name="exo_track_selection_none">Lutho</string>
<string name="exo_track_selection_auto">Auto</string> <string name="exo_track_selection_auto">Okuzenzakalelayo</string>
</resources> </resources>