From 5cbbfe2aa67595f924090d508f02ec0750b97d68 Mon Sep 17 00:00:00 2001 From: nklhrstv Date: Tue, 17 Mar 2020 17:16:25 +0200 Subject: [PATCH] subtitles from stream added to video --- src/routes/Player/Player.js | 8 ++++++++ src/routes/Player/usePlayer.js | 20 +++++++++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/routes/Player/Player.js b/src/routes/Player/Player.js index 10eafabb6..5bf45b811 100644 --- a/src/routes/Player/Player.js +++ b/src/routes/Player/Player.js @@ -140,6 +140,14 @@ const Player = ({ urlParams }) => { streamingServerUrl: settings.streaming_server_url } }); + if (Array.isArray(player.selected.stream.subtitles)) { + dispatch({ + commandName: 'addSubtitlesTracks', + commandArgs: { + tracks: player.selected.stream.subtitles + } + }); + } } }, [player.selected && player.selected.stream]); useDeepEqualEffect(() => { diff --git a/src/routes/Player/usePlayer.js b/src/routes/Player/usePlayer.js index f252bc513..56d08e3a7 100644 --- a/src/routes/Player/usePlayer.js +++ b/src/routes/Player/usePlayer.js @@ -9,7 +9,25 @@ const initPlayerState = () => ({ }); const mapPlayerStateWithCtx = (player, ctx) => { - const selected = player.selected; + const selected = player.selected !== null ? + { + stream: { + ...player.selected.stream, + subtitles: Array.isArray(player.selected.stream.subtitles) ? + player.selected.stream.subtitles.map(({ url, lang }) => ({ + url, + lang, + origin: 'Stream' + })) + : + [] + }, + meta_resource_request: player.selected.meta_resource_request, + subtitles_resource_ref: player.selected.subtitles_resource_ref, + video_id: player.selected.video_id + } + : + null; const meta_resource = player.meta_resource; const subtitles_resources = player.subtitles_resources.map((subtitles_resource) => { const request = subtitles_resource.request;