From c17091768c13b01314a3523e20a31d105f5a17e5 Mon Sep 17 00:00:00 2001 From: Hampus Date: Mon, 12 Oct 2026 02:17:53 +0200 Subject: [PATCH] feat(app): pick screen share bitrate up to the limit (#3411) --- .../src/features/i18n/locales/ar/messages.po | 26 ++++++++--- .../locales/auto-i18n-reviewed-unchanged.json | 24 +++++++++++ .../src/features/i18n/locales/bg/messages.po | 26 ++++++++--- .../src/features/i18n/locales/cs/messages.po | 26 ++++++++--- .../src/features/i18n/locales/da/messages.po | 26 ++++++++--- .../src/features/i18n/locales/de/messages.po | 26 ++++++++--- .../src/features/i18n/locales/el/messages.po | 26 ++++++++--- .../features/i18n/locales/en-GB/messages.po | 26 ++++++++--- .../features/i18n/locales/en-US/messages.po | 26 ++++++++--- .../features/i18n/locales/es-419/messages.po | 26 ++++++++--- .../features/i18n/locales/es-ES/messages.po | 26 ++++++++--- .../src/features/i18n/locales/fi/messages.po | 26 ++++++++--- .../src/features/i18n/locales/fr/messages.po | 26 ++++++++--- .../src/features/i18n/locales/he/messages.po | 26 ++++++++--- .../src/features/i18n/locales/hi/messages.po | 26 ++++++++--- .../src/features/i18n/locales/hr/messages.po | 26 ++++++++--- .../src/features/i18n/locales/hu/messages.po | 26 ++++++++--- .../src/features/i18n/locales/id/messages.po | 26 ++++++++--- .../src/features/i18n/locales/it/messages.po | 26 ++++++++--- .../src/features/i18n/locales/ja/messages.po | 26 ++++++++--- .../src/features/i18n/locales/ko/messages.po | 26 ++++++++--- .../src/features/i18n/locales/lt/messages.po | 26 ++++++++--- .../src/features/i18n/locales/nl/messages.po | 26 ++++++++--- .../src/features/i18n/locales/no/messages.po | 26 ++++++++--- .../src/features/i18n/locales/pl/messages.po | 26 ++++++++--- .../features/i18n/locales/pt-BR/messages.po | 26 ++++++++--- .../src/features/i18n/locales/ro/messages.po | 26 ++++++++--- .../src/features/i18n/locales/ru/messages.po | 26 ++++++++--- .../features/i18n/locales/sv-SE/messages.po | 26 ++++++++--- .../src/features/i18n/locales/th/messages.po | 26 ++++++++--- .../src/features/i18n/locales/tr/messages.po | 26 ++++++++--- .../src/features/i18n/locales/uk/messages.po | 26 ++++++++--- .../src/features/i18n/locales/vi/messages.po | 26 ++++++++--- .../features/i18n/locales/zh-CN/messages.po | 26 ++++++++--- .../features/i18n/locales/zh-TW/messages.po | 26 ++++++++--- .../components/modals/tabs/UserVideoTab.tsx | 42 ++++++++++++++++++ .../modals/tabs/UserVideoTabState.ts | 24 ++++++++++- .../search_index/VoiceVideoIndex.ts | 7 +-- .../section_registry/VoiceVideoSections.ts | 5 +++ .../voice/commands/VoiceSettingsCommands.ts | 1 + .../components/StreamSettingsMenuContent.tsx | 1 + .../modals/ScreenSharePickerModal.tsx | 1 + .../voice/components/useStatsForNerds.ts | 7 ++- .../VoiceEngineV2AppConnectionHostAdapter.ts | 4 +- .../VoiceEngineV2AppScreenShareWiring.test.ts | 14 +++++- .../voice_screen_share_manager/shared.ts | 10 ++--- .../src/features/voice/state/VoiceSettings.ts | 33 +++++++++++++- .../voice/utils/ScreenShareOptions.test.ts | 2 + .../voice/utils/ScreenShareOptions.ts | 43 ++++++++++++------- .../voice/utils/ScreenShareStartFlow.ts | 1 + .../features/voice/utils/StatsForNerdsCopy.ts | 13 ++++-- .../voice/utils/VideoQualityEntitlement.ts | 5 +++ 52 files changed, 879 insertions(+), 242 deletions(-) diff --git a/fluxer_app/src/features/i18n/locales/ar/messages.po b/fluxer_app/src/features/i18n/locales/ar/messages.po index 2e9b081ca..aafaa80b5 100644 --- a/fluxer_app/src/features/i18n/locales/ar/messages.po +++ b/fluxer_app/src/features/i18n/locales/ar/messages.po @@ -1005,6 +1005,11 @@ msgstr "يفضّل {authorNickname} أن تتم الإشارة إليه بـ @ msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, zero {خلفية مخصصة} one {خلفية مخصصة} two {خلفيتان مخصصتان} few {خلفيات مخصصة} many {خلفية مخصصة} other {خلفية مخصصة}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} ميجابت في الثانية" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "اقتراح الإكمال التلقائي: {label}، {selectedOptionPosition} من {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "اقتراح الإكمال التلقائي: {label}، {selectedOptionP #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "المقاييس الحيوية" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "معدل البت" @@ -14552,16 +14561,16 @@ msgstr "مفعّل" msgid "Encoder path" msgstr "مسار المُرمِّز" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "مسار المُرمّز، وضع SVC، وتلميح المحتوى" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "تفضيل المُرمِّز لعمليات مشاركة الشاشة الجديدة." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "المُرمّز، SVC، وإعدادات البت المسبقة" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "مع {PREMIUM_PRODUCT_NAME}، يمكنك استخدام صور رمزي msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "باستخدام {premiumProductName}، يزداد الحد الأقصى لحجم الملف الواحد إلى {fileSizeLimit}. كما تحصل على صور رمزية متحركة ورسائل أطول والعديد من مزايا {premiumProductName} الأخرى." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "مع تلقائي، يتبع معدل البت دقة الشاشة ومعدل الإطارات لديك. القيم الأعلى تحافظ على حدة الحركة السريعة وتستخدم المزيد من نطاق التحميل." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json b/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json index 3e07bac1a..60ad720a2 100644 --- a/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json +++ b/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json @@ -55,6 +55,7 @@ "WebAuthn", "Win", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{fps} FPS", @@ -128,6 +129,7 @@ "YubiKey", "emoji {emojiName}", "online", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -312,6 +314,7 @@ "online", "spoiler", "{actor} stopped following an announcement channel in {channel}", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -618,6 +621,7 @@ "Webhook {currentName}", "Win", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{fps} FPS", @@ -936,6 +940,7 @@ "Enable emoji and sticker cloning shortcuts", "Enable previews", "Enable the integrations whose credentials you have configured. Only available services are shown.", + "Encoder path, SVC mode, and content hint", "Encryption", "Ensures file messages appear in the order you sent them", "Enter a community name between 1 and 100 characters.", @@ -1659,6 +1664,7 @@ "Who can join", "Who can message you", "Who can message you?", + "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth.", "With {PREMIUM_PRODUCT_NAME}, you can use animated avatars ({ANIMATED_AVATAR_FORMATS}) and profile banners, and unlock many other {PREMIUM_PRODUCT_NAME} perks.", "Without this permission, push-to-talk is required in this channel.", "Wordmark", @@ -1765,6 +1771,7 @@ "{appName} will close, install the update and open again.", "{appName} will reload to finish updating.", "{appName} {version} is available.", + "{bitrate} Mbps", "{channelHeading}, {mentionCount, plural, one {# mention} other {# mentions}}", "{context} · {accountName}", "{count, plural, =0 {∞ No limit} one {# participant} other {# participants}}", @@ -1894,6 +1901,7 @@ "emoji {emojiName}", "spoiler", "sticker", + "{bitrate} Mbps", "{context} · {accountName}", "{count, plural, one {# video} other {# videos}}", "{fps} FPS", @@ -2007,6 +2015,7 @@ "Zoom", "emoji {emojiName}", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", @@ -2278,6 +2287,7 @@ "message", "spoiler", "sticker", + "{bitrate} Mbps", "{channelHeading}, {mentionCount, plural, one {# mention} other {# mentions}}", "{context} · {accountName}", "{count, plural, one {# image} other {# images}}", @@ -2469,6 +2479,7 @@ "Win", "YubiKey", "emoji {emojiName}", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{fps} FPS", @@ -2576,6 +2587,7 @@ "link", "online", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{formattedPresenceCount} online", "{fps} FPS", @@ -2745,6 +2757,7 @@ "emoji {emojiName}", "online", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -2916,6 +2929,7 @@ "online", "spoiler", "sticker", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -3013,6 +3027,7 @@ "WebAuthn", "Win", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", @@ -3099,6 +3114,7 @@ "WebAuthn", "Win", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", @@ -3270,6 +3286,7 @@ "spoiler", "sticker", "{appName} is up to date.", + "{bitrate} Mbps", "{context} · {accountName}", "{count, plural, one {# passkey} other {# passkeys}}", "{formattedPresenceCount} online", @@ -3424,6 +3441,7 @@ "Zoom", "emoji {emojiName}", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{kilobits} kbps", @@ -3545,6 +3563,7 @@ "link", "online", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{formattedPresenceCount} online", "{onlineCount} online", @@ -3673,6 +3692,7 @@ "link", "online", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -3829,6 +3849,7 @@ "slash {commandName}", "spoiler", "sticker", + "{bitrate} Mbps", "{context} · {accountName}", "{desktopChannel} Desktop {desktopVersion}", "{formattedPresenceCount} online", @@ -4180,6 +4201,7 @@ "Win", "YubiKey", "spoiler", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", @@ -4333,6 +4355,7 @@ "Win", "Wordmark", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", @@ -4461,6 +4484,7 @@ "Webhook {currentName}", "Win", "YubiKey", + "{bitrate} Mbps", "{context} · {accountName}", "{fps} FPS", "{frameRate} FPS", diff --git a/fluxer_app/src/features/i18n/locales/bg/messages.po b/fluxer_app/src/features/i18n/locales/bg/messages.po index b28e32984..4d59d84ff 100644 --- a/fluxer_app/src/features/i18n/locales/bg/messages.po +++ b/fluxer_app/src/features/i18n/locales/bg/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} предпочита отговори с @спомен msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {персонализиран фон} other {персонализирани фона}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Предложение за автоматично довършване: {label}, {selectedOptionPosition} от {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Предложение за автоматично довършване: #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Биометрични данни" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Битрейт" @@ -14552,16 +14561,16 @@ msgstr "Включено" msgid "Encoder path" msgstr "Път на енкодера" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Път на кодера, SVC режим и подсказка за съдържание" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Предпочитан енкодер за нови споделяния на екрана." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Кодер, SVC и битрейт предварителни настройки" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "С {PREMIUM_PRODUCT_NAME} можеш да използваш аними msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "С {premiumProductName} лимитът ти за качване на файл се увеличава до {fileSizeLimit}. Получаваш и анимирани аватари, по-дълги съобщения и много други предимства на {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "С „Автоматично“ битрейтът следва вашата резолюция и честота на кадрите. По-високите стойности поддържат по-рязко движението при бързи сцени и използват повече честотна лента за качване." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/cs/messages.po b/fluxer_app/src/features/i18n/locales/cs/messages.po index 6b0f5da4f..e37653297 100644 --- a/fluxer_app/src/features/i18n/locales/cs/messages.po +++ b/fluxer_app/src/features/i18n/locales/cs/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} preferuje odpovědi s @zmínkou. Přesto odeslat bez zm msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {vlastní pozadí} few {vlastní pozadí} many {vlastního pozadí} other {vlastních pozadí}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Návrh automatického doplňování: {label}, {selectedOptionPosition} z {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Návrh automatického doplňování: {label}, {selectedOptionPosition} z #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrické ověřování" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Přenosová rychlost" @@ -14552,16 +14561,16 @@ msgstr "Zapnuto" msgid "Encoder path" msgstr "Způsob kódování" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Cesta kodéru, režim SVC a nápověda k obsahu" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferovaný enkodér pro nová sdílení obrazovky." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kodér, SVC a předvolby přenosové rychlosti" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "S {PREMIUM_PRODUCT_NAME} můžete používat animované avatary ({ANIMAT msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "S {premiumProductName} se limit velikosti jednoho nahrávaného souboru zvýší na {fileSizeLimit}. Získáte také animované avatary, delší zprávy a mnoho dalších výhod {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "S možností Automaticky se přenosová rychlost přizpůsobí vašemu rozlišení a snímkové frekvenci. Vyšší hodnoty udržují ostrý pohyb a využívají více šířky pásma pro nahrávání." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/da/messages.po b/fluxer_app/src/features/i18n/locales/da/messages.po index beffbfe3c..6d52a9f14 100644 --- a/fluxer_app/src/features/i18n/locales/da/messages.po +++ b/fluxer_app/src/features/i18n/locales/da/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} foretrækker at blive @omtalt i svar. Send uden omtalen msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {brugerdefineret baggrund} other {brugerdefinerede baggrunde}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Forslag til autoudfyldelse: {label}, {selectedOptionPosition} af {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Forslag til autoudfyldelse: {label}, {selectedOptionPosition} af {result #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometri" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Aktiveret" msgid "Encoder path" msgstr "Encodersti" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Encoder-sti, SVC-tilstand og indholdsindikator" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Encoderpræference for nye skærmdelinger." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder, SVC og bitrate-forudindstillinger" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Med {PREMIUM_PRODUCT_NAME} kan du bruge animerede avatarer ({ANIMATED_AV msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Med {premiumProductName} stiger uploadgrænsen pr. fil til {fileSizeLimit}. Du får også animerede avatarer, længere beskeder og mange andre {premiumProductName}-fordele." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Med Automatisk følger bitraten din opløsning og billedhastighed. Højere værdier holder hurtige bevægelser skarpere og bruger mere upload-båndbredde." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/de/messages.po b/fluxer_app/src/features/i18n/locales/de/messages.po index 796e229b1..f7bb3860b 100644 --- a/fluxer_app/src/features/i18n/locales/de/messages.po +++ b/fluxer_app/src/features/i18n/locales/de/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} möchte bei Antworten eine @-Erwähnung erhalten. Trotz msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {eigener Hintergrund} other {eigene Hintergründe}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} MBit/s" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Vervollständigungsvorschlag: {label}, {selectedOptionPosition} von {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Vervollständigungsvorschlag: {label}, {selectedOptionPosition} von {res #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrie" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Aktiviert" msgid "Encoder path" msgstr "Encoder-Pfad" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Encoderpfad, SVC-Modus und Inhalts-Hint" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Encoder-Einstellung für neue Bildschirmfreigaben." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder, SVC und Bitraten-Voreinstellungen" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Mit {PREMIUM_PRODUCT_NAME} kannst du animierte Avatare ({ANIMATED_AVATAR msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Mit {premiumProductName} steigt dein Upload-Limit pro Datei auf {fileSizeLimit}. Außerdem erhältst du animierte Avatare, längere Nachrichten und viele weitere {premiumProductName}-Vorteile." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Mit Automatisch folgt die Bitrate deiner Auflösung und Bildrate. Höhere Werte halten schnelle Bewegungen schärfer und verbrauchen mehr Upload-Bandbreite." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/el/messages.po b/fluxer_app/src/features/i18n/locales/el/messages.po index 9e5d768f8..63b2df1be 100644 --- a/fluxer_app/src/features/i18n/locales/el/messages.po +++ b/fluxer_app/src/features/i18n/locales/el/messages.po @@ -1005,6 +1005,11 @@ msgstr "Ο/Η {authorNickname} προτιμά να γίνεται αναφορά msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {προσαρμοσμένο φόντο} other {προσαρμοσμένα φόντα}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Πρόταση αυτόματης συμπλήρωσης: {label}, {selectedOptionPosition} από {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Πρόταση αυτόματης συμπλήρωσης: {label}, {sele #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Βιομετρικά στοιχεία" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Ρυθμός μετάδοσης δεδομένων" @@ -14552,16 +14561,16 @@ msgstr "Ενεργοποιημένο" msgid "Encoder path" msgstr "Τύπος κωδικοποιητή" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Διαδρομή κωδικοποιητή, λειτουργία SVC και υπόδειξη περιεχομένου" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Προτιμώμενος κωδικοποιητής για νέα κοινή χρήση οθόνης." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Κωδικοποιητής, SVC και προεπιλογές ρυθμού μετάδοσης" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Με το {PREMIUM_PRODUCT_NAME}, μπορείτε να χρησιμοπ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Με το {premiumProductName}, το όριο μεταφόρτωσης ανά αρχείο αυξάνεται σε {fileSizeLimit}. Αποκτάτε επίσης κινούμενα avatar, μεγαλύτερα μηνύματα και πολλά άλλα προνόμια του {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Με την Αυτόματη ρύθμιση, το bitrate ακολουθεί την ανάλυση και τον ρυθμό καρέ σας. Μεγαλύτερες τιμές διατηρούν την ευκρίνεια της γρήγορης κίνησης και χρησιμοποιούν περισσότερο εύρος ζώνης αποστολής." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/en-GB/messages.po b/fluxer_app/src/features/i18n/locales/en-GB/messages.po index 1d620b026..019bab1d6 100644 --- a/fluxer_app/src/features/i18n/locales/en-GB/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-GB/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} prefers to be @mentioned on replies. Send without the m msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCou #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrics" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Enabled" msgid "Encoder path" msgstr "Encoder path" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Encoder path, SVC mode, and content hint" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Encoder preference for new screen shares." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder, SVC and bitrate presets" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "With {PREMIUM_PRODUCT_NAME}, you can use animated avatars ({ANIMATED_AVA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/en-US/messages.po b/fluxer_app/src/features/i18n/locales/en-US/messages.po index 23494c822..3932f5d48 100644 --- a/fluxer_app/src/features/i18n/locales/en-US/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-US/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} prefers to be @mentioned on replies. Send without the m msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCou #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrics" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Enabled" msgid "Encoder path" msgstr "Encoder path" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Encoder path, SVC mode, and content hint" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Encoder preference for new screen shares." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder, SVC, and bitrate presets" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "With {PREMIUM_PRODUCT_NAME}, you can use animated avatars ({ANIMATED_AVA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/es-419/messages.po b/fluxer_app/src/features/i18n/locales/es-419/messages.po index 02de004f7..6f32c120e 100644 --- a/fluxer_app/src/features/i18n/locales/es-419/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-419/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} prefiere que lo mencionen en las respuestas. ¿Enviar s msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {fondo personalizado} many {fondos personalizados} other {fondos personalizados}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Sugerencia de autocompletar: {label}, {selectedOptionPosition} de {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Sugerencia de autocompletar: {label}, {selectedOptionPosition} de {resul #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Datos biométricos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Tasa de bits" @@ -14552,16 +14561,16 @@ msgstr "Activado" msgid "Encoder path" msgstr "Ruta del codificador" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Ruta del codificador, modo SVC y sugerencia de contenido" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferencia de codificador para nuevas transmisiones de pantalla compartida." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Codificador, SVC y ajustes preestablecidos de tasa de bits" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Con {PREMIUM_PRODUCT_NAME}, puedes usar avatares animados ({ANIMATED_AVA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Con {premiumProductName}, tu límite de subida por archivo aumenta a {fileSizeLimit}. También obtienes avatares animados, mensajes más largos y muchos otros beneficios de {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Con Automático, la tasa de bits sigue tu resolución y tasa de fotogramas. Los valores más altos mantienen el movimiento rápido más nítido y usan más ancho de banda de subida." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/es-ES/messages.po b/fluxer_app/src/features/i18n/locales/es-ES/messages.po index 8d79de879..3c8689d90 100644 --- a/fluxer_app/src/features/i18n/locales/es-ES/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-ES/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} prefiere que se le mencione en las respuestas. ¿Enviar msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {fondo personalizado} many {fondos personalizados} other {fondos personalizados}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Sugerencia de autocompletar: {label}, {selectedOptionPosition} de {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Sugerencia de autocompletar: {label}, {selectedOptionPosition} de {resul #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Datos biométricos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Tasa de bits" @@ -14552,16 +14561,16 @@ msgstr "Activado" msgid "Encoder path" msgstr "Ruta del codificador" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Ruta del codificador, modo SVC y sugerencia de contenido" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferencia del codificador para nuevos flujos de pantalla compartida." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Ajustes predeterminados de codificador, SVC y tasa de bits" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Con {PREMIUM_PRODUCT_NAME}, puedes usar avatares animados ({ANIMATED_AVA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Con {premiumProductName}, tu límite de subida por archivo aumenta a {fileSizeLimit}. También obtienes avatares animados, mensajes más largos y muchas otras ventajas de {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Con Automático, la tasa de bits sigue tu resolución y tasa de fotogramas. Los valores más altos mantienen el movimiento rápido más nítido y usan más ancho de banda de subida." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/fi/messages.po b/fluxer_app/src/features/i18n/locales/fi/messages.po index 6a4cd3575..9912a61fd 100644 --- a/fluxer_app/src/features/i18n/locales/fi/messages.po +++ b/fluxer_app/src/features/i18n/locales/fi/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} haluaa, että hänet mainitaan vastauksissa. Lähetetä msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {mukautettu tausta} other {mukautettua taustaa}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbit/s" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Automaattinen täydennysehdotus: {label}, {selectedOptionPosition}/{resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Automaattinen täydennysehdotus: {label}, {selectedOptionPosition}/{resu #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometriikka" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bittinopeus" @@ -14552,16 +14561,16 @@ msgstr "Käytössä" msgid "Encoder path" msgstr "Enkooderin polku" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kooderin polku, SVC-tila ja sisältövihje" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Ensisijainen enkooderi uusissa näytönjaoissa." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kooderi, SVC ja bittinopeusasetukset" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "{PREMIUM_PRODUCT_NAME}-tilauksella voit käyttää animoituja avatareita msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "{premiumProductName}-tilauksella tiedostokohtainen lähetysraja nousee arvoon {fileSizeLimit}. Saat myös animoituja avatareita, pidempiä viestejä ja monia muita {premiumProductName}-etuja." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Automaattinen: bittinopeus seuraa resoluutiotasi ja kuvataajuuttasi. Suuremmat arvot pitävät nopean liikkeen terävämpänä ja käyttävät enemmän lähetyskaistaa." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/fr/messages.po b/fluxer_app/src/features/i18n/locales/fr/messages.po index 64cd87c7f..4cd23683e 100644 --- a/fluxer_app/src/features/i18n/locales/fr/messages.po +++ b/fluxer_app/src/features/i18n/locales/fr/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} préfère être mentionné dans les réponses. Envoyer msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {arrière-plan personnalisé} many {arrière-plans personnalisés} other {arrière-plans personnalisés}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Suggestion de saisie semi-automatique : {label}, {selectedOptionPosition} sur {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Suggestion de saisie semi-automatique : {label}, {selectedOptionPosition #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Données biométriques" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Débit binaire" @@ -14552,16 +14561,16 @@ msgstr "Activé" msgid "Encoder path" msgstr "Chemin de l’encodeur" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Chemin de l'encodeur, mode SVC et indication de contenu" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Préférence d’encodeur pour les nouveaux partages d’écran." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encodeur, SVC et préréglages de débit" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Avec {PREMIUM_PRODUCT_NAME}, vous pouvez utiliser des avatars animés ({ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Avec {premiumProductName}, la limite d’envoi par fichier passe à {fileSizeLimit}. Vous bénéficiez aussi d’avatars animés, de messages plus longs et de nombreux autres avantages {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Avec Automatique, le débit binaire suit votre résolution et votre fréquence d'images. Des valeurs plus élevées gardent le mouvement rapide plus net et utilisent plus de bande passante d'envoi." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/he/messages.po b/fluxer_app/src/features/i18n/locales/he/messages.po index 9d094bf74..389f8f61a 100644 --- a/fluxer_app/src/features/i18n/locales/he/messages.po +++ b/fluxer_app/src/features/i18n/locales/he/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} מעדיף/ה לקבל אזכור בתגובות. לש msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {רקע מותאם אישית} two {רקעים מותאמים אישית} other {רקעים מותאמים אישית}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} מגה-ביט לשנייה" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "הצעת השלמה אוטומטית: {label}, {selectedOptionPosition} מתוך {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "הצעת השלמה אוטומטית: {label}, {selectedOptionPosition} #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "ביומטריה" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "קצב סיביות" @@ -14552,16 +14561,16 @@ msgstr "מופעל" msgid "Encoder path" msgstr "נתיב המקודד" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "נתיב מקודד, מצב SVC ורמז לתוכן" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "העדפת מקודד עבור שיתופי מסך חדשים." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "קידוד, SVC והגדרות קבועות מראש של קצב סיביות" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "עם {PREMIUM_PRODUCT_NAME}, תוכל להשתמש בתמונות פרו msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "עם {premiumProductName}, מגבלת ההעלאה לקובץ תגדל ל-{fileSizeLimit}. בנוסף תקבל תמונות פרופיל מונפשות, הודעות ארוכות יותר והרבה הטבות נוספות של {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "עם אוטומטי, קצב הנתונים עוקב אחר הרזולוציה וקצב הפריימים שלך. ערכים גבוהים יותר שומרים על תנועה מהירה חדה יותר ומשתמשים ביותר רוחב פס להעלאה." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/hi/messages.po b/fluxer_app/src/features/i18n/locales/hi/messages.po index e76af7a83..4b39f6d29 100644 --- a/fluxer_app/src/features/i18n/locales/hi/messages.po +++ b/fluxer_app/src/features/i18n/locales/hi/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} चाहते हैं कि जवाब में msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {कस्टम बैकग्राउंड} other {कस्टम बैकग्राउंड}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} एमबीपीएस" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "ऑटो-कम्प्लीट सुझाव: {label}, {resultCount} में से {selectedOptionPosition}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "ऑटो-कम्प्लीट सुझाव: {label}, {resultCoun #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "बायोमेट्रिक्स" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "बिटरेट" @@ -14552,16 +14561,16 @@ msgstr "चालू है" msgid "Encoder path" msgstr "एन्कोडर पाथ" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "एनकोडर पाथ, एसवीसी मोड और कंटेंट हिंट" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "नए स्क्रीन शेयर के लिए एन्कोडर प्राथमिकता।" -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "एनकोडर, एसवीसी और बिटरेट प्रीसेट" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "{PREMIUM_PRODUCT_NAME} के साथ आप एनिमेटेड msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "{premiumProductName} के साथ आपकी प्रति-फ़ाइल अपलोड सीमा बढ़कर {fileSizeLimit} हो जाती है। साथ ही आपको एनिमेटेड अवतार, लंबे मैसेज और {premiumProductName} के कई दूसरे पर्क मिलते हैं।" +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Automatic के साथ, बिटरेट आपके रिज़ॉल्यूशन और फ़्रेम रेट का अनुसरण करता है। उच्च मान तेज़ गति को अधिक शार्प रखते हैं और अधिक अपलोड बैंडविड्थ का उपयोग करते हैं।" + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/hr/messages.po b/fluxer_app/src/features/i18n/locales/hr/messages.po index 921e81b36..acc588829 100644 --- a/fluxer_app/src/features/i18n/locales/hr/messages.po +++ b/fluxer_app/src/features/i18n/locales/hr/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} želi @spominjanje u odgovorima. Želite li svejedno po msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {prilagođena pozadina} few {prilagođene pozadine} other {prilagođenih pozadina}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Prijedlog automatskog dovršavanja: {label}, {selectedOptionPosition} od {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Prijedlog automatskog dovršavanja: {label}, {selectedOptionPosition} od #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrija" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Brzina prijenosa podataka" @@ -14552,16 +14561,16 @@ msgstr "Omogućeno" msgid "Encoder path" msgstr "Način kodiranja" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Putanja kodera, SVC način rada i savjet za sadržaj" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Željeni način kodiranja za nova dijeljenja zaslona." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kodeci, SVC i unaprijed postavljene vrijednosti protoka" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Uz {PREMIUM_PRODUCT_NAME} možete koristiti animirane avatare ({ANIMATED msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Uz {premiumProductName} ograničenje veličine pojedine datoteke povećava se na {fileSizeLimit}. Dobivate i animirane avatare, duže poruke i mnoge druge pogodnosti {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Uz Automatski, protok podataka prati vašu razlučivost i broj sličica u sekundi. Veće vrijednosti zadržavaju oštrinu brze akcije i koriste više propusnosti za prijenos." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/hu/messages.po b/fluxer_app/src/features/i18n/locales/hu/messages.po index 87a52b1a9..d0584b523 100644 --- a/fluxer_app/src/features/i18n/locales/hu/messages.po +++ b/fluxer_app/src/features/i18n/locales/hu/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} szeretné, ha @említést kapna a válaszokban. Mégis msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {egyéni háttér} other {egyéni háttér}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Automatikus kiegészítési javaslat: {label}, {selectedOptionPosition}/{resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Automatikus kiegészítési javaslat: {label}, {selectedOptionPosition}/ #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometria" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitráta" @@ -14552,16 +14561,16 @@ msgstr "Engedélyezve" msgid "Encoder path" msgstr "Kódolási útvonal" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kódolóútvonal, SVC mód és tartalomhint" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Az új képernyőmegosztásokhoz használt kódoló beállításai." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kódoló, SVC és bitráta előbeállítások" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "A(z) {PREMIUM_PRODUCT_NAME} csomaggal animált profilképeket ({ANIMATED msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "A(z) {premiumProductName} csomaggal a fájlonkénti feltöltési korlátod {fileSizeLimit} lesz. Animált profilképeket, hosszabb üzeneteket és a(z) {premiumProductName} számos további előnyét is megkapod." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Az Automatikus beállítással a bitráta a felbontásodhoz és képkockasebességedhez igazodik. A magasabb értékek élesebben tartják a gyors mozgást, és több feltöltési sávszélességet használnak." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/id/messages.po b/fluxer_app/src/features/i18n/locales/id/messages.po index 2d2921c48..30ec1fdc1 100644 --- a/fluxer_app/src/features/i18n/locales/id/messages.po +++ b/fluxer_app/src/features/i18n/locales/id/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} lebih suka disebut dengan @sebutan saat dibalas. Tetap msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, other {latar belakang kustom}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Saran pelengkapan otomatis: {label}, {selectedOptionPosition} dari {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Saran pelengkapan otomatis: {label}, {selectedOptionPosition} dari {resu #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrik" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Diaktifkan" msgid "Encoder path" msgstr "Jalur encoder" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Jalur encoder, mode SVC, dan petunjuk konten" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferensi encoder untuk berbagi layar baru." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder, preset SVC, dan bitrate" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Dengan {PREMIUM_PRODUCT_NAME}, kamu bisa memakai avatar animasi ({ANIMAT msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Dengan {premiumProductName}, batas unggah per file naik menjadi {fileSizeLimit}. Kamu juga mendapat avatar animasi, pesan yang lebih panjang, dan banyak keuntungan {premiumProductName} lainnya." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Dengan Otomatis, bitrate mengikuti resolusi dan frame rate Anda. Nilai yang lebih tinggi menjaga gerakan cepat tetap tajam dan menggunakan lebih banyak bandwidth unggah." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/it/messages.po b/fluxer_app/src/features/i18n/locales/it/messages.po index 999af519c..82e2d4db1 100644 --- a/fluxer_app/src/features/i18n/locales/it/messages.po +++ b/fluxer_app/src/features/i18n/locales/it/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} preferisce essere menzionato nelle risposte. Vuoi invia msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {sfondo personalizzato} many {sfondi personalizzati} other {sfondi personalizzati}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Suggerimento di completamento automatico: {label}, {selectedOptionPosition} di {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Suggerimento di completamento automatico: {label}, {selectedOptionPositi #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometria" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Abilitato" msgid "Encoder path" msgstr "Percorso encoder" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Percorso codificatore, modalità SVC e suggerimento contenuto" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferenza dell'encoder per le nuove condivisioni schermo." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Codifica, SVC e preimpostazioni bitrate" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Con {PREMIUM_PRODUCT_NAME}, puoi utilizzare avatar animati ({ANIMATED_AV msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Con {premiumProductName}, il limite di caricamento per file aumenta a {fileSizeLimit}. Ottieni anche avatar animati, messaggi più lunghi e molti altri vantaggi di {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Con Automatico, la velocità in bit segue la tua risoluzione e frequenza dei fotogrammi. Valori più alti mantengono più nitidi i movimenti veloci e utilizzano più larghezza di banda in upload." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/ja/messages.po b/fluxer_app/src/features/i18n/locales/ja/messages.po index 49d3395f6..c1bc68c0b 100644 --- a/fluxer_app/src/features/i18n/locales/ja/messages.po +++ b/fluxer_app/src/features/i18n/locales/ja/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname}さんは返信時にメンションされることを msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount, plural, other {カスタム背景}} {backgroundCount} / {maxBackgroundImages}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "入力候補: {label}、{resultCount}件中{selectedOptionPosition}番目" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "入力候補: {label}、{resultCount}件中{selectedOptionPosition}番 #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "生体認証" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "ビットレート" @@ -14552,16 +14561,16 @@ msgstr "有効" msgid "Encoder path" msgstr "エンコーダーパス" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "エンコーダーパス、SVCモード、コンテンツヒント" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "新しい画面共有のエンコーダー設定" -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "エンコーダー、SVC、ビットレートプリセット" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "{PREMIUM_PRODUCT_NAME}では、アニメーションアバター({ANIM msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "{premiumProductName}を使用すると、ファイルあたりのアップロード制限が{fileSizeLimit}に増加し、アニメーションアバター、より長いメッセージ、その他多くの{premiumProductName}の特典を利用できます。" +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "自動を選択すると、ビットレートは解像度とフレームレートに合わせて調整されます。値が高いほど、動きの速い映像が鮮明になり、アップロード帯域幅をより多く使用します。" + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/ko/messages.po b/fluxer_app/src/features/i18n/locales/ko/messages.po index aecef85aa..10ce39ffa 100644 --- a/fluxer_app/src/features/i18n/locales/ko/messages.po +++ b/fluxer_app/src/features/i18n/locales/ko/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname}님은 답장 시 멘션되는 것을 선호합니다. msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount, plural, other {맞춤 배경}} {backgroundCount} / {maxBackgroundImages}개" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate}Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "자동 완성 제안: {label}, {resultCount}개 중 {selectedOptionPosition}번째" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "자동 완성 제안: {label}, {resultCount}개 중 {selectedOptionPosit #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "생체 인식" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "비트 전송률" @@ -14552,16 +14561,16 @@ msgstr "사용" msgid "Encoder path" msgstr "인코더 방식" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "인코더 경로, SVC 모드 및 콘텐츠 힌트" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "새 화면 공유에 사용할 인코더 설정입니다." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "인코더, SVC 및 비트 전송률 사전 설정" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "{PREMIUM_PRODUCT_NAME}을 사용하면 애니메이션 아바타({ANIMAT msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "{premiumProductName}을 사용하면 파일당 업로드 제한이 {fileSizeLimit}로 증가하며, 애니메이션 아바타, 더 긴 메시지 및 기타 {premiumProductName} 혜택도 이용할 수 있습니다." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "자동을 선택하면 비트 전송률이 해상도 및 프레임 속도를 따라갑니다. 값이 높을수록 빠른 움직임이 더 선명하게 유지되고 더 많은 업로드 대역폭을 사용합니다." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/lt/messages.po b/fluxer_app/src/features/i18n/locales/lt/messages.po index 6b18ba1e6..c599a9779 100644 --- a/fluxer_app/src/features/i18n/locales/lt/messages.po +++ b/fluxer_app/src/features/i18n/locales/lt/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} pageidauja, kad atsakymai būtų siunčiami su @paminė msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {pasirinktinis fonas} few {pasirinktiniai fonai} many {pasirinktinio fono} other {pasirinktinių fonų}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Automatinio užbaigimo pasiūlymas: {label}, {selectedOptionPosition} iš {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Automatinio užbaigimo pasiūlymas: {label}, {selectedOptionPosition} i #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometriniai duomenys" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitų srautas" @@ -14552,16 +14561,16 @@ msgstr "Įjungta" msgid "Encoder path" msgstr "Kodavimo būdas" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kodavimo kelias, SVC režimas ir turinio užuomina" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Pageidaujamas naujų ekrano bendrinimų kodavimo būdas." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoderio, SVC ir bitų perdavimo spartos išankstiniai nustatymai" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40430,6 +40439,11 @@ msgstr "Naudodami {PREMIUM_PRODUCT_NAME}, galite naudoti animuotus avatarus ({AN msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Su {premiumProductName} vieno failo įkėlimo limitas padidėja iki {fileSizeLimit}. Taip pat gausite animuotus avatarus, ilgesnes žinutes ir daugybę kitų {premiumProductName} privilegijų." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Su „Automatinis“ bitų perdavimas atitinka jūsų skiriamąją gebą ir kadrų dažnį. Didesnės reikšmės išlaiko judesį ryškesnį ir naudoja daugiau įkėlimo pralaidumo." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/nl/messages.po b/fluxer_app/src/features/i18n/locales/nl/messages.po index 934497d47..916d6e781 100644 --- a/fluxer_app/src/features/i18n/locales/nl/messages.po +++ b/fluxer_app/src/features/i18n/locales/nl/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} wil graag een @vermelding ontvangen bij antwoorden. Toc msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {aangepaste achtergrond} other {aangepaste achtergronden}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Automatische aanvulling: {label}, {selectedOptionPosition} van {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Automatische aanvulling: {label}, {selectedOptionPosition} van {resultCo #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrie" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Ingeschakeld" msgid "Encoder path" msgstr "Encoderpad" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Encoderpad, SVC-modus en contenthint" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Encodervoorkeur voor nieuwe schermdeelsessies." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Encoder-, SVC- en bitrate-presets" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Met {PREMIUM_PRODUCT_NAME} kun je geanimeerde avatars ({ANIMATED_AVATAR_ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Met {premiumProductName} stijgt je uploadlimiet per bestand naar {fileSizeLimit}. Je krijgt ook geanimeerde avatars, langere berichten en vele andere {premiumProductName}-voordelen." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Met Automatisch volgt de bitrate je resolutie en framesnelheid. Hogere waarden houden snelle bewegingen scherper en gebruiken meer uploadbandbreedte." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/no/messages.po b/fluxer_app/src/features/i18n/locales/no/messages.po index 50b8d81bf..2c94b8610 100644 --- a/fluxer_app/src/features/i18n/locales/no/messages.po +++ b/fluxer_app/src/features/i18n/locales/no/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} foretrekker å bli @omtalt i svar. Vil du sende uten om msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {egendefinert bakgrunn} other {egendefinerte bakgrunner}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Autofullføringsforslag: {label}, {selectedOptionPosition} av {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Autofullføringsforslag: {label}, {selectedOptionPosition} av {resultCou #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometri" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bithastighet" @@ -14552,16 +14561,16 @@ msgstr "Aktivert" msgid "Encoder path" msgstr "Kodingsmetode" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kodingsbane, SVC-modus og innholdsindikator" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Foretrukket kodingsmetode for nye skjermdelinger." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Koder, SVC og bitratemaler" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Med {PREMIUM_PRODUCT_NAME} kan du bruke animerte avatarer ({ANIMATED_AVA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Med {premiumProductName} øker opplastingsgrensen per fil til {fileSizeLimit}. Du får også animerte avatarer, lengre meldinger og mange andre {premiumProductName}-fordeler." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Med Automatisk følger bithastigheten oppløsningen og bildefrekvensen din. Høyere verdier holder raske bevegelser skarpere og bruker mer opplastingsbåndbredde." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/pl/messages.po b/fluxer_app/src/features/i18n/locales/pl/messages.po index ebf40efb7..96700026c 100644 --- a/fluxer_app/src/features/i18n/locales/pl/messages.po +++ b/fluxer_app/src/features/i18n/locales/pl/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} woli odpowiedzi ze wzmianką. Wysłać mimo to bez wzmi msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {niestandardowe tło} few {niestandardowe tła} many {niestandardowych teł} other {niestandardowego tła}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Sugestia autouzupełniania: {label}, {selectedOptionPosition} z {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Sugestia autouzupełniania: {label}, {selectedOptionPosition} z {resultC #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometria" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Przepływność" @@ -14552,16 +14561,16 @@ msgstr "Włączone" msgid "Encoder path" msgstr "Ścieżka kodera" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Ścieżka kodera, tryb SVC i wskazówka dotycząca zawartości" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferowana metoda kodowania dla nowych udostępnień ekranu." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Koder, SVC i presety przepustowości" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Dzięki {PREMIUM_PRODUCT_NAME} możesz używać animowanych awatarów ({ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Dzięki {premiumProductName} Twój limit rozmiaru pojedynczego przesyłanego pliku zwiększa się do {fileSizeLimit}. Zyskujesz też animowane awatary, dłuższe wiadomości i wiele innych korzyści z {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Z opcją Automatycznie jakość przesyłu dostosowuje się do Twojej rozdzielczości i liczby klatek na sekundę. Wyższe wartości sprawiają, że szybki ruch jest ostrzejszy i zużywają więcej przepustowości wysyłania." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/pt-BR/messages.po b/fluxer_app/src/features/i18n/locales/pt-BR/messages.po index 75515b669..ca61bf38d 100644 --- a/fluxer_app/src/features/i18n/locales/pt-BR/messages.po +++ b/fluxer_app/src/features/i18n/locales/pt-BR/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} prefere ser @mencionado nas respostas. Enviar sem a men msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, =0 {planos de fundo personalizados} one {plano de fundo personalizado} many {planos de fundo personalizados} other {planos de fundo personalizados}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Sugestão de preenchimento automático: {label}, {selectedOptionPosition} de {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Sugestão de preenchimento automático: {label}, {selectedOptionPosition #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometria" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Taxa de bits" @@ -14552,16 +14561,16 @@ msgstr "Ativado" msgid "Encoder path" msgstr "Caminho do codificador" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Caminho do codificador, modo SVC e dica de conteúdo" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferência do codificador para novos compartilhamentos de tela." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Codificador, SVC e predefinições de taxa de bits" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Com o {PREMIUM_PRODUCT_NAME}, você pode usar avatares animados ({ANIMAT msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Com o {premiumProductName}, seu limite de upload por arquivo aumenta para {fileSizeLimit}, além de avatares animados, mensagens mais longas e muitos outros benefícios do {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Com Automático, a taxa de bits segue sua resolução e taxa de quadros. Valores mais altos mantêm o movimento rápido mais nítido e usam mais largura de banda de upload." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/ro/messages.po b/fluxer_app/src/features/i18n/locales/ro/messages.po index 9adf26836..d5dfbb94d 100644 --- a/fluxer_app/src/features/i18n/locales/ro/messages.po +++ b/fluxer_app/src/features/i18n/locales/ro/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} preferă să fie menționat(ă) în răspunsuri. Trimi msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {fundal personalizat} few {fundaluri personalizate} other {de fundaluri personalizate}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Sugestie de completare automată: {label}, {selectedOptionPosition} din {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Sugestie de completare automată: {label}, {selectedOptionPosition} din #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometrie" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bitrate" @@ -14552,16 +14561,16 @@ msgstr "Activat" msgid "Encoder path" msgstr "Cale de codificare" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Cale codor, mod SVC și sugestie de conținut" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Preferința codificatorului pentru noile partajări de ecran." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Codificator, SVC și presetări de bitrate" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Cu {PREMIUM_PRODUCT_NAME}, poți folosi avatare animate ({ANIMATED_AVATA msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Cu {premiumProductName}, limita ta de încărcare per fișier crește la {fileSizeLimit}, plus avatare animate, mesaje mai lungi și multe alte avantaje {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Cu Automat, rata de biți urmează rezoluția și rata de cadre. Valorile mai mari păstrează mișcarea rapidă mai clară și folosesc mai multă lățime de bandă de încărcare." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/ru/messages.po b/fluxer_app/src/features/i18n/locales/ru/messages.po index 6b94357c5..c8488483c 100644 --- a/fluxer_app/src/features/i18n/locales/ru/messages.po +++ b/fluxer_app/src/features/i18n/locales/ru/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} предпочитает получать упомин msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {пользовательский фон} few {пользовательских фона} many {пользовательских фонов} other {пользовательского фона}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Мбит/с" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Подсказка: {label}, {selectedOptionPosition} из {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Подсказка: {label}, {selectedOptionPosition} из {resultCount} #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Биометрия" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Битрейт" @@ -14552,16 +14561,16 @@ msgstr "Включено" msgid "Encoder path" msgstr "Тип кодировщика" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Путь кодировщика, режим SVC и подсказка контента" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Предпочтительный кодировщик для новых демонстраций экрана." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Кодировщик, SVC и предустановки битрейта" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Благодаря {PREMIUM_PRODUCT_NAME} вы можете исполь msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "С помощью {premiumProductName} лимит загрузки файлов увеличивается до {fileSizeLimit}, а также вы получаете доступ к анимированным аватарам, более длинным сообщениям и множеству других преимуществ {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "С параметром «Авто» битрейт соответствует вашему разрешению и частоте кадров. Более высокие значения делают быстрое движение чётче и используют больше пропускной способности для загрузки." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/sv-SE/messages.po b/fluxer_app/src/features/i18n/locales/sv-SE/messages.po index 1a7afcd47..77b1ec7c1 100644 --- a/fluxer_app/src/features/i18n/locales/sv-SE/messages.po +++ b/fluxer_app/src/features/i18n/locales/sv-SE/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} föredrar att bli @-omnämnd i svar. Skicka utan omnäm msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {anpassad bakgrund} other {anpassade bakgrunder}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbit/s" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Föreslagen komplettering: {label}, {selectedOptionPosition} av {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Föreslagen komplettering: {label}, {selectedOptionPosition} av {resultC #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biometri" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bithastighet" @@ -14552,16 +14561,16 @@ msgstr "Aktiverad" msgid "Encoder path" msgstr "Kodningsmetod" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kodningssökväg, SVC-läge och innehållstips" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Önskad kodare för nya skärmdelningar." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kodare, SVC och bithastighetsförinställningar" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Med {PREMIUM_PRODUCT_NAME} kan du använda animerade avatarer ({ANIMATED msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Med {premiumProductName} ökar uppladdningsgränsen per fil till {fileSizeLimit}. Du får också animerade avatarer, längre meddelanden och många andra {premiumProductName}-förmåner." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Med Automatisk följer bithastigheten din upplösning och bildfrekvens. Högre värden håller snabba rörelser skarpare och använder mer uppladdningsbandbredd." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/th/messages.po b/fluxer_app/src/features/i18n/locales/th/messages.po index 0a217ee98..ef6a6cba8 100644 --- a/fluxer_app/src/features/i18n/locales/th/messages.po +++ b/fluxer_app/src/features/i18n/locales/th/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} ต้องการให้กล่าวถึง msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, other {ภาพพื้นหลังที่กำหนดเอง}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} เมกะบิตต่อวินาที" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "คำแนะนำการเติมข้อความอัตโนมัติ: {label}, {selectedOptionPosition} จาก {resultCount} รายการ" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "คำแนะนำการเติมข้อความอัต #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "ไบโอเมตริกซ์" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "บิตเรต" @@ -14552,16 +14561,16 @@ msgstr "เปิดใช้งาน" msgid "Encoder path" msgstr "เส้นทางตัวเข้ารหัส" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "เส้นทางการเข้ารหัส, โหมด SVC และคำแนะนำเนื้อหา" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "การตั้งค่าตัวเข้ารหัสสำหรับแชร์หน้าจอใหม่" -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "การตั้งค่าล่วงหน้าสำหรับตัวเข้ารหัส, SVC และบิตเรต" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "เมื่อคุณมี {PREMIUM_PRODUCT_NAME} คุณสาม msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "เมื่อสมัครใช้ {premiumProductName} ขีดจำกัดการอัปโหลดต่อไฟล์ของคุณจะเพิ่มเป็น {fileSizeLimit} และคุณยังได้รูปโปรไฟล์แบบเคลื่อนไหว ข้อความที่ยาวขึ้น และสิทธิประโยชน์ {premiumProductName} อื่นๆ อีกมากมาย" +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "ด้วยการตั้งค่าอัตโนมัติ บิตเรตจะปรับตามความละเอียดและอัตราเฟรมของคุณ ค่าที่สูงขึ้นจะทำให้ภาพเคลื่อนไหวเร็วคมชัดขึ้นและใช้แบนด์วิดท์อัปโหลดมากขึ้น" + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/tr/messages.po b/fluxer_app/src/features/i18n/locales/tr/messages.po index 7da56ee7a..e51bcb3dd 100644 --- a/fluxer_app/src/features/i18n/locales/tr/messages.po +++ b/fluxer_app/src/features/i18n/locales/tr/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname}, yanıtlarda @bahsedilmeyi tercih ediyor. Yine de bahse msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {özel arka plan} other {özel arka plan}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Otomatik tamamlama önerisi: {label}, {resultCount} sonuçtan {selectedOptionPosition}." #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Otomatik tamamlama önerisi: {label}, {resultCount} sonuçtan {selectedO #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Biyometrik veriler" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Bit hızı" @@ -14552,16 +14561,16 @@ msgstr "Etkin" msgid "Encoder path" msgstr "Kodlayıcı yolu" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Kodlayıcı yolu, SVC modu ve içerik ipucu" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Yeni ekran paylaşımları için kodlayıcı tercihi." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Kodlayıcı, SVC ve bit hızı ön ayarları" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "{PREMIUM_PRODUCT_NAME} ile hareketli avatarlar ({ANIMATED_AVATAR_FORMATS msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "{premiumProductName} ile dosya başına yükleme sınırınız {fileSizeLimit} boyutuna yükselir. Ayrıca hareketli avatarlar, daha uzun mesajlar ve diğer birçok {premiumProductName} avantajı elde edersiniz." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Otomatik ile bit hızınız çözünürlüğünüze ve kare hızınıza göre ayarlanır. Daha yüksek değerler hızlı hareketleri daha keskin tutar ve daha fazla yükleme bant genişliği kullanır." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/uk/messages.po b/fluxer_app/src/features/i18n/locales/uk/messages.po index c13ae32df..47a8b485f 100644 --- a/fluxer_app/src/features/i18n/locales/uk/messages.po +++ b/fluxer_app/src/features/i18n/locales/uk/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} надає перевагу відповідям із @ msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {власний фон} few {власні фони} many {власних фонів} other {власного фону}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Мбіт/с" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Пропозиція автозаповнення: {label}, {selectedOptionPosition} з {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Пропозиція автозаповнення: {label}, {selectedOpt #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Біометрія" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Бітрейт" @@ -14552,16 +14561,16 @@ msgstr "Увімкнено" msgid "Encoder path" msgstr "Спосіб кодування" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Шлях кодувальника, режим SVC та підказка вмісту" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Вибір кодувальника для нових демонстрацій екрана." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Кодувальник, SVC та попередні налаштування бітрейту" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Завдяки {PREMIUM_PRODUCT_NAME} ви можете використ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Завдяки {premiumProductName} ліміт на завантаження одного файлу зростає до {fileSizeLimit}. Ви також отримуєте анімовані аватари, довші повідомлення та багато інших переваг {premiumProductName}." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "З автоматичним бітрейтом він відповідає вашій роздільній здатності та частоті кадрів. Вищі значення роблять швидкий рух чіткішим і використовують більше пропускної здатності завантаження." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/vi/messages.po b/fluxer_app/src/features/i18n/locales/vi/messages.po index f8ddb3394..7ef7d4d5d 100644 --- a/fluxer_app/src/features/i18n/locales/vi/messages.po +++ b/fluxer_app/src/features/i18n/locales/vi/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} thích được nhắc đến trong các tin nhắn tr msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, other {ảnh nền tùy chỉnh}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "Gợi ý tự động hoàn tất: {label}, {selectedOptionPosition} trên {resultCount}" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "Gợi ý tự động hoàn tất: {label}, {selectedOptionPosition} tr #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "Sinh trắc học" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "Tốc độ bit" @@ -14552,16 +14561,16 @@ msgstr "Đã bật" msgid "Encoder path" msgstr "Đường dẫn bộ mã hóa" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "Đường dẫn bộ mã hóa, chế độ SVC và gợi ý nội dung" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "Ưu tiên bộ mã hóa cho các lần chia sẻ màn hình mới." -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "Bộ mã hóa, SVC và cài đặt trước tốc độ bit" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "Với {PREMIUM_PRODUCT_NAME}, bạn có thể sử dụng ảnh đại d msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "Với {premiumProductName}, giới hạn tải lên mỗi tệp của bạn sẽ tăng lên {fileSizeLimit}. Bạn cũng nhận được ảnh đại diện động, tin nhắn dài hơn và nhiều đặc quyền {premiumProductName} khác." +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "Với Tự động, tốc độ bit sẽ theo độ phân giải và tốc độ khung hình của bạn. Giá trị cao hơn giữ cho chuyển động nhanh rõ nét hơn và sử dụng nhiều băng thông tải lên hơn." + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/zh-CN/messages.po b/fluxer_app/src/features/i18n/locales/zh-CN/messages.po index 31242230c..0f8e0294d 100644 --- a/fluxer_app/src/features/i18n/locales/zh-CN/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-CN/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} 希望在回复中被 @ 提及。仍要发送不带提 msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount, plural, other {自定义背景}} {backgroundCount} / {maxBackgroundImages}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} 兆比特每秒" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "自动补全建议:{label},第 {selectedOptionPosition} 项,共 {resultCount} 项" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "自动补全建议:{label},第 {selectedOptionPosition} 项,共 {r #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "生物识别" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "比特率" @@ -14552,16 +14561,16 @@ msgstr "已启用" msgid "Encoder path" msgstr "编码器路径" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "编码器路径、SVC 模式和内容提示" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "新屏幕共享的首选编码器。" -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "编码器、SVC 和比特率预设" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "有了 {PREMIUM_PRODUCT_NAME},你可以使用动态头像({ANIMATED_ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "有了 {premiumProductName},你的单次文件上传限制将提高到 {fileSizeLimit},此外还有动态头像、更长的消息以及许多其他 {premiumProductName} 福利。" +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "使用“自动”时,比特率会根据您的分辨率和帧率进行调整。更高的值可以使快速移动的画面更清晰,但会占用更多上传带宽。" + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/i18n/locales/zh-TW/messages.po b/fluxer_app/src/features/i18n/locales/zh-TW/messages.po index c1767d99c..cf1b796f3 100644 --- a/fluxer_app/src/features/i18n/locales/zh-TW/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-TW/messages.po @@ -1005,6 +1005,11 @@ msgstr "{authorNickname} 偏好在回覆時被 @提及。仍要不提及就傳 msgid "{backgroundCount} / {maxBackgroundImages} {backgroundCount, plural, one {custom background} other {custom backgrounds}}" msgstr "{backgroundCount} / {maxBackgroundImages} 個{backgroundCount, plural, one {自訂背景} other {自訂背景}}" +#. Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "{bitrate} Mbps" +msgstr "{bitrate} Mbps" + #. Accessible label for a category row in the Discovery search sidebar. {categoryLabel} is the category name and {count} is how many communities match the current search in it. Both are inserted by code. #: src/features/discovery/discovery/DiscoverySearchFilters.tsx msgid "{categoryLabel}, {count, plural, one {# community} other {# communities}}" @@ -5411,6 +5416,7 @@ msgid "Autocomplete suggestion: {label}, {selectedOptionPosition} of {resultCoun msgstr "自動完成建議:{label},第 {selectedOptionPosition} 項,共 {resultCount} 項" #. Channel overview settings tab label, control, or validation message (name, topic, slowmode, voice region, mature content gate). +#. Default option of the screen share bitrate select in the video tab. #. Option label for a WebRTC content hint select. #. Option label for an SVC mode select. #. Option label for an encoder path select. @@ -5420,6 +5426,7 @@ msgstr "自動完成建議:{label},第 {selectedOptionPosition} 項,共 {r #: src/features/app/components/setup/SetupWizardSteps.tsx #: src/features/channel/components/modals/channel_tabs/channel_overview_tab/RtcRegionSelect.tsx #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControls.tsx +#: src/features/user/components/modals/tabs/UserVideoTab.tsx #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts #: src/features/voice/components/VoiceSettingsMenus.tsx msgid "Automatic" @@ -5983,7 +5990,9 @@ msgid "Biometrics" msgstr "生物辨識" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +#. Short label in the video tab for the screen share video bitrate select. Keep it concise. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +#: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts msgid "Bitrate" msgstr "位元率" @@ -14552,16 +14561,16 @@ msgstr "已啟用" msgid "Encoder path" msgstr "編碼方式" +#. Settings search entry description. One-line summary of what the settings search entry controls. +#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +msgid "Encoder path, SVC mode, and content hint" +msgstr "編碼器路徑、SVC 模式和內容提示" + #. Description for the encoder path select. #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedVideoControlsState.ts msgid "Encoder preference for new screen shares." msgstr "新螢幕分享的編碼器偏好設定。" -#. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts -msgid "Encoder, SVC, and bitrate presets" -msgstr "編碼器、SVC 和位元率預設" - #. Label for the choice of how the SMTP connection is encrypted. #: src/features/app/components/setup/SetupWizardSteps.tsx msgid "Encryption" @@ -40429,6 +40438,11 @@ msgstr "有了 {PREMIUM_PRODUCT_NAME},您可以使用動態頭像({ANIMATED_ msgid "With {premiumProductName}, your per-file upload limit increases to {fileSizeLimit}. You also get animated avatars, longer messages, and many other {premiumProductName} perks." msgstr "有了 {premiumProductName},您的單檔上傳上限會提高到 {fileSizeLimit},還能使用動態頭像、更長的訊息,以及許多其他 {premiumProductName} 福利。" +#. Description under the screen share bitrate select in the video tab. Automatic is the label of the default option. +#: src/features/user/components/modals/tabs/UserVideoTab.tsx +msgid "With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth." +msgstr "使用「自動」,位元率會隨著您的解析度和畫面播放速率調整。較高的數值可讓動態畫面更清晰,並使用更多上傳頻寬。" + #. Label in the messages tab. #: src/features/user/components/modals/tabs/appearance_tab/MessagesTab.tsx msgid "With different display modes available" diff --git a/fluxer_app/src/features/user/components/modals/tabs/UserVideoTab.tsx b/fluxer_app/src/features/user/components/modals/tabs/UserVideoTab.tsx index 1a6968f37..7368b05e3 100644 --- a/fluxer_app/src/features/user/components/modals/tabs/UserVideoTab.tsx +++ b/fluxer_app/src/features/user/components/modals/tabs/UserVideoTab.tsx @@ -102,6 +102,25 @@ const MIRROR_CAMERA_DESCRIPTOR = msg({ message: 'Mirror camera', comment: 'Switch label in the video tab for flipping the local camera preview horizontally.', }); +const SCREEN_SHARE_BITRATE_DESCRIPTOR = msg({ + message: 'Bitrate', + comment: 'Short label in the video tab for the screen share video bitrate select. Keep it concise.', +}); +const SCREEN_SHARE_BITRATE_DESCRIPTION_DESCRIPTOR = msg({ + message: + 'With Automatic, the bitrate follows your resolution and frame rate. Higher values keep fast motion sharper and use more upload bandwidth.', + comment: + 'Description under the screen share bitrate select in the video tab. Automatic is the label of the default option.', +}); +const SCREEN_SHARE_BITRATE_AUTOMATIC_DESCRIPTOR = msg({ + message: 'Automatic', + comment: 'Default option of the screen share bitrate select in the video tab.', +}); +const SCREEN_SHARE_BITRATE_MBPS_DESCRIPTOR = msg({ + message: '{bitrate} Mbps', + comment: + 'Option label of the screen share bitrate select in the video tab. bitrate is a formatted number of megabits per second. Mbps is a technical unit token.', +}); const SCREEN_SHARE_QUALITY_DESCRIPTOR = msg({ message: 'Screen share quality', comment: 'Short label in the video tab. Keep it concise.', @@ -176,6 +195,7 @@ export const VideoTab: React.FC = observer( const screenShareState = resolveUserVideoTabScreenShareState({ quality: screenShareQuality, hintSetting: screenShareContentHint, + bitrate: voiceSettings.getScreenShareBitrateBudget(), selfHosted: !showPremium, }); const screenshareResolutionOptions: ReadonlyArray> = @@ -189,6 +209,15 @@ export const VideoTab: React.FC = observer( value, label: i18n._(FPS_DESCRIPTOR, {frameRate: value}), })); + const bitrateOptions: ReadonlyArray> = [ + {value: null, label: i18n._(SCREEN_SHARE_BITRATE_AUTOMATIC_DESCRIPTOR)}, + ...screenShareState.bitrateOptions.map((value) => ({ + value, + label: i18n._(SCREEN_SHARE_BITRATE_MBPS_DESCRIPTOR, { + bitrate: i18n.number(value / 1_000_000, {maximumFractionDigits: 1}), + }), + })), + ]; const handleCameraPreview = async () => { const granted = await requestPermission(); if (granted) { @@ -387,6 +416,19 @@ export const VideoTab: React.FC = observer( })} )} + {hasHigherQuality && ( + + label={i18n._(SCREEN_SHARE_BITRATE_DESCRIPTOR)} + description={i18n._(SCREEN_SHARE_BITRATE_DESCRIPTION_DESCRIPTOR)} + options={bitrateOptions} + value={screenShareState.bitrate} + onChange={(value) => VoiceSettingsCommands.update({screenShareBitrate: value})} + isSearchable={false} + controlWidth="small" + dataFlx="user.video-tab.select.screen-share-bitrate-change" + data-flx="user.user-video-tab.video-tab.compact-combobox-row.screen-share-bitrate-change" + /> + )}
diff --git a/fluxer_app/src/features/user/components/modals/tabs/UserVideoTabState.ts b/fluxer_app/src/features/user/components/modals/tabs/UserVideoTabState.ts index efbb4e0da..3e25e1c76 100644 --- a/fluxer_app/src/features/user/components/modals/tabs/UserVideoTabState.ts +++ b/fluxer_app/src/features/user/components/modals/tabs/UserVideoTabState.ts @@ -12,6 +12,7 @@ import type {ScreenShareContentHint} from '@app/features/voice/utils/CodecCapabi import { resolveScreenShareFrameRate, resolveScreenShareTarget, + type ScreenShareBitrateBudget, type ScreenShareContext, type ScreenShareQualityInput, SUPPORTED_SCREEN_SHARE_FRAME_RATES, @@ -35,10 +36,15 @@ const FREE_SCREEN_SHARE_RESOLUTIONS: ReadonlyArray const PREMIUM_SCREEN_SHARE_RESOLUTIONS: ReadonlyArray = ['high', 'ultra', 'source']; const FREE_SCREEN_SHARE_FRAME_RATES: ReadonlyArray = [15, 30]; const PREMIUM_SCREEN_SHARE_FRAME_RATES: ReadonlyArray = [15, 30, 60]; +const SCREEN_SHARE_BITRATE_STEPS_BPS: ReadonlyArray = [ + 2_000_000, 4_000_000, 6_000_000, 8_000_000, 10_000_000, 15_000_000, 20_000_000, 25_000_000, 30_000_000, 40_000_000, + 50_000_000, +]; export interface UserVideoTabScreenShareInput { quality: ScreenShareQualityInput; hintSetting: ScreenShareContentHint; + bitrate: ScreenShareBitrateBudget; selfHosted: boolean; } @@ -52,6 +58,8 @@ export interface UserVideoTabScreenShareState { frameRate: SupportedScreenShareFrameRate; resolutionOptions: ReadonlyArray; frameRateOptions: ReadonlyArray; + bitrate: number | null; + bitrateOptions: ReadonlyArray; preset: Exclude | null; presetOverriddenByContext: boolean; saved: {resolution: OfferedScreenShareResolution; frameRate: SupportedScreenShareFrameRate} | null; @@ -82,8 +90,20 @@ function buildFrameRateOptions( return SUPPORTED_SCREEN_SHARE_FRAME_RATES.filter((value) => value === effective || offered.includes(value)); } +function buildBitrateOptions(budget: ScreenShareBitrateBudget): ReadonlyArray { + const offered = new Set(SCREEN_SHARE_BITRATE_STEPS_BPS.filter((value) => value < budget.ceilingBps)); + offered.add(budget.ceilingBps); + if (budget.chosenBps !== null) offered.add(budget.chosenBps); + return [...offered].sort((a, b) => a - b); +} + export function resolveUserVideoTabScreenShareState(input: UserVideoTabScreenShareInput): UserVideoTabScreenShareState { - const target = resolveScreenShareTarget({...input.quality, sourceDimensions: null, hintSetting: input.hintSetting}); + const target = resolveScreenShareTarget({ + ...input.quality, + sourceDimensions: null, + hintSetting: input.hintSetting, + bitrate: input.bitrate, + }); const resolution = offeredScreenShareResolution(target.resolution); return { resolution, @@ -95,6 +115,8 @@ export function resolveUserVideoTabScreenShareState(input: UserVideoTabScreenSha resolution, ), frameRateOptions: buildFrameRateOptions(input.quality.entitled, target.frameRate), + bitrate: input.bitrate.chosenBps, + bitrateOptions: buildBitrateOptions(input.bitrate), preset: input.quality.mode === 'custom' ? null : input.quality.mode, presetOverriddenByContext: selectStreamSettingsPresetOverriddenByContext(input.quality.mode, input.quality.context), saved: target.tierLimited diff --git a/fluxer_app/src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts b/fluxer_app/src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts index f818d78a2..180a28137 100644 --- a/fluxer_app/src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts +++ b/fluxer_app/src/features/user/components/settings_utils/search_index/VoiceVideoIndex.ts @@ -149,12 +149,8 @@ const SVC_DESCRIPTOR = msg({ message: 'SVC', comment: 'Settings search synonym. Used to match this term when the user types it in the settings search bar.', }); -const BITRATE_DESCRIPTOR = msg({ - message: 'Bitrate', - comment: 'Settings search synonym. Used to match this term when the user types it in the settings search bar.', -}); const TUNE_LOW_LEVEL_SCREEN_SHARE_ENCODER_BEHAVIOR_FOR_THE_NEXT_STREAM_DESCRIPTOR = msg({ - message: 'Encoder, SVC, and bitrate presets', + message: 'Encoder path, SVC mode, and content hint', comment: 'Settings search entry description. One-line summary of what the settings search entry controls.', }); @@ -244,7 +240,6 @@ export const voiceVideoIndex: Array = [ SOFTWARE_ENCODER_DESCRIPTOR, HARDWARE_ENCODER_DESCRIPTOR, SVC_DESCRIPTOR, - BITRATE_DESCRIPTOR, PRODUCT_NAME, ], description: TUNE_LOW_LEVEL_SCREEN_SHARE_ENCODER_BEHAVIOR_FOR_THE_NEXT_STREAM_DESCRIPTOR, diff --git a/fluxer_app/src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts b/fluxer_app/src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts index c095931f9..38d8fc501 100644 --- a/fluxer_app/src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts +++ b/fluxer_app/src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts @@ -231,6 +231,10 @@ const FRAME_RATE_DESCRIPTOR = msg({ message: 'Frame rate', comment: 'Settings search synonym. Used to match this term when the user types it in the settings search bar.', }); +const BITRATE_DESCRIPTOR = msg({ + message: 'Bitrate', + comment: 'Settings search synonym. Used to match this term when the user types it in the settings search bar.', +}); const FPS_DESCRIPTOR = msg({ message: 'FPS', comment: 'Settings search synonym. Used to match this term when the user types it in the settings search bar.', @@ -342,6 +346,7 @@ export const voiceVideoSections = [ STREAMING_DESCRIPTOR, FRAME_RATE_DESCRIPTOR, FPS_DESCRIPTOR, + BITRATE_DESCRIPTOR, HD_DESCRIPTOR, MESSAGE_1080P_DESCRIPTOR, MESSAGE_1440P_DESCRIPTOR, diff --git a/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts b/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts index 18be2ba1c..dbebb2ab9 100644 --- a/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts +++ b/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts @@ -60,6 +60,7 @@ type VoiceSettingsPatch = Partial<{ screenShareContentHint: ScreenShareContentHint; screenShareEncoderMode: ScreenShareEncoderMode; screenShareScalabilityMode: ScreenShareScalabilityModePreference; + screenShareBitrate: number | null; vadThreshold: number; vadAutoSensitivity: boolean; vadEnhanced: boolean; diff --git a/fluxer_app/src/features/voice/components/StreamSettingsMenuContent.tsx b/fluxer_app/src/features/voice/components/StreamSettingsMenuContent.tsx index 4dbccbd38..15a6db0ff 100644 --- a/fluxer_app/src/features/voice/components/StreamSettingsMenuContent.tsx +++ b/fluxer_app/src/features/voice/components/StreamSettingsMenuContent.tsx @@ -356,6 +356,7 @@ export const StreamSettingsMenuContent = observer( ...quality, sourceDimensions: null, hintSetting: VoiceSettings.getScreenShareContentHint(), + bitrate: VoiceSettings.getScreenShareBitrateBudget(), }); const presetOverriddenByContext = selectStreamSettingsPresetOverriddenByContext(currentMode, shareContext); const captureAudioEnabled = isAppShare diff --git a/fluxer_app/src/features/voice/components/modals/ScreenSharePickerModal.tsx b/fluxer_app/src/features/voice/components/modals/ScreenSharePickerModal.tsx index 3d2d33913..8eea1fe85 100644 --- a/fluxer_app/src/features/voice/components/modals/ScreenSharePickerModal.tsx +++ b/fluxer_app/src/features/voice/components/modals/ScreenSharePickerModal.tsx @@ -1343,6 +1343,7 @@ const ScreenSharePickerModalLoadedContent = observer( context: shareContext, sourceDimensions: null, hintSetting: VoiceSettings.getScreenShareContentHint(), + bitrate: VoiceSettings.getScreenShareBitrateBudget(), }); const streamSummaryTitle = streamSummary.mode === 'gaming' diff --git a/fluxer_app/src/features/voice/components/useStatsForNerds.ts b/fluxer_app/src/features/voice/components/useStatsForNerds.ts index e08ed8e15..7573bd68d 100644 --- a/fluxer_app/src/features/voice/components/useStatsForNerds.ts +++ b/fluxer_app/src/features/voice/components/useStatsForNerds.ts @@ -172,8 +172,11 @@ export function useStatsForNerds({enabled = true}: UseStatsForNerdsOptions = {}) scalabilityMode: VoiceSettings.getScreenShareScalabilityMode(), maxBitrateMbps: (getPublishedScreenShareMaxBitrateBps(localParticipant) ?? - getScreenShareBitrateBps(effectiveScreenShareSettings.resolution, effectiveScreenShareSettings.frameRate)) / - 1000000, + getScreenShareBitrateBps( + effectiveScreenShareSettings.resolution, + effectiveScreenShareSettings.frameRate, + VoiceSettings.getScreenShareBitrateBudget(), + )) / 1000000, audioSourceMode: VoiceSettings.getScreenShareAudioSourceMode(), audioIncludeSources: VoiceSettings.getScreenShareAudioIncludeSources(), audioExcludeSources: VoiceSettings.getScreenShareAudioExcludeSources(), diff --git a/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppConnectionHostAdapter.ts b/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppConnectionHostAdapter.ts index fcefd44db..ef0ec7490 100644 --- a/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppConnectionHostAdapter.ts +++ b/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppConnectionHostAdapter.ts @@ -45,12 +45,12 @@ import { getRoomVideoPublishDefaults, } from '@app/features/voice/utils/CodecCapabilityDetector'; import {getH264HardwareProfilesSync} from '@app/features/voice/utils/GpuEncoderCapabilities'; -import {SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS} from '@app/features/voice/utils/ScreenShareOptions'; import { clearScreenShareDecodeFailures, getVideoDecoderExclusionsSync, loadVideoDecoderExclusions, } from '@app/features/voice/utils/VideoDecoderCapabilities'; +import {getScreenShareBitrateCeilingBps} from '@app/features/voice/utils/VideoQualityEntitlement'; import type { ExternalE2EEKeyProvider, LocalTrack, @@ -149,7 +149,7 @@ function createWebAudioMixOption(): RoomOptions['webAudioMix'] { function createRoomPublishDefaults(): RoomOptions['publishDefaults'] { return { screenShareEncoding: { - maxBitrate: SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS, + maxBitrate: getScreenShareBitrateCeilingBps(), maxFramerate: 30, priority: 'high', }, diff --git a/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppScreenShareWiring.test.ts b/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppScreenShareWiring.test.ts index 3d9846843..62625826c 100644 --- a/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppScreenShareWiring.test.ts +++ b/fluxer_app/src/features/voice/engine/v2/VoiceEngineV2AppScreenShareWiring.test.ts @@ -244,7 +244,10 @@ vi.mock('@app/features/user/components/modals/tabs/components/CompactComboboxRow }; }); -vi.mock('@app/features/voice/utils/VideoQualityEntitlement', () => ({hasHigherVideoQuality: () => menuEntitled})); +vi.mock('@app/features/voice/utils/VideoQualityEntitlement', () => ({ + hasHigherVideoQuality: () => menuEntitled, + getScreenShareBitrateCeilingBps: () => 9_000_000, +})); vi.mock('@app/features/voice/engine/ScreenShareCodecNegotiation', () => ({ default: { @@ -726,7 +729,12 @@ describe('the video settings tab', () => { {value: 'source', isDisabled: true}, ]; const stateOf = (quality: Parameters[0], selfHosted = false) => - resolveUserVideoTabScreenShareState({quality, hintSetting: 'auto', selfHosted}); + resolveUserVideoTabScreenShareState({ + quality, + hintSetting: 'auto', + bitrate: {ceilingBps: 9_000_000, chosenBps: null}, + selfHosted, + }); it('shows a free account the clamped values, the saved ones and no preset note', () => { const quality = { @@ -741,6 +749,8 @@ describe('the video settings tab', () => { frameRate: 30, resolutionOptions: FREE_RESOLUTION_OPTIONS, frameRateOptions: [15, 30], + bitrate: null, + bitrateOptions: [2_000_000, 4_000_000, 6_000_000, 8_000_000, 9_000_000], preset: null, presetOverriddenByContext: false, saved: {resolution: 'source', frameRate: 30}, diff --git a/fluxer_app/src/features/voice/engine/voice_screen_share_manager/shared.ts b/fluxer_app/src/features/voice/engine/voice_screen_share_manager/shared.ts index 42908244d..b1dfd911b 100644 --- a/fluxer_app/src/features/voice/engine/voice_screen_share_manager/shared.ts +++ b/fluxer_app/src/features/voice/engine/voice_screen_share_manager/shared.ts @@ -23,7 +23,6 @@ import { resolveScreenShareLayering, resolveScreenShareSenderCodec, resolveScreenShareTarget, - SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS, type ScreenShareContext, type ScreenShareLayering, type ScreenShareLimitClass, @@ -195,13 +194,11 @@ export async function releaseScreenShareCaptureCleanup(snapshot: ScreenShareCapt } } -function clampScreenShareEncoding(encoding: VideoEncoding): VideoEncoding { +function clampScreenShareEncoding(encoding: VideoEncoding, ceilingBps: number): VideoEncoding { return { ...encoding, maxBitrate: - typeof encoding.maxBitrate === 'number' - ? Math.min(encoding.maxBitrate, SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS) - : encoding.maxBitrate, + typeof encoding.maxBitrate === 'number' ? Math.min(encoding.maxBitrate, ceilingBps) : encoding.maxBitrate, priority: encoding.priority ?? 'high', }; } @@ -222,6 +219,7 @@ export function resolveConfiguredScreenShareTarget( context, sourceDimensions, hintSetting: VoiceSettings.getScreenShareContentHint(), + bitrate: VoiceSettings.getScreenShareBitrateBudget(), codec: getPreferredScreenShareCodec(), softwareEncoderClamp: ActiveScreenShareSource.isSoftwareEncoderClamped(), }); @@ -261,7 +259,7 @@ function getStatsKind( function resolveScreenShareEncoding(target: ScreenShareTarget, publishOptions?: TrackPublishOptions): VideoEncoding { if (publishOptions?.screenShareEncoding) { - return clampScreenShareEncoding(publishOptions.screenShareEncoding); + return clampScreenShareEncoding(publishOptions.screenShareEncoding, target.bitrate.ceilingBps); } return {maxBitrate: target.maxBitrate, maxFramerate: target.frameRate, priority: 'high'}; } diff --git a/fluxer_app/src/features/voice/state/VoiceSettings.ts b/fluxer_app/src/features/voice/state/VoiceSettings.ts index eac5cab5d..22229cbb3 100644 --- a/fluxer_app/src/features/voice/state/VoiceSettings.ts +++ b/fluxer_app/src/features/voice/state/VoiceSettings.ts @@ -14,7 +14,11 @@ import { isVoiceNoiseSuppressionBackend, type VoiceNoiseSuppressionBackend, } from '@app/features/voice/utils/noise_suppression/NoiseSuppressionBackends'; -import {hasHigherVideoQuality} from '@app/features/voice/utils/VideoQualityEntitlement'; +import type {ScreenShareBitrateBudget} from '@app/features/voice/utils/ScreenShareOptions'; +import { + getScreenShareBitrateCeilingBps, + hasHigherVideoQuality, +} from '@app/features/voice/utils/VideoQualityEntitlement'; import {areVoiceBackgroundsAvailable} from '@app/features/voice/utils/VoiceBackgroundAvailability'; import { DEFAULT_VOICE_PROCESSING_MODE, @@ -104,6 +108,7 @@ type VoiceSettingsUpdate = Partial<{ screenShareContentHint: ScreenShareContentHint; screenShareEncoderMode: ScreenShareEncoderMode; screenShareScalabilityMode: ScreenShareScalabilityModePreference; + screenShareBitrate: number | null; vadThreshold: number; vadAutoSensitivity: boolean; vadEnhanced: boolean; @@ -478,6 +483,7 @@ class VoiceSettings { screenShareSoftwareQualityRetiredV1 = false; screenShareEncoderModePrefV2: ScreenShareEncoderMode = DEFAULT_SCREEN_SHARE_ENCODER_MODE; screenShareScalabilityModePrefV2: ScreenShareScalabilityModePreference = DEFAULT_SCREEN_SHARE_SCALABILITY_MODE; + screenShareBitrate: number | null = null; vadThreshold = 50; vadAutoSensitivity = true; vadEnhanced = true; @@ -533,6 +539,8 @@ class VoiceSettings { getScreenShareEncoderMode: false, getScreenShareScalabilityMode: false, getScreenShareScalabilityModeOverride: false, + getScreenShareBitrate: false, + getScreenShareBitrateBudget: false, getVadThreshold: false, getVadAutoSensitivity: false, getVadEnhanced: false, @@ -651,6 +659,7 @@ class VoiceSettings { 'screenShareSoftwareQualityRetiredV1', 'screenShareEncoderModePrefV2', 'screenShareScalabilityModePrefV2', + 'screenShareBitrate', 'vadThreshold', 'vadAutoSensitivity', 'vadEnhanced', @@ -896,6 +905,19 @@ class VoiceSettings { return mode === 'auto' ? undefined : mode; } + getScreenShareBitrate(): number | null { + return validateScreenShareBitrate(this.screenShareBitrate); + } + + getScreenShareBitrateBudget(): ScreenShareBitrateBudget { + const ceilingBps = getScreenShareBitrateCeilingBps(); + const chosen = this.getScreenShareBitrate(); + return { + ceilingBps, + chosenBps: chosen !== null && hasHigherVideoQuality() ? Math.min(chosen, ceilingBps) : null, + }; + } + getVadThreshold(): number { return this.vadThreshold; } @@ -1031,6 +1053,7 @@ class VoiceSettings { if (validated.screenShareEncoderMode !== undefined) this.screenShareEncoderMode = validated.screenShareEncoderMode; if (validated.screenShareScalabilityMode !== undefined) this.screenShareScalabilityMode = validated.screenShareScalabilityMode; + if (validated.screenShareBitrate !== undefined) this.screenShareBitrate = validated.screenShareBitrate; if (validated.vadThreshold !== undefined) this.vadThreshold = validated.vadThreshold; if (validated.vadAutoSensitivity !== undefined) this.vadAutoSensitivity = validated.vadAutoSensitivity; if (validated.vadEnhanced !== undefined) this.vadEnhanced = validated.vadEnhanced; @@ -1160,6 +1183,10 @@ class VoiceSettings { ), screenShareEncoderMode, screenShareScalabilityMode, + screenShareBitrate: + data.screenShareBitrate === undefined + ? this.screenShareBitrate + : validateScreenShareBitrate(data.screenShareBitrate), vadThreshold: Math.max(0, Math.min(100, data.vadThreshold ?? this.vadThreshold)), vadAutoSensitivity: data.vadAutoSensitivity ?? this.vadAutoSensitivity, vadEnhanced: data.vadEnhanced ?? this.vadEnhanced, @@ -1225,6 +1252,10 @@ function validateScreenShareScalabilityMode(mode: unknown): ScreenShareScalabili : DEFAULT_SCREEN_SHARE_SCALABILITY_MODE; } +function validateScreenShareBitrate(value: unknown): number | null { + return typeof value === 'number' && Number.isFinite(value) && value > 0 ? Math.round(value) : null; +} + function validateScreenShareContentHint(hint: unknown): ScreenShareContentHint { return hint === 'detail' || hint === 'motion' || hint === 'text' || hint === 'auto' ? hint diff --git a/fluxer_app/src/features/voice/utils/ScreenShareOptions.test.ts b/fluxer_app/src/features/voice/utils/ScreenShareOptions.test.ts index d78d79525..19b350441 100644 --- a/fluxer_app/src/features/voice/utils/ScreenShareOptions.test.ts +++ b/fluxer_app/src/features/voice/utils/ScreenShareOptions.test.ts @@ -38,6 +38,7 @@ function targetOf(overrides: {mode?: 'gaming' | 'screenshare' | 'custom'; softwa context: 'display', sourceDimensions: null, hintSetting: 'auto', + bitrate: {ceilingBps: 9_000_000, chosenBps: null}, ...(overrides.softwareEncoderClamp === undefined ? {} : {softwareEncoderClamp: overrides.softwareEncoderClamp}), }); } @@ -62,6 +63,7 @@ describe('display capture constraints', () => { const {captureOptions} = buildScreenShareOptions({ resolution: 'high', frameRate: 60, + maxBitrate: 6_000_000, context: 'display', includeAudio: true, contentHint: 'text', diff --git a/fluxer_app/src/features/voice/utils/ScreenShareOptions.ts b/fluxer_app/src/features/voice/utils/ScreenShareOptions.ts index 8a6da65ed..c220254fd 100644 --- a/fluxer_app/src/features/voice/utils/ScreenShareOptions.ts +++ b/fluxer_app/src/features/voice/utils/ScreenShareOptions.ts @@ -6,6 +6,7 @@ import type { ScreenShareScalabilityModePreference, } from '@app/features/voice/utils/CodecCapabilityDetector'; import {getH264HardwareProfilesSync} from '@app/features/voice/utils/GpuEncoderCapabilities'; +import {MAX_SCREEN_SHARE_BITRATE} from '@fluxer/constants/src/LimitConstants'; import type {ScreenShareCaptureOptions, TrackPublishOptions, VideoCodec} from 'livekit-client'; const DIMENSIONS: Record< @@ -22,11 +23,15 @@ const DIMENSIONS: Record< ultra: {width: 2560, height: 1440}, source: {width: 3840, height: 2160}, }; -export const SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS = 9_000_000; export const SUPPORTED_SCREEN_SHARE_FRAME_RATES = [15, 30, 60, 90, 120] as const; export type SupportedScreenShareFrameRate = (typeof SUPPORTED_SCREEN_SHARE_FRAME_RATES)[number]; +export interface ScreenShareBitrateBudget { + ceilingBps: number; + chosenBps: number | null; +} + const SCREEN_SHARE_BITS_PER_PIXEL_PER_FRAME = 0.02; const SCREEN_SHARE_MIN_MAINTAIN_FRAMERATE_BITRATE_BPS = 500_000; const SOFTWARE_H264_MAX_RESOLUTION: ScreenshareResolution = 'medium'; @@ -73,22 +78,22 @@ function computeScreenShareBitrateBps( pixels: number, rung: ScreenshareResolution, frameRate: SupportedScreenShareFrameRate, + budget: ScreenShareBitrateBudget, ): number { - const rungFloor = BITRATE_KBPS[rung][frameRate] * 1000; - const computed = Math.round(SCREEN_SHARE_BITS_PER_PIXEL_PER_FRAME * pixels * frameRate); - return Math.min(SCREEN_SHARE_MAX_VIDEO_BITRATE_BPS, Math.max(rungFloor, computed)); + if (budget.chosenBps !== null) return Math.min(budget.chosenBps, budget.ceilingBps); + const scale = Math.max(1, budget.ceilingBps / MAX_SCREEN_SHARE_BITRATE); + const rungFloor = BITRATE_KBPS[rung][frameRate] * 1000 * scale; + const computed = SCREEN_SHARE_BITS_PER_PIXEL_PER_FRAME * pixels * frameRate * scale; + return Math.min(budget.ceilingBps, Math.round(Math.max(rungFloor, computed))); } export function getScreenShareBitrateBps( resolution: ScreenshareResolution, frameRate: SupportedScreenShareFrameRate, - sourceDimensions?: { - width: number; - height: number; - } | null, + budget: ScreenShareBitrateBudget, ): number { - const fit = resolveEffectiveScreenShareDimensions(resolution, sourceDimensions); - return computeScreenShareBitrateBps(fit.width * fit.height, fit.rung, frameRate); + const fit = resolveEffectiveScreenShareDimensions(resolution); + return computeScreenShareBitrateBps(fit.width * fit.height, fit.rung, frameRate, budget); } const STREAMING_MODE_PRESETS: Record< @@ -120,6 +125,7 @@ export interface BuiltScreenShareOptions { export interface ScreenShareBuildConfig { resolution: ScreenshareResolution; frameRate: number; + maxBitrate: number; context: ScreenShareContext; includeAudio: boolean; contentHint?: ScreenShareCaptureOptions['contentHint']; @@ -181,7 +187,6 @@ export function resolveEffectiveScreenShareDimensions( export function buildScreenShareOptions(config: ScreenShareBuildConfig): BuiltScreenShareOptions { const {width, height, rung} = resolveEffectiveScreenShareDimensions(config.resolution, config.sourceDimensions); const resolvedFrameRate = resolveScreenShareFrameRate(config.frameRate); - const maxBitrate = computeScreenShareBitrateBps(width * height, rung, resolvedFrameRate); const video: ScreenShareVideoOptions = { cursor: resolveScreenShareCursorCapture(config.preferredDisplaySurface), ...(config.preferredDisplaySurface ? {displaySurface: config.preferredDisplaySurface} : {}), @@ -203,10 +208,10 @@ export function buildScreenShareOptions(config: ScreenShareBuildConfig): BuiltSc context: config.context, rung, contentHint: config.contentHint, - maxBitrate, + maxBitrate: config.maxBitrate, degradationPreference: config.degradationPreference, }), - screenShareEncoding: {maxBitrate, maxFramerate: resolvedFrameRate, priority: 'high'}, + screenShareEncoding: {maxBitrate: config.maxBitrate, maxFramerate: resolvedFrameRate, priority: 'high'}, }, }; } @@ -289,6 +294,7 @@ export interface ScreenShareQualityInput { export interface ScreenShareTargetInput extends ScreenShareQualityInput { sourceDimensions: {width: number; height: number} | null; + bitrate: ScreenShareBitrateBudget; hintSetting: ScreenShareContentHint; codec?: VideoCodec; softwareEncoderClamp?: boolean; @@ -303,6 +309,7 @@ export interface ScreenShareTarget { height: number; rung: ScreenshareResolution; maxBitrate: number; + bitrate: ScreenShareBitrateBudget; contentHint: ScreenShareCaptureOptions['contentHint']; degradationPreference: NonNullable; softwareEncoderClamped: boolean; @@ -392,7 +399,7 @@ export function resolveScreenShareTarget(input: ScreenShareTargetInput): ScreenS const configuredOnDisplay = resolveEffectiveScreenShareQuality({...input, context: 'display'}); const onDisplay = clamped ? clampToSoftwareH264Budget(configuredOnDisplay) : configuredOnDisplay; const fit = resolveEffectiveScreenShareDimensions(effective.resolution, input.sourceDimensions); - const maxBitrate = computeScreenShareBitrateBps(fit.width * fit.height, fit.rung, effective.frameRate); + const maxBitrate = computeScreenShareBitrateBps(fit.width * fit.height, fit.rung, effective.frameRate, input.bitrate); const contentHint = resolveScreenShareContentHint(effective.mode, input.hintSetting, input.context); return { mode: effective.mode, @@ -403,6 +410,7 @@ export function resolveScreenShareTarget(input: ScreenShareTargetInput): ScreenS height: fit.height, rung: fit.rung, maxBitrate, + bitrate: input.bitrate, contentHint, degradationPreference: resolveScreenShareDegradationPreference({ context: input.context, @@ -538,7 +546,12 @@ export function buildScreenShareSenderParameters(input: ScreenShareSenderParamet sentPixels !== null && sentPixels < targetPixels * SENT_PIXEL_FILL_RATIO ? Math.min( input.target.maxBitrate, - computeScreenShareBitrateBps(sentPixels, resolveBitrateRungForPixels(sentPixels), input.target.frameRate), + computeScreenShareBitrateBps( + sentPixels, + resolveBitrateRungForPixels(sentPixels), + input.target.frameRate, + input.target.bitrate, + ), ) : input.target.maxBitrate; const bitrates = distributeScreenShareBitrate(input.encodings, maxBitrate); diff --git a/fluxer_app/src/features/voice/utils/ScreenShareStartFlow.ts b/fluxer_app/src/features/voice/utils/ScreenShareStartFlow.ts index eedb5d0c6..034229ac1 100644 --- a/fluxer_app/src/features/voice/utils/ScreenShareStartFlow.ts +++ b/fluxer_app/src/features/voice/utils/ScreenShareStartFlow.ts @@ -331,6 +331,7 @@ export function buildConfiguredScreenShareOptions(input: ScreenShareOptionsBuild const {captureOptions, publishOptions} = buildScreenShareOptions({ resolution: input.target.resolution, frameRate: input.target.frameRate, + maxBitrate: input.target.maxBitrate, context: input.target.context, includeAudio: input.includeAudio, contentHint: input.target.contentHint, diff --git a/fluxer_app/src/features/voice/utils/StatsForNerdsCopy.ts b/fluxer_app/src/features/voice/utils/StatsForNerdsCopy.ts index 4a368bc8e..28755ba06 100644 --- a/fluxer_app/src/features/voice/utils/StatsForNerdsCopy.ts +++ b/fluxer_app/src/features/voice/utils/StatsForNerdsCopy.ts @@ -300,7 +300,11 @@ async function collectVoiceSettingsMetadata(): Promise> screenShareEncoderMode: VoiceSettings.getScreenShareEncoderMode(), screenShareScalabilityMode: VoiceSettings.getScreenShareScalabilityMode(), screenShareMaxBitrateMbps: - getScreenShareBitrateBps(configuredScreenShare.resolution, configuredScreenShare.frameRate) / 1000000, + getScreenShareBitrateBps( + configuredScreenShare.resolution, + configuredScreenShare.frameRate, + VoiceSettings.getScreenShareBitrateBudget(), + ) / 1000000, linuxAudioCapture: { workaround: VoiceSettings.getLinuxAudioCaptureWorkaround(), onlySpeakers: VoiceSettings.getLinuxAudioCaptureOnlySpeakers(), @@ -505,8 +509,11 @@ export function collectStatsForNerdsSnapshot(): StatsForNerdsData { scalabilityMode: VoiceSettings.getScreenShareScalabilityMode(), maxBitrateMbps: (getPublishedScreenShareMaxBitrateBps(localParticipant) ?? - getScreenShareBitrateBps(effectiveScreenShareSettings.resolution, effectiveScreenShareSettings.frameRate)) / - 1000000, + getScreenShareBitrateBps( + effectiveScreenShareSettings.resolution, + effectiveScreenShareSettings.frameRate, + VoiceSettings.getScreenShareBitrateBudget(), + )) / 1000000, audioSourceMode: VoiceSettings.getScreenShareAudioSourceMode(), audioIncludeSources: VoiceSettings.getScreenShareAudioIncludeSources(), audioExcludeSources: VoiceSettings.getScreenShareAudioExcludeSources(), diff --git a/fluxer_app/src/features/voice/utils/VideoQualityEntitlement.ts b/fluxer_app/src/features/voice/utils/VideoQualityEntitlement.ts index 24c22b4bd..73c656492 100644 --- a/fluxer_app/src/features/voice/utils/VideoQualityEntitlement.ts +++ b/fluxer_app/src/features/voice/utils/VideoQualityEntitlement.ts @@ -3,6 +3,7 @@ import {LimitResolver} from '@app/features/app/utils/LimitResolverAdapter'; import {isLimitToggleEnabled} from '@app/features/app/utils/LimitUtils'; import {isActiveVoiceChannelP2p} from '@app/features/voice/state/ChannelP2pStatus'; +import {MAX_SCREEN_SHARE_BITRATE} from '@fluxer/constants/src/LimitConstants'; export function hasHigherVideoQuality(): boolean { return ( @@ -18,3 +19,7 @@ export function hasHigherVideoQuality(): boolean { ) ); } + +export function getScreenShareBitrateCeilingBps(): number { + return LimitResolver.resolve({key: 'max_screen_share_bitrate', fallback: MAX_SCREEN_SHARE_BITRATE}); +}