Skip to content

Commit

Permalink
Fix Usage of Extended Tracks Data
Browse files Browse the repository at this point in the history
  • Loading branch information
jaruba committed Jun 6, 2024
1 parent e1c62be commit eb57575
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 26 deletions.
16 changes: 9 additions & 7 deletions src/TizenVideo/TizenVideo.js
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,9 @@ function TizenVideo(options) {
if (!gotTraktData && stream !== null) {
gotTraktData = true;
getTracksData(stream.url, function(resp) {
tracksData = resp;
if (resp) {
tracksData = resp;
}
if (((tracksData || {}).subs || []).length) {
onPropChanged('subtitlesTracks');
}
Expand Down Expand Up @@ -234,10 +236,10 @@ function TizenVideo(options) {
var textTrackLang = typeof extra.track_lang === 'string' && extra.track_lang.length > 0 ? extra.track_lang.trim() : null;
if (((tracksData || {}).subs || []).length) {
var extendedTrackData = tracksData.subs.find(function(el) {
return (el || {}).id === textTrack.index;
return (el || {}).id-1 === textTrack.index;
});
if ((extendedTrackData || {}).lang) {
textTrackLang = extendedTrackData.lang;
if (extendedTrackData) {
textTrackLang = extendedTrackData.lang || 'eng';
}
}
textTracks.push({
Expand Down Expand Up @@ -336,10 +338,10 @@ function TizenVideo(options) {
var audioTrackLang = typeof extra.language === 'string' && extra.language.length > 0 ? extra.language : null;
if (((tracksData || {}).audio || []).length) {
var extendedTrackData = tracksData.audio.find(function(el) {
return (el || {}).id === audioTrack.index;
return (el || {}).id-1 === audioTrack.index;
});
if ((extendedTrackData || {}).lang) {
audioTrackLang = extendedTrackData.lang;
if (extendedTrackData) {
audioTrackLang = extendedTrackData.lang || 'eng';
}
}
audioTracks.push({
Expand Down
22 changes: 13 additions & 9 deletions src/WebOsVideo/WebOsVideo.js
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,7 @@ function WebOsVideo(options) {
}
};

// eslint-disable-next-line no-unused-vars
var subscribe = function (cb) {
if (subscribed) return;
subscribed = true;
Expand Down Expand Up @@ -440,6 +441,7 @@ function WebOsVideo(options) {
};

var gotTraktData = false;
var tracksData = { audio: [], subs: [] };

function retrieveExtendedTracks() {
if (!gotTraktData && stream !== null) {
Expand All @@ -449,7 +451,9 @@ function WebOsVideo(options) {
var nrAudio = 0;
textTracks = [];
audioTracks = [];
tracksData = resp;
if (resp) {
tracksData = resp;
}
if (((tracksData || {}).subs || []).length) {
tracksData.subs.forEach(function(track) {
var textTrackId = nrSubs;
Expand All @@ -459,8 +463,8 @@ function WebOsVideo(options) {
}
textTracks.push({
id: textTrackId,
lang: track.lang || null,
label: track.lang || null,
lang: track.lang || 'eng',
label: track.lang || 'eng',
origin: 'EMBEDDED',
embedded: true,
mode: textTrackId === currentSubTrack ? 'showing' : 'disabled',
Expand All @@ -478,8 +482,8 @@ function WebOsVideo(options) {
}
audioTracks.push({
id: audioTrackId,
lang: track.lang || null,
label: track.lang || null,
lang: track.lang || 'eng',
label: track.lang || 'eng',
origin: 'EMBEDDED',
embedded: true,
mode: audioTrackId === currentAudioTrack ? 'showing' : 'disabled',
Expand Down Expand Up @@ -1026,16 +1030,16 @@ function WebOsVideo(options) {
if (videoElement.mediaId) {
knownMediaId = videoElement.mediaId;
clearInterval(timer);
retrieveExtendedTracks()
cb()
// subscribe(cb);
retrieveExtendedTracks();
cb();
// subscribe(cb);
return;
}
count++;
if (count > 4) {
// console.log('failed to get media id');
clearInterval(timer);
retrieveExtendedTracks()
retrieveExtendedTracks();
cb();
}
}
Expand Down
16 changes: 6 additions & 10 deletions src/tracksData.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,13 @@
module.exports = function(url, cb) {
fetch('http://127.0.0.1:11470/tracks/'+encodeURIComponent(url)).then(function(resp) {
resp.json().then(function(tracks) {
var audioTracks = tracks.filter(function(el) { return el.type === 'audio'; });
var subsTracks = tracks.filter(function(el) { return el.type === 'text'; });
cb({ audio: audioTracks, subs: subsTracks });
}).catch(function(err) {
// eslint-disable-next-line no-console
console.error(err);
cb({ audio: [], subs: [] });
});
return resp.json();
}).then(function(tracks) {
var audioTracks = tracks.filter(function(el) { return el.type === 'audio'; });
var subsTracks = tracks.filter(function(el) { return el.type === 'text'; });
cb({ audio: audioTracks, subs: subsTracks });
}).catch(function(err) {
// eslint-disable-next-line no-console
console.error(err);
cb({ audio: [], subs: [] });
cb(false);
});
};

0 comments on commit eb57575

Please sign in to comment.