1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

subtitle fixes

This commit is contained in:
Luke Pulverenti 2016-02-24 11:52:36 -05:00
parent d854092d88
commit a434bf443d
2 changed files with 14 additions and 19 deletions

View file

@ -4,6 +4,7 @@
var hlsPlayer; var hlsPlayer;
var requiresSettingStartTimeOnStart; var requiresSettingStartTimeOnStart;
var subtitleTrackIndexToSetOnPlaying; var subtitleTrackIndexToSetOnPlaying;
var currentTrackList;
function htmlMediaRenderer(options) { function htmlMediaRenderer(options) {
@ -375,15 +376,12 @@
} }
tracks = tracks || []; tracks = tracks || [];
currentTrackList = tracks;
var currentTrackIndex = -1; var currentTrackIndex = -1;
for (var i = 0, length = tracks.length; i < length; i++) { for (var i = 0, length = tracks.length; i < length; i++) {
if (tracks[i].isDefault) { if (tracks[i].isDefault) {
if (browserInfo.msie) {
currentTrackIndex = i;
} else {
currentTrackIndex = tracks[i].index; currentTrackIndex = tracks[i].index;
}
break; break;
} }
} }
@ -505,14 +503,19 @@
return supportsTextTracks; return supportsTextTracks;
}; };
self.setCurrentTrackElement = function (trackIndex) { self.setCurrentTrackElement = function (streamIndex) {
console.log('Setting new text track index to: ' + trackIndex); console.log('Setting new text track index to: ' + streamIndex);
var allTracks = mediaElement.textTracks; // get list of tracks var allTracks = mediaElement.textTracks; // get list of tracks
var modes = ['disabled', 'showing', 'hidden']; var modes = ['disabled', 'showing', 'hidden'];
var expectedId = 'textTrack' + trackIndex; var expectedId = 'textTrack' + streamIndex;
var track = streamIndex == -1 ? null : currentTrackList.filter(function (t) {
return t.index == streamIndex;
})[0];
var trackIndex = streamIndex == -1 || !track ? -1 : currentTrackList.indexOf(track);
for (var i = 0; i < allTracks.length; i++) { for (var i = 0; i < allTracks.length; i++) {
@ -522,6 +525,8 @@
var mode; var mode;
console.log('expectedId: ' + expectedId + '--currentTrack.Id:' + currentTrack.id);
// IE doesn't support track id // IE doesn't support track id
if (browserInfo.msie) { if (browserInfo.msie) {
if (trackIndex == i) { if (trackIndex == i) {

View file

@ -320,17 +320,7 @@
self.setCurrentTrackElement = function (index) { self.setCurrentTrackElement = function (index) {
var textStreams = self.currentMediaSource.MediaStreams.filter(function (s) { self.currentMediaRenderer.setCurrentTrackElement(index);
return s.DeliveryMethod == 'External';
});
var newStream = textStreams.filter(function (s) {
return s.Index == index;
})[0];
var trackIndex = newStream ? textStreams.indexOf(newStream) : -1;
self.currentMediaRenderer.setCurrentTrackElement(trackIndex);
}; };
self.updateTextStreamUrls = function (startPositionTicks) { self.updateTextStreamUrls = function (startPositionTicks) {