diff --git a/src/controllers/playback/video/index.js b/src/controllers/playback/video/index.js index b6439216ce..59a1f5fe41 100644 --- a/src/controllers/playback/video/index.js +++ b/src/controllers/playback/video/index.js @@ -1176,6 +1176,21 @@ export default function (view) { } } + function autoSelectSubtitleTrack() { + const player = currentPlayer; + const streams = playbackManager.subtitleTracks(player); + const currentIndex = playbackManager.getSubtitleStreamIndex(player) ?? -1; + + if (currentIndex === -1 && streams.length > 0) { + const firstSubtitleIndex = streams[0].Index; + playbackManager.setSubtitleStreamIndex(firstSubtitleIndex, player); + } else { + playbackManager.setSubtitleStreamIndex(-1, player); + } + + toggleSubtitleSync(); + } + /** * Clicked element. * To skip 'click' handling on Firefox/Edge. @@ -1387,6 +1402,13 @@ export default function (view) { playbackManager.previousChapter(currentPlayer); } break; + case 'c': + case 'C': + if (!e.shiftKey) { + e.preventDefault(); + autoSelectSubtitleTrack(); + } + break; case 'g': case 'G': if (!e.shiftKey) {