web/save: add support for audio bitrate functionality
This commit is contained in:
@@ -16,6 +16,7 @@ const request = async (url: string) => {
|
||||
|
||||
downloadMode: saveSettings.downloadMode,
|
||||
|
||||
audioBitrate: saveSettings.audioBitrate,
|
||||
audioFormat: saveSettings.audioFormat,
|
||||
tiktokFullAudio: saveSettings.tiktokFullAudio,
|
||||
youtubeDubBrowserLang: saveSettings.youtubeDubBrowserLang,
|
||||
|
||||
@@ -15,6 +15,7 @@ const defaultSettings: CobaltSettings = {
|
||||
reduceTransparency: false,
|
||||
},
|
||||
save: {
|
||||
audioBitrate: "256",
|
||||
audioFormat: "mp3",
|
||||
disableMetadata: false,
|
||||
downloadMode: "auto",
|
||||
|
||||
@@ -2,6 +2,7 @@ import languages from '$i18n/languages.json';
|
||||
import type { RecursivePartial } from './generic';
|
||||
|
||||
export const themeOptions = ["auto", "light", "dark"] as const;
|
||||
export const audioBitrateOptions = ["320", "256", "128", "96", "64"] as const;
|
||||
export const audioFormatOptions = ["best", "mp3", "ogg", "wav", "opus"] as const;
|
||||
export const downloadModeOptions = ["auto", "audio", "mute"] as const;
|
||||
export const filenameStyleOptions = ["classic", "basic", "pretty", "nerdy"] as const;
|
||||
@@ -32,6 +33,7 @@ type CobaltSettingsProcessing = {
|
||||
|
||||
type CobaltSettingsSave = {
|
||||
audioFormat: typeof audioFormatOptions[number],
|
||||
audioBitrate: typeof audioBitrateOptions[number],
|
||||
disableMetadata: boolean,
|
||||
downloadMode: typeof downloadModeOptions[number],
|
||||
filenameStyle: typeof filenameStyleOptions[number],
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<script lang="ts">
|
||||
import { t } from "$lib/i18n/translations";
|
||||
|
||||
import { audioFormatOptions } from "$lib/types/settings";
|
||||
import { audioFormatOptions, audioBitrateOptions } from "$lib/types/settings";
|
||||
|
||||
import SettingsCategory from "$components/settings/SettingsCategory.svelte";
|
||||
import Switcher from "$components/buttons/Switcher.svelte";
|
||||
@@ -23,6 +23,21 @@
|
||||
</Switcher>
|
||||
</SettingsCategory>
|
||||
|
||||
|
||||
<SettingsCategory sectionId="audio-bitrate" title={$t("settings.audio.bitrate")}>
|
||||
<Switcher big={true} description={$t("settings.audio.bitrate.description")}>
|
||||
{#each audioBitrateOptions as value}
|
||||
<SettingsButton
|
||||
settingContext="save"
|
||||
settingId="audioBitrate"
|
||||
settingValue={value}
|
||||
>
|
||||
{value}{$t("settings.audio.bitrate.kbps")}
|
||||
</SettingsButton>
|
||||
{/each}
|
||||
</Switcher>
|
||||
</SettingsCategory>
|
||||
|
||||
<SettingsCategory sectionId="youtube" title={$t("settings.audio.youtube.dub")}>
|
||||
<SettingsToggle
|
||||
settingContext="save"
|
||||
|
||||
Reference in New Issue
Block a user