2020-02-21 21:40:46 +01:00
|
|
|
|
<template>
|
2021-09-15 04:03:00 +02:00
|
|
|
|
<details>
|
|
|
|
|
<summary>
|
|
|
|
|
<h3>
|
|
|
|
|
{{ $t("Settings.Player Settings.Player Settings") }}
|
|
|
|
|
</h3>
|
|
|
|
|
</summary>
|
|
|
|
|
<hr>
|
2020-03-27 12:37:54 +01:00
|
|
|
|
<div class="switchColumnGrid">
|
|
|
|
|
<div class="switchColumn">
|
|
|
|
|
<ft-toggle-switch
|
2020-05-28 04:48:41 +02:00
|
|
|
|
v-if="false"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
label="Enable Subtitles by Default"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="enableSubtitles"
|
|
|
|
|
@change="updateEnableSubtitles"
|
|
|
|
|
/>
|
|
|
|
|
<ft-toggle-switch
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Force Local Backend for Legacy Formats')"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-10-19 17:32:53 +02:00
|
|
|
|
:disabled="backendPreference === 'local'"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="forceLocalBackendForLegacy"
|
2020-10-19 17:32:53 +02:00
|
|
|
|
:tooltip="$t('Tooltips.Player Settings.Force Local Backend for Legacy Formats')"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
@change="updateForceLocalBackendForLegacy"
|
|
|
|
|
/>
|
|
|
|
|
<ft-toggle-switch
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Proxy Videos Through Invidious')"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="proxyVideos"
|
2020-10-19 17:32:53 +02:00
|
|
|
|
:tooltip="$t('Tooltips.Player Settings.Proxy Videos Through Invidious')"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
@change="updateProxyVideos"
|
|
|
|
|
/>
|
2020-09-07 20:43:44 +02:00
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Enable Theatre Mode by Default')"
|
|
|
|
|
:compact="true"
|
|
|
|
|
:default-value="defaultTheatreMode"
|
|
|
|
|
@change="updateDefaultTheatreMode"
|
|
|
|
|
/>
|
2021-05-26 17:55:11 +02:00
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Scroll Volume Over Video Player')"
|
|
|
|
|
:compact="true"
|
|
|
|
|
:default-value="videoVolumeMouseScroll"
|
|
|
|
|
@change="updateVideoVolumeMouseScroll"
|
|
|
|
|
/>
|
2021-11-24 22:52:56 +01:00
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Scroll Playback Rate Over Video Player')"
|
|
|
|
|
:compact="true"
|
|
|
|
|
:default-value="videoPlaybackRateMouseScroll"
|
|
|
|
|
:tooltip="$t('Tooltips.Player Settings.Scroll Playback Rate Over Video Player')"
|
|
|
|
|
@change="updateVideoPlaybackRateMouseScroll"
|
|
|
|
|
/>
|
2021-05-29 20:35:28 +02:00
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Display Play Button In Video Player')"
|
|
|
|
|
:compact="true"
|
|
|
|
|
:default-value="displayVideoPlayButton"
|
|
|
|
|
@change="updateDisplayVideoPlayButton"
|
|
|
|
|
/>
|
2020-03-27 12:37:54 +01:00
|
|
|
|
</div>
|
|
|
|
|
<div class="switchColumn">
|
|
|
|
|
<ft-toggle-switch
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Autoplay Videos')"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="autoplayVideos"
|
|
|
|
|
@change="updateAutoplayVideos"
|
|
|
|
|
/>
|
|
|
|
|
<ft-toggle-switch
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Autoplay Playlists')"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="autoplayPlaylists"
|
|
|
|
|
@change="updateAutoplayPlaylists"
|
|
|
|
|
/>
|
|
|
|
|
<ft-toggle-switch
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Play Next Video')"
|
2020-04-22 04:59:09 +02:00
|
|
|
|
:compact="true"
|
2020-10-06 15:38:35 +02:00
|
|
|
|
:disabled="hideRecommendedVideos"
|
2020-03-27 12:37:54 +01:00
|
|
|
|
:default-value="playNextVideo"
|
|
|
|
|
@change="updatePlayNextVideo"
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2020-02-27 04:10:56 +01:00
|
|
|
|
<ft-flex-box>
|
2021-08-05 22:17:01 +02:00
|
|
|
|
<ft-slider
|
|
|
|
|
:label="$t('Settings.Player Settings.Fast-Forward / Rewind Interval')"
|
|
|
|
|
:default-value="defaultSkipInterval"
|
|
|
|
|
:min-value="1"
|
|
|
|
|
:max-value="70"
|
|
|
|
|
:step="1"
|
|
|
|
|
value-extension="s"
|
|
|
|
|
@change="updateDefaultSkipInterval"
|
|
|
|
|
/>
|
2021-03-06 17:25:50 +01:00
|
|
|
|
<ft-slider
|
2021-04-29 20:33:13 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Next Video Interval')"
|
2021-03-06 17:25:50 +01:00
|
|
|
|
:default-value="defaultInterval"
|
|
|
|
|
:min-value="0"
|
|
|
|
|
:max-value="60"
|
|
|
|
|
:step="1"
|
|
|
|
|
value-extension="s"
|
|
|
|
|
@change="updateDefaultInterval"
|
|
|
|
|
/>
|
2020-02-27 04:10:56 +01:00
|
|
|
|
<ft-slider
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Default Volume')"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
:default-value="defaultVolume"
|
2020-02-27 04:10:56 +01:00
|
|
|
|
:min-value="0"
|
|
|
|
|
:max-value="100"
|
|
|
|
|
:step="1"
|
|
|
|
|
value-extension="%"
|
2021-06-09 02:18:27 +02:00
|
|
|
|
@change="updateDefaultVolume($event / 100)"
|
2020-02-27 04:10:56 +01:00
|
|
|
|
/>
|
|
|
|
|
<ft-slider
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:label="$t('Settings.Player Settings.Default Playback Rate')"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
:default-value="defaultPlayback"
|
2020-02-27 04:10:56 +01:00
|
|
|
|
:min-value="0.25"
|
2021-11-24 22:52:56 +01:00
|
|
|
|
:max-value="8"
|
2020-02-27 04:10:56 +01:00
|
|
|
|
:step="0.25"
|
2020-10-14 17:12:58 +02:00
|
|
|
|
value-extension="×"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
@change="updateDefaultPlayback"
|
2020-02-27 04:10:56 +01:00
|
|
|
|
/>
|
2022-04-11 00:00:47 +02:00
|
|
|
|
<ft-slider
|
|
|
|
|
:label="$t('Settings.Player Settings.Max Video Playback Rate')"
|
|
|
|
|
:default-value="maxVideoPlaybackRate"
|
|
|
|
|
:min-value="2"
|
|
|
|
|
:max-value="10"
|
|
|
|
|
:step="1"
|
|
|
|
|
value-extension="x"
|
|
|
|
|
@change="updateMaxVideoPlaybackRate"
|
|
|
|
|
/>
|
|
|
|
|
<ft-select
|
|
|
|
|
:placeholder="$t('Settings.Player Settings.Video Playback Rate Interval')"
|
|
|
|
|
:value="videoPlaybackRateInterval"
|
|
|
|
|
:select-names="playbackRateIntervalValues"
|
|
|
|
|
:select-values="playbackRateIntervalValues"
|
|
|
|
|
@change="updateVideoPlaybackRateInterval"
|
|
|
|
|
/>
|
2020-02-27 04:10:56 +01:00
|
|
|
|
</ft-flex-box>
|
2020-02-21 21:40:46 +01:00
|
|
|
|
<ft-flex-box>
|
|
|
|
|
<ft-select
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:placeholder="$t('Settings.Player Settings.Default Video Format.Default Video Format')"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
:value="defaultVideoFormat"
|
2020-02-21 21:40:46 +01:00
|
|
|
|
:select-names="formatNames"
|
|
|
|
|
:select-values="formatValues"
|
2020-10-19 17:32:53 +02:00
|
|
|
|
:tooltip="$t('Tooltips.Player Settings.Default Video Format')"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
@change="updateDefaultVideoFormat"
|
2020-02-21 21:40:46 +01:00
|
|
|
|
/>
|
|
|
|
|
<ft-select
|
2020-08-07 02:20:42 +02:00
|
|
|
|
:placeholder="$t('Settings.Player Settings.Default Quality.Default Quality')"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
:value="defaultQuality"
|
2020-02-21 21:40:46 +01:00
|
|
|
|
:select-names="qualityNames"
|
|
|
|
|
:select-values="qualityValues"
|
2020-03-01 04:37:02 +01:00
|
|
|
|
@change="updateDefaultQuality"
|
2020-02-21 21:40:46 +01:00
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
2022-05-30 15:24:34 +02:00
|
|
|
|
<br>
|
|
|
|
|
<ft-flex-box>
|
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Screenshot.Enable')"
|
|
|
|
|
:default-value="enableScreenshot"
|
|
|
|
|
@change="updateEnableScreenshot"
|
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
|
|
|
|
<div v-if="enableScreenshot">
|
|
|
|
|
<ft-flex-box>
|
|
|
|
|
<ft-select
|
|
|
|
|
:placeholder="$t('Settings.Player Settings.Screenshot.Format Label')"
|
|
|
|
|
:value="screenshotFormat"
|
|
|
|
|
:select-names="screenshotFormatNames"
|
|
|
|
|
:select-values="screenshotFormatValues"
|
|
|
|
|
@change="handleUpdateScreenshotFormat"
|
|
|
|
|
/>
|
|
|
|
|
<ft-slider
|
|
|
|
|
:label="$t('Settings.Player Settings.Screenshot.Quality Label')"
|
|
|
|
|
:default-value="screenshotQuality"
|
|
|
|
|
:min-value="0"
|
|
|
|
|
:max-value="100"
|
|
|
|
|
:step="1"
|
|
|
|
|
value-extension="%"
|
|
|
|
|
:disabled="screenshotFormat !== 'jpg'"
|
|
|
|
|
@change="updateScreenshotQuality"
|
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
|
|
|
|
<ft-flex-box>
|
|
|
|
|
<ft-toggle-switch
|
|
|
|
|
:label="$t('Settings.Player Settings.Screenshot.Ask Path')"
|
|
|
|
|
:default-value="screenshotAskPath"
|
|
|
|
|
@change="updateScreenshotAskPath"
|
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
|
|
|
|
<ft-flex-box
|
|
|
|
|
v-if="!screenshotAskPath"
|
|
|
|
|
class="screenshotFolderContainer"
|
|
|
|
|
>
|
|
|
|
|
<p class="screenshotFolderLabel">
|
|
|
|
|
{{ $t('Settings.Player Settings.Screenshot.Folder Label') }}
|
|
|
|
|
</p>
|
|
|
|
|
<ft-input
|
|
|
|
|
class="screenshotFolderPath"
|
|
|
|
|
:placeholder="screenshotFolderPlaceholder"
|
|
|
|
|
:show-action-button="false"
|
|
|
|
|
:show-label="false"
|
|
|
|
|
:disabled="true"
|
|
|
|
|
/>
|
|
|
|
|
<ft-button
|
|
|
|
|
:label="$t('Settings.Player Settings.Screenshot.Folder Button')"
|
|
|
|
|
class="screenshotFolderButton"
|
|
|
|
|
@click="chooseScreenshotFolder"
|
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
|
|
|
|
<ft-flex-box class="screenshotFolderContainer">
|
|
|
|
|
<p class="screenshotFilenamePatternTitle">
|
|
|
|
|
{{ $t('Settings.Player Settings.Screenshot.File Name Label') }}
|
|
|
|
|
<ft-tooltip
|
|
|
|
|
class="selectTooltip"
|
|
|
|
|
position="bottom"
|
|
|
|
|
:tooltip="$t('Settings.Player Settings.Screenshot.File Name Tooltip')"
|
|
|
|
|
/>
|
|
|
|
|
</p>
|
|
|
|
|
<ft-input
|
|
|
|
|
class="screenshotFilenamePatternInput"
|
|
|
|
|
placeholder=""
|
|
|
|
|
:value="screenshotFilenamePattern"
|
|
|
|
|
:spellcheck="false"
|
|
|
|
|
:show-action-button="false"
|
|
|
|
|
:show-label="false"
|
|
|
|
|
@input="handleScreenshotFilenamePatternChanged"
|
|
|
|
|
/>
|
|
|
|
|
<ft-input
|
|
|
|
|
class="screenshotFilenamePatternExample"
|
|
|
|
|
:placeholder="`${screenshotFilenameExample}`"
|
|
|
|
|
:show-action-button="false"
|
|
|
|
|
:show-label="false"
|
|
|
|
|
:disabled="true"
|
|
|
|
|
/>
|
|
|
|
|
</ft-flex-box>
|
|
|
|
|
</div>
|
2021-09-15 04:03:00 +02:00
|
|
|
|
</details>
|
2020-02-21 21:40:46 +01:00
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script src="./player-settings.js" />
|
2020-03-27 12:37:54 +01:00
|
|
|
|
<style scoped lang="sass" src="./player-settings.sass" />
|