Merge pull request #168 from gurupras/fix-captions

Fixes for captions
This commit is contained in:
Sam Potts 2016-02-21 11:28:15 +11:00
commit 6a0b3dc823

View File

@ -820,15 +820,21 @@
} }
// Utilities for caption time codes // Utilities for caption time codes
function _timecodeMin(tc) { function _timecodeCommon(tc, pos) {
var tcpair = []; var tcpair = [];
tcpair = tc.split(' --> '); tcpair = tc.split(' --> ');
return _subTcSecs(tcpair[0]); for(var i = 0; i < tcpair.length; i++) {
// WebVTT allows for extra meta data after the timestamp line
// So get rid of this if it exists
tcpair[i] = tcpair[i].replace(/(\d+:\d+:\d+\.\d+).*/, "$1");
}
return _subTcSecs(tcpair[pos]);
}
function _timecodeMin(tc) {
return _timecodeCommon(tc, 0);
} }
function _timecodeMax(tc) { function _timecodeMax(tc) {
var tcpair = []; return _timecodeCommon(tc, 1);
tcpair = tc.split(' --> ');
return _subTcSecs(tcpair[1]);
} }
function _subTcSecs(tc) { function _subTcSecs(tc) {
if (tc === null || tc === undefined) { if (tc === null || tc === undefined) {
@ -1517,12 +1523,18 @@
record, record,
req = xhr.responseText; req = xhr.responseText;
records = req.split('\n\n'); var pattern = '\n';
records = req.split(pattern + pattern);
if(records.length === 1) {
// The '\n' pattern didn't work
// Try '\r\n'
pattern = '\r\n';
records = req.split(pattern + pattern);
}
for (var r = 0; r < records.length; r++) { for (var r = 0; r < records.length; r++) {
record = records[r]; record = records[r];
plyr.captions[r] = []; plyr.captions[r] = [];
plyr.captions[r] = record.split('\n'); plyr.captions[r] = record.split(pattern);
} }
// Remove first element ('VTT') // Remove first element ('VTT')