From 66517c925b58ec7382f7fa8685651d35a1764406 Mon Sep 17 00:00:00 2001 From: Hampus Date: Thu, 3 Sep 2026 04:49:07 +0200 Subject: [PATCH] feat(voice): show a passive badge when a stream underperforms (#2420) --- .../src/features/i18n/locales/ar/messages.po | 94 ++++---- .../locales/auto-i18n-reviewed-unchanged.json | 6 + .../src/features/i18n/locales/bg/messages.po | 94 ++++---- .../src/features/i18n/locales/cs/messages.po | 94 ++++---- .../src/features/i18n/locales/da/messages.po | 94 ++++---- .../src/features/i18n/locales/de/messages.po | 94 ++++---- .../src/features/i18n/locales/el/messages.po | 94 ++++---- .../features/i18n/locales/en-GB/messages.po | 95 ++++---- .../features/i18n/locales/en-US/messages.po | 94 ++++---- .../features/i18n/locales/es-419/messages.po | 94 ++++---- .../features/i18n/locales/es-ES/messages.po | 94 ++++---- .../src/features/i18n/locales/fi/messages.po | 94 ++++---- .../src/features/i18n/locales/fr/messages.po | 94 ++++---- .../src/features/i18n/locales/he/messages.po | 94 ++++---- .../src/features/i18n/locales/hi/messages.po | 94 ++++---- .../src/features/i18n/locales/hr/messages.po | 94 ++++---- .../src/features/i18n/locales/hu/messages.po | 94 ++++---- .../src/features/i18n/locales/id/messages.po | 94 ++++---- .../src/features/i18n/locales/it/messages.po | 94 ++++---- .../src/features/i18n/locales/ja/messages.po | 94 ++++---- .../src/features/i18n/locales/ko/messages.po | 94 ++++---- .../src/features/i18n/locales/lt/messages.po | 94 ++++---- .../src/features/i18n/locales/nl/messages.po | 94 ++++---- .../src/features/i18n/locales/no/messages.po | 94 ++++---- .../src/features/i18n/locales/pl/messages.po | 94 ++++---- .../features/i18n/locales/pt-BR/messages.po | 94 ++++---- .../src/features/i18n/locales/ro/messages.po | 94 ++++---- .../src/features/i18n/locales/ru/messages.po | 94 ++++---- .../features/i18n/locales/sv-SE/messages.po | 94 ++++---- .../src/features/i18n/locales/th/messages.po | 94 ++++---- .../src/features/i18n/locales/tr/messages.po | 94 ++++---- .../src/features/i18n/locales/uk/messages.po | 94 ++++---- .../src/features/i18n/locales/vi/messages.po | 94 ++++---- .../features/i18n/locales/zh-CN/messages.po | 94 ++++---- .../features/i18n/locales/zh-TW/messages.po | 94 ++++---- .../voice/commands/VoiceSettingsCommands.ts | 32 +++ .../VoiceParticipantTile.module.css | 6 + .../voice/components/VoiceParticipantTile.tsx | 27 +++ .../VoiceParticipantTileStateMachine.test.ts | 204 ++++++++++++++++++ .../useScreenShareUnderperformance.ts | 107 +++++++++ .../voice_participant_tile/shared.ts | 26 +++ .../engine/ScreenShareUnderperformance.ts | 128 +++++++++++ .../voice_screen_share_manager/shared.ts | 5 + 43 files changed, 2479 insertions(+), 1259 deletions(-) create mode 100644 fluxer_app/src/features/voice/components/useScreenShareUnderperformance.ts create mode 100644 fluxer_app/src/features/voice/engine/ScreenShareUnderperformance.ts diff --git a/fluxer_app/src/features/i18n/locales/ar/messages.po b/fluxer_app/src/features/i18n/locales/ar/messages.po index 67a5e63dc..1415f33ef 100644 --- a/fluxer_app/src/features/i18n/locales/ar/messages.po +++ b/fluxer_app/src/features/i18n/locales/ar/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {توسيع (# سطر)} other {توسيع (# أسط msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {توسيع (# صف)} other {توسيع (# صفوف)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {توسيع جهاز آخر} other {توسيع # أجهزة أخرى}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {في مكالمة} other {# في مكالمة}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {الانضمام لمكالمة الفيديو (# مشارك)} other {الانضمام لمكالمة الفيديو (# مشاركين)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {متابعة مشاهدة بث واحد وإضافة هذا البث} other {متابعة مشاهدة # بثوث وإضافة هذا البث}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} مستخدم" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} مشاهدة" @@ -4666,7 +4666,7 @@ msgstr "ميزات Plutonium الخلفية معطلة" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "الخلفية" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "تمويه" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "قوة التمويه" @@ -5547,12 +5547,12 @@ msgstr "جهاز الكاميرا" msgid "Camera effects" msgstr "تأثيرات الكاميرا" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "خطأ في الكاميرا" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "الكاميرا مخفية" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "تم الوصول إلى الحد الأقصى لعدد المستخدمين الذين يمكنهم مشاركة الفيديو في هذه القناة — يمكن لما يصل إلى {voiceChannelCameraUserLimit} شخصًا مشاركة الفيديو." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "جاري تحميل الكاميرا" @@ -5590,7 +5590,7 @@ msgstr "مطلوب إذن الكاميرا" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "معاينة الكاميرا" @@ -5692,7 +5692,7 @@ msgstr "لا يمكن تحميل الملفات هنا" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "إلغاء" @@ -5940,7 +5940,7 @@ msgstr "في المنتصف" msgid "Change avatar" msgstr "تغيير الصورة الرمزية" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "تغيير الخلفية" @@ -7466,7 +7466,7 @@ msgstr "طي موضوع القناة" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "طي الأجهزة" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "عناصر تحكم مستوى صوت الاتصال" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "الاتصال: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "فاصل زخرفي" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "الكمبيوتر بعيدًا" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "جهاز كمبيوتر مكتبي" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "خطأ" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "رمز الخطأ {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "فشل حذف القناة" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "تعذّر تشغيل الكاميرا." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "فشل البدء" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "تعذّر بدء معاينة الكاميرا. تحقق من أذونات الكاميرا." @@ -14302,7 +14302,7 @@ msgstr "تصفية" msgid "Filtering by {language}" msgstr "التصفية حسب {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "جارٍ إنهاء إعداد الكاميرا..." @@ -17003,7 +17003,7 @@ msgstr "موروث" msgid "Inherited from {inheritedFromLabel}" msgstr "موروث من {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "جارٍ تهيئة الكاميرا..." @@ -19991,7 +19991,7 @@ msgstr "قُصّر في خطر، أو محتوى للبالغين في غير م #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "عكس الكاميرا" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "كلمات بها أخطاء إملائية" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "جهاز جوال" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "كتم الأصوات" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "كتم صوت البث" @@ -20545,7 +20545,7 @@ msgstr "صامت" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "صامت" @@ -22678,7 +22678,7 @@ msgstr "نظام التشغيل" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "فعّل خيار التحكم التجريبي في شارات الرسائل غير المقروءة لكل مجتمع ولكل قناة" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "جاري تحسين الكاميرا..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "حد المشاركين" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "خيارات المشارك لـ {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "تُخزّن صور المعاينة مؤقتًا بواسطة {productName} لتسهيل عرضها، ولا يتم تشفيرها بشكل كامل. لا يزال يتعين على المستخدمين الحصول على إذن للانضمام، ولكن ليس من الضروري أن يشاهدوا البث الخاص بك مباشرةً." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "تم إيقاف المعاينة مؤقتًا لتوفير الموارد" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "إظهار صور المتصلين" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "إظهار الكاميرا" @@ -29606,6 +29606,11 @@ msgstr "شخص ما" msgid "something" msgstr "شيء ما" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "يحد شيء ما من هذا البث، لذا يحصل المشاهدون على إطارات أقل مما طلبته." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "البث المباشر" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "جارٍ تخزين البث مؤقتًا" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "انتهى البث" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "تم إخفاء البث" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "البث لا يواكب" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "مستخدم غير معروف" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "مستخدم غير معروف" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "إلغاء كتم صوت الميكروفون" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "إلغاء كتم صوت البث" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "هل كنت أنت؟" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "مشاهدة" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "يشاهد" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "فشل المشاهدة :(" @@ -37352,7 +37362,7 @@ msgstr "لا يمكنك التحدث في هذه القناة" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "مجتمعك مُدرج في الاكتشاف. يمكنك تحديث ت msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "يحتاج مجتمعك إلى {minMemberCount} عضو على الأقل قبل أن يتم إدراجه في الاكتشاف." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "لا يمكن لوحدة المعالجة المركزية لديك مواكبة الأمر، لذا يحصل المشاهدون على إطارات أقل مما طلبته." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "لم يتم تحديث رسالتك" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "لم يعد آخر شراء لك ضمن فترة استرداد الأموال. تواصل مع الدعم لمشاكل الفوترة." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "شبكتك لا تواكب، لذا يحصل المشاهدون على إطارات أقل مما طلبته." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "يتطلب تسجيلك فحصًا إضافيًا لمكافحة الرسائل المزعجة قبل أن تتمكن من المتابعة." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "البث المباشر الخاص بك لا يزال نشطًا" 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 1a5a1e1fe..21d2f33ce 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 @@ -1881,6 +1881,9 @@ { "msgid": "Smoother video" }, + { + "msgid": "Something is limiting this stream, so viewers are getting fewer frames than you asked for." + }, { "msgid": "Static Neko" }, @@ -1893,6 +1896,9 @@ { "msgid": "Stop streaming" }, + { + "msgid": "Stream is not keeping up" + }, { "msgid": "Stream quality" }, diff --git a/fluxer_app/src/features/i18n/locales/bg/messages.po b/fluxer_app/src/features/i18n/locales/bg/messages.po index 45438071a..460639339 100644 --- a/fluxer_app/src/features/i18n/locales/bg/messages.po +++ b/fluxer_app/src/features/i18n/locales/bg/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Разгъване (1 ред)} other {Разгъв msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Разгънете (# ред)} other {Разгънете (# реда)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Разгъване на # друго устройство} other {Разгъване на # други устройства}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {В разговор} other {# в разговор}} msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Присъединяване към видео разговор (# участник)} other {Присъединяване към видео разговор (# участници)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Продължи да гледаш # поток и добави този} other {Продължи да гледаш # потока и добави този}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} потребители" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} гледат" @@ -4666,7 +4666,7 @@ msgstr "Премиум предимствата на бекенда са деа #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Фон" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Размазване" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Сила на размазването" @@ -5547,12 +5547,12 @@ msgstr "Камера" msgid "Camera effects" msgstr "Ефекти на камерата" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Грешка в камерата" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Камерата е скрита" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Достигнат лимит за камерата — до {voiceChannelCameraUserLimit} души могат да споделят видео в този канал." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Камерата се зарежда" @@ -5590,7 +5590,7 @@ msgstr "Изисква се разрешение за камера" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Визуализация на камерата" @@ -5692,7 +5692,7 @@ msgstr "Не може да се качват файлове тук" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Отказ" @@ -5940,7 +5940,7 @@ msgstr "Центрирано" msgid "Change avatar" msgstr "Смени аватара" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Смяна на фон" @@ -7466,7 +7466,7 @@ msgstr "Скрий темата на канала" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Свиване на устройствата" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Контрол на силата на звука при връзка" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Връзка: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Декоративен разделител" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Извън компютъра" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Настолно устройство" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Грешка" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "грешка, код: {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Неуспешно изтриване на канала" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Неуспешно включване на камерата." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Неуспешен старт" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Неуспешно стартиране на прегледа от камерата. Проверете разрешенията за камерата си." @@ -14302,7 +14302,7 @@ msgstr "Филтриране" msgid "Filtering by {language}" msgstr "Филтриране по {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Подготовка на камерата..." @@ -17003,7 +17003,7 @@ msgstr "Наследен" msgid "Inherited from {inheritedFromLabel}" msgstr "Наследено от {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Инициализиране на камерата..." @@ -19991,7 +19991,7 @@ msgstr "Непълнолетни в риск, неподходящо съдър #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Огледално изображение на камерата" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Грешно написани думи" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Мобилно устройство" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Изключване на звуци" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Спиране на звука от стрийма" @@ -20545,7 +20545,7 @@ msgstr "скрито" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Изключен звук" @@ -22678,7 +22678,7 @@ msgstr "Операционна система" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Активирайте експерименталните настройки за показване на значки за непрочетени съобщения в отделните общности и канали" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Оптимизиране на камерата..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Лимит на участниците" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Опции за участник: {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Предварителните изображения се съхраняват временно от {productName}, за да бъдат предоставени, и не са криптирани от край до край. Все пак хората трябва да имат разрешение да се присъединят, но не е необходимо активно да гледат вашия поток." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Прегледът е на пауза за пестене на ресурси" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Покажи аватари на повикванията" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Покажи камерата" @@ -29606,6 +29606,11 @@ msgstr "някой" msgid "something" msgstr "нещо" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Нещо ограничава този поток, затова зрителите получават по-малко кадри, отколкото сте поискали." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Поток" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Буфериране на потока" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Потокът приключи" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Потокът е скрит" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Потокът не успява да поддържа" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "неизвестен потребител" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Неизвестен потребител" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Включване на микрофона" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Включване на звука на потока" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Вие ли бяхте?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Гледане" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Гледа" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Гледането не успя :(" @@ -37352,7 +37362,7 @@ msgstr "Нямате право да говорите в този канал" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Общността ви е включена в Откриване. Мо msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Общността ви трябва да има поне {minMemberCount} члена, преди да може да бъде включена в Откриване." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Вашият процесор не успява да се справи, затова зрителите получават по-малко кадри, отколкото сте поискали." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Съобщението ви не беше актуализирано" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Последната ви покупка вече не е в рамките на периода за възстановяване. Свържете се с поддръжката за проблеми с таксуването." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Мрежата ви не успява да поддържа скоростта, затова зрителите получават по-малко кадри, отколкото сте поискали." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Регистрацията ви изисква допълнителна проверка срещу спам, преди да продължите." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Потокът ви все още е на живо" diff --git a/fluxer_app/src/features/i18n/locales/cs/messages.po b/fluxer_app/src/features/i18n/locales/cs/messages.po index 0eb74abe5..b17201602 100644 --- a/fluxer_app/src/features/i18n/locales/cs/messages.po +++ b/fluxer_app/src/features/i18n/locales/cs/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Rozbalit (1 řádek)} few {Rozbalit (# řádky)} ma msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Rozbalit (# řádek)} other {Rozbalit (# řádky)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Rozbalit # další zařízení} other {Rozbalit # dalších zařízení}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {V hovoru} other {# v hovoru}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Připojit se k videohovoru (1 účastník)} few {Připojit se k videohovoru (# účastníci)} many {Připojit se k videohovoru (# účastníků)} other {Připojit se k videohovoru (# účastníků)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Sledovat # stream a přidat tento} other {Sledovat # streamy a přidat tento}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} uživatelů" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} sledujících" @@ -4666,7 +4666,7 @@ msgstr "Prémiové výhody backendu zakázány" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Pozadí" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Rozostřit" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Síla rozostření" @@ -5547,12 +5547,12 @@ msgstr "Zařízení fotoaparátu" msgid "Camera effects" msgstr "Efekty fotoaparátu" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Chyba fotoaparátu" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera skryta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Dosaženo limitu kamer — ve tomto kanálu může sdílet video až {voiceChannelCameraUserLimit} uživatelů." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera se načítá" @@ -5590,7 +5590,7 @@ msgstr "Je potřeba povolit přístup ke kameře" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Náhled kamery" @@ -5692,7 +5692,7 @@ msgstr "Sem nelze nahrávat soubory" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Zrušit" @@ -5940,7 +5940,7 @@ msgstr "Na střed" msgid "Change avatar" msgstr "Změnit avatara" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Změnit pozadí" @@ -7466,7 +7466,7 @@ msgstr "Sbalit téma kanálu" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Sbalit zařízení" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Ovládací prvky hlasitosti připojení" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Připojení: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekorativní oddělovač" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Mimo počítač" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Počítač" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Chyba" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "chyba, kód {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Nepodařilo se smazat kanál" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Nepodařilo se zapnout fotoaparát." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Spuštění se nezdařilo" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Nepodařilo se spustit náhled kamery. Zkontrolujte oprávnění kamery." @@ -14302,7 +14302,7 @@ msgstr "Filtrování" msgid "Filtering by {language}" msgstr "Filtrovat podle {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Dokončování nastavení kamery..." @@ -17003,7 +17003,7 @@ msgstr "Zděděno" msgid "Inherited from {inheritedFromLabel}" msgstr "Zděděno z {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Inicializace kamery..." @@ -19991,7 +19991,7 @@ msgstr "Ohrožení nezletilých, nevhodný obsah nebo nežádoucí chování." #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Zrcadlit kameru" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Překlepy" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobilní zařízení" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Ztlumit zvuky" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Ztlumit zvuk streamu" @@ -20545,7 +20545,7 @@ msgstr "ztlumeno" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Ztlumeno" @@ -22678,7 +22678,7 @@ msgstr "Operační systém" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Zapněte experimentální ovládací prvky pro značky o nepřečtených zprávách na úrovni komunity a kanálu" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimalizace kamery..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limit účastníků" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Možnosti účastníka pro {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Náhledy obrázků jsou dočasně ukládány službou {productName} pro účely zobrazení a nejsou šifrovány koncovým šifrováním. Uživatelé stále potřebují mít oprávnění ke připojení, ale nemusí aktivně sledovat váš stream." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Náhled pozastaven kvůli úspoře zdrojů" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Zobrazit avatary hovoru" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Zobrazit kameru" @@ -29606,6 +29606,11 @@ msgstr "někdo" msgid "something" msgstr "něco" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Něco omezuje tento stream, takže diváci dostávají méně snímků, než jste požadovali." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream se načítá" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream skončil" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream skryt" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Stream nestíhá" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "neznámý uživatel" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Neznámý uživatel" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Zapnout mikrofon" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Zrušit ztlumení zvuku streamu" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Byl/a jste to vy?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Sledovat" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Sleduje" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Sledování selhalo :(" @@ -37352,7 +37362,7 @@ msgstr "V tomto kanálu nemůžete mluvit" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Vaše komunita je uvedena v sekci Objevit. Níže můžete aktualizovat msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Vaše komunita potřebuje alespoň {minMemberCount} členů, než ji bude možné uvést v sekci Objevit." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Vaše CPU nestíhá, takže diváci dostávají méně snímků, než jste požadovali." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Zprávu se nepodařilo aktualizovat" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Váš poslední nákup již není v době pro vrácení peněz. V případě problémů s platbou kontaktujte podporu." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Vaše síť nestíhá, takže diváci dostávají méně snímků, než jste požadovali." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Než budete moct pokračovat, je potřeba provést dodatečnou kontrolu proti spamu." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Váš stream je stále aktivní" diff --git a/fluxer_app/src/features/i18n/locales/da/messages.po b/fluxer_app/src/features/i18n/locales/da/messages.po index b2cc32875..55d55539f 100644 --- a/fluxer_app/src/features/i18n/locales/da/messages.po +++ b/fluxer_app/src/features/i18n/locales/da/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Vis (# linje)} other {Vis (# linjer)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Vis (# række)} other {Vis (# rækker)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Udvid # anden enhed} other {Udvid # andre enheder}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {I opkald} other {# i opkald}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Deltag i videoopkald (# deltager)} other {Deltag i videoopkald (# deltagere)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "Fortsæt med at se # {count, plural, one {stream og tilføj denne} other {streams og tilføj denne}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} brugere" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} ser med" @@ -4666,7 +4666,7 @@ msgstr "Backend-premiumfordele deaktiveret" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Baggrund" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Slør" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Sløringstyrke" @@ -5547,12 +5547,12 @@ msgstr "Kameraenhed" msgid "Camera effects" msgstr "Kameraeffekter" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamerafejl" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera skjult" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Maksimalt antal brugere, der kan dele video i denne kanal er nået — op til {voiceChannelCameraUserLimit} personer." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera indlæses" @@ -5590,7 +5590,7 @@ msgstr "Kameratilladelse påkrævet" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kameravisning" @@ -5692,7 +5692,7 @@ msgstr "Kan ikke uploade filer her" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Annuller" @@ -5940,7 +5940,7 @@ msgstr "Centreret" msgid "Change avatar" msgstr "Skift profilbillede" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Skift baggrund" @@ -7466,7 +7466,7 @@ msgstr "Skjul kanalemne" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Skjul enheder" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Forbindelsesvolumenkontrol" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Forbindelse: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekorativ skillelinje" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Ikke ved computeren" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Computer" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Fejl" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "fejlkode {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kunne ikke slette kanal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Kunne ikke aktivere kameraet." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Kunne ikke starte" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Kunne ikke starte kameraforhåndsvisning. Tjek dine kameratilladelser." @@ -14302,7 +14302,7 @@ msgstr "Filtrering" msgid "Filtering by {language}" msgstr "Filtrerer efter {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Klargør kamera..." @@ -17003,7 +17003,7 @@ msgstr "Arvet" msgid "Inherited from {inheritedFromLabel}" msgstr "Arvet fra {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initialiserer kamera ..." @@ -19991,7 +19991,7 @@ msgstr "Mindreårige i fare, upassende indhold eller uønsket adfærd." #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Spejl kamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Stavefejl" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobilenhed" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Slå lyde fra" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Slå lyd fra for stream" @@ -20545,7 +20545,7 @@ msgstr "slået lyd fra" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Slået fra" @@ -22678,7 +22678,7 @@ msgstr "Operativsystem" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Slå eksperimentelle indstillinger til for at få flere kontrolmuligheder over ulæste badges på både fællesskabs- og kanalbasis" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimerer kamera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Antal deltagere" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Indstillinger for {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Forhåndsvisningsbilleder gemmes midlertidigt af {productName} med henblik på levering og er ikke ende-til-ende-krypterede. Folk skal stadig have tilladelse til at deltage, men de behøver ikke aktivt at se din stream." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Forhåndsvisning sat på pause for at spare ressourcer" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Vis opkaldsavatarer" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Vis kamera" @@ -29606,6 +29606,11 @@ msgstr "nogen" msgid "something" msgstr "noget" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Noget begrænser denne stream, så seere får færre billeder, end du har anmodet om." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream bufferer" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream afsluttet" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream skjult" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Streamet følger ikke med" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "Ukendt bruger" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Ukendt bruger" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Slå mikrofon til" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Slå lyd til for stream" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Var det dig?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Se med" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Ser" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Kunne ikke se med :(" @@ -37352,7 +37362,7 @@ msgstr "Du kan ikke tale i denne kanal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Dit fællesskab er vist i Oplev. Du kan opdatere dine oplysninger herund msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Dit fællesskab skal have mindst {minMemberCount} medlemmer, før det kan vises i Oplev." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Din CPU kan ikke følge med, så seere får færre billeder pr. sekund, end du har anmodet om." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Din besked blev ikke opdateret" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Dit seneste køb er ikke længere inden for refusionsperioden. Kontakt support for faktureringsproblemer." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Dit netværk kan ikke følge med, så seere får færre billeder, end du har anmodet om." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Din registrering kræver et ekstra anti-spam-tjek, før du kan fortsætte." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Din stream er stadig live" diff --git a/fluxer_app/src/features/i18n/locales/de/messages.po b/fluxer_app/src/features/i18n/locales/de/messages.po index b85be5b2a..3bdd0b461 100644 --- a/fluxer_app/src/features/i18n/locales/de/messages.po +++ b/fluxer_app/src/features/i18n/locales/de/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Erweitern (# Zeile)} other {Erweitern (# Zeilen)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Erweitern (# Zeile)} other {Erweitern (# Zeilen)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Einen weiteren Teilnehmer einblenden} other {# weitere Teilnehmer einblenden}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Im Anruf} other {# im Anruf}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Videoanruf beitreten (# Teilnehmer)} other {Videoanruf beitreten (# Teilnehmer)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Behalte # Stream im Auge und füge diesen hinzu} other {Behalte # Streams im Auge und füge diesen hinzu}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} Nutzer" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} Zuschauer" @@ -4666,7 +4666,7 @@ msgstr "Backend-Premiumvorteile deaktiviert" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Hintergrund" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Weichzeichnen" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Unschärfestärke" @@ -5547,12 +5547,12 @@ msgstr "Kameragerät" msgid "Camera effects" msgstr "Kameraeffekte" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamerafehler" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera ausgeblendet" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Maximale Anzahl an Nutzern für die Kameraübertragung erreicht – maximal {voiceChannelCameraUserLimit} Personen können in diesem Kanal Video teilen." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera wird geladen" @@ -5590,7 +5590,7 @@ msgstr "Kamerazugriff erforderlich" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kameravorschau" @@ -5692,7 +5692,7 @@ msgstr "Dateien können hier nicht hochgeladen werden" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Abbrechen" @@ -5940,7 +5940,7 @@ msgstr "Zentriert" msgid "Change avatar" msgstr "Profilbild ändern" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Hintergrund ändern" @@ -7466,7 +7466,7 @@ msgstr "Kanalthema einklappen" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Geräte einklappen" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Verbindungslautstärkeregelung" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Verbindung: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekorativer Trenner" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop abwesend" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Desktop-Gerät" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Fehler" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "Fehlercode {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kanal konnte nicht gelöscht werden" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Kamera konnte nicht aktiviert werden." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Starten fehlgeschlagen" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Kameravorschau konnte nicht gestartet werden. Überprüfe deine Kameraberechtigungen." @@ -14302,7 +14302,7 @@ msgstr "Filterung" msgid "Filtering by {language}" msgstr "Filtern nach {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Kamera wird vorbereitet..." @@ -17003,7 +17003,7 @@ msgstr "Übernommen" msgid "Inherited from {inheritedFromLabel}" msgstr "Übernommen von {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Kamera wird initialisiert …" @@ -19991,7 +19991,7 @@ msgstr "Minderjährige in Gefahr, nicht jugendfreie Inhalte am falschen Ort oder #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Kamera spiegeln" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Falsch geschriebene Wörter" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobilgerät" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Töne stummschalten" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Stream-Audio stummschalten" @@ -20545,7 +20545,7 @@ msgstr "Stummgeschaltet" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Stummgeschaltet" @@ -22678,7 +22678,7 @@ msgstr "Betriebssystem" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Experimentelle Einstellungen für die Anzeige von ungelesenen Nachrichten pro Community und Kanal aktivieren" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Kamera wird optimiert..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Teilnehmerlimit" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Optionen für {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Vorschau-Bilder werden von {productName} vorübergehend gespeichert, um die Übertragung zu ermöglichen, und sind nicht Ende-zu-Ende verschlüsselt. Nutzer benötigen weiterhin eine Berechtigung, um sich zu verbinden, müssen aber nicht aktiv deinen Stream ansehen." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Vorschau pausiert, um Ressourcen zu sparen" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Anruf-Avatare anzeigen" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Kamera anzeigen" @@ -29606,6 +29606,11 @@ msgstr "jemand" msgid "something" msgstr "etwas" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Etwas schränkt diesen Stream ein, daher erhalten Zuschauer weniger Bilder als angefordert." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream wird gepuffert" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream beendet" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream ausgeblendet" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Stream kommt nicht hinterher" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "Unbekannter Nutzer" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Unbekannter Nutzer" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Mikrofon stummschalten aufheben" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Audiostream aktivieren" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Warst du das?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Zuschauen" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Schaut zu" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Anzeige fehlgeschlagen :(" @@ -37352,7 +37362,7 @@ msgstr "Du kannst in diesem Kanal nicht sprechen" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Deine Community ist in der Entdeckung gelistet. Du kannst deine Eintrags msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Deine Community benötigt mindestens {minMemberCount} Mitglieder, bevor sie in Discovery gelistet werden kann." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Deine CPU kann nicht mithalten, daher erhalten Zuschauer weniger Bilder als angefordert." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Deine Nachricht wurde nicht aktualisiert" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Dein jüngster Kauf liegt nicht mehr innerhalb des Rückerstattungszeitraums. Kontaktiere den Support bei Abrechnungsproblemen." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Dein Netzwerk kann nicht mithalten, daher erhalten Zuschauer weniger Bilder pro Sekunde als angefordert." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Deine Registrierung erfordert eine zusätzliche Anti-Spam-Prüfung, bevor du fortfahren kannst." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Dein Stream ist weiterhin live" diff --git a/fluxer_app/src/features/i18n/locales/el/messages.po b/fluxer_app/src/features/i18n/locales/el/messages.po index 9c649a4e8..81e91f5c6 100644 --- a/fluxer_app/src/features/i18n/locales/el/messages.po +++ b/fluxer_app/src/features/i18n/locales/el/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Ανάπτυξη (# γραμμή)} other {Ανάπ msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Εμφάνιση (# γραμμής)} other {Εμφάνιση (# γραμμών)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Ανάπτυξη # άλλης συσκευής} other {Ανάπτυξη # άλλων συσκευών}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Σε κλήση} other {# σε κλήση}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Συμμετοχή σε βιντεοκλήση (# συμμετέχων)} other {Συμμετοχή σε βιντεοκλήση (# συμμετέχοντες)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Συνέχισε να παρακολουθείς # ροή και πρόσθεσε αυτήν} other {Συνέχισε να παρακολουθείς # ροές και πρόσθεσε αυτήν}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} χρήστες" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} παρακολουθούν" @@ -4666,7 +4666,7 @@ msgstr "Οι premium παροχές του backend είναι απενεργοπ #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Φόντο" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Θάμπωμα" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Ένταση θολώματος" @@ -5547,12 +5547,12 @@ msgstr "Συσκευή κάμερας" msgid "Camera effects" msgstr "Εφέ κάμερας" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Σφάλμα κάμερας" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Η κάμερα είναι κρυφή" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Επιτεύχθηκε το όριο της κάμερας — έως {voiceChannelCameraUserLimit} άτομα μπορούν να μοιραστούν βίντεο σε αυτό το κανάλι." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Φόρτωση κάμερας" @@ -5590,7 +5590,7 @@ msgstr "Απαιτείται άδεια κάμερας" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Προεπισκόπηση κάμερας" @@ -5692,7 +5692,7 @@ msgstr "Δεν μπορείς να ανεβάσεις αρχεία εδώ" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Ακύρωση" @@ -5940,7 +5940,7 @@ msgstr "Στο κέντρο" msgid "Change avatar" msgstr "Αλλαγή avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Αλλαγή φόντου" @@ -7466,7 +7466,7 @@ msgstr "Σύμπτυξη θέματος καναλιού" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Σύμπτυξη συσκευών" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Έλεγχοι έντασης σύνδεσης" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Σύνδεση: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Διακοσμητικό διαχωριστικό" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Μακριά από υπολογιστή" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Συσκευή υπολογιστή" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Σφάλμα" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "κωδικός σφάλματος {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Αποτυχία διαγραφής καναλιού" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Αποτυχία ενεργοποίησης κάμερας." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Αποτυχία εκκίνησης" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Αποτυχία έναρξης προεπισκόπησης κάμερας. Ελέγξτε τα δικαιώματα της κάμεράς σας." @@ -14302,7 +14302,7 @@ msgstr "Φιλτράρισμα" msgid "Filtering by {language}" msgstr "Φιλτράρισμα κατά {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Ολοκλήρωση κάμερας..." @@ -17003,7 +17003,7 @@ msgstr "Κληρονομημένο" msgid "Inherited from {inheritedFromLabel}" msgstr "Κληρονομήθηκε από {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Αρχικοποίηση κάμερας..." @@ -19991,7 +19991,7 @@ msgstr "Ανήλικοι σε κίνδυνο, ακατάλληλο περιεχ #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Αντικατοπτρισμός κάμερας" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Λάθος ορθογραφία" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Κινητό" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Σίγαση ήχων" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Σίγαση ήχου ροής" @@ -20545,7 +20545,7 @@ msgstr "σε σίγαση" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Σε σίγαση" @@ -22678,7 +22678,7 @@ msgstr "Λειτουργικό σύστημα" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Επιλέξτε για να ενεργοποιήσετε τις πειραματικές ρυθμίσεις ελέγχου των μη αναγνωσμένων ειδοποιήσεων ανά κοινότητα και κανάλι" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Βελτιστοποίηση κάμερας..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Όριο συμμετεχόντων" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Επιλογές συμμετέχοντα για τον/την {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Οι εικόνες προεπισκόπησης αποθηκεύονται προσωρινά από το {productName} για την παράδοσή τους και δεν είναι κρυπτογραφημένες από άκρο σε άκρο. Οι χρήστες εξακολουθούν να χρειάζονται άδεια για να συνδεθούν, αλλά δεν χρειάζεται να παρακολουθούν ενεργά τη ροή σας." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Η προεπισκόπηση έχει τεθεί σε παύση για εξοικονόμηση πόρων" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Εμφάνιση avatar κλήσης" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Εμφάνιση κάμερας" @@ -29606,6 +29606,11 @@ msgstr "κάποιος" msgid "something" msgstr "κάτι" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Κάτι περιορίζει αυτή τη ροή, οπότε οι θεατές λαμβάνουν λιγότερα καρέ από όσα ζητήσατε." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Ροή" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Γίνεται προσωρινή αποθήκευση ροής" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Η ροή έληξε" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Η ροή είναι κρυφή" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Η ροή δεν προλαβαίνει" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "άγνωστος χρήστης" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Άγνωστος χρήστης" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Ενεργοποίηση μικροφώνου" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Κατάργηση σίγασης ήχου ροής" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Ήσουν εσύ;" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Παρακολούθηση" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Παρακολουθεί" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Η παρακολούθηση απέτυχε :(" @@ -37352,7 +37362,7 @@ msgstr "Δεν μπορείτε να μιλήσετε σε αυτό το καν #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Η κοινότητά σας είναι καταχωρισμένη στ msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Η κοινότητά σου χρειάζεται τουλάχιστον {minMemberCount} μέλη για να εμφανιστεί στην Ανακάλυψη." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Η CPU σας δεν προλαβαίνει, οπότε οι θεατές λαμβάνουν λιγότερα καρέ από αυτά που ζητήσατε." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Το μήνυμά σου δεν ενημερώθηκε" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Η πιο πρόσφατη αγορά σας δεν είναι πλέον εντός του παραθύρου επιστροφής χρημάτων. Επικοινωνήστε με την υποστήριξη για θέματα χρέωσης." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Το δίκτυό σας δεν μπορεί να τα παρακολουθήσει, οπότε οι θεατές λαμβάνουν λιγότερα καρέ από όσα ζητήσατε." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Η εγγραφή σου χρειάζεται έναν επιπλέον έλεγχο anti-spam πριν μπορέσεις να συνεχίσεις." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Η ροή σας είναι ακόμα ενεργή" 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 1d0156e38..a3372f714 100644 --- a/fluxer_app/src/features/i18n/locales/en-GB/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-GB/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Expand (# line)} other {Expand (# lines)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Expand # other device} other {Expand # other devices}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {In call} other {# in call}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} users" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} watching" @@ -4666,7 +4666,7 @@ msgstr "Backend premium perks disabled" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Background" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Blur" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Blur strength" @@ -5547,12 +5547,12 @@ msgstr "Camera device" msgid "Camera effects" msgstr "Camera effects" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Camera error" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Camera hidden" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Camera limit reached — up to {voiceChannelCameraUserLimit} people can share video in this channel." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Camera loading" @@ -5590,7 +5590,7 @@ msgstr "Camera permission required" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Camera preview" @@ -5692,7 +5692,7 @@ msgstr "Can't upload files here" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Cancel" @@ -5940,7 +5940,7 @@ msgstr "Centred" msgid "Change avatar" msgstr "Change avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Change background" @@ -7466,7 +7466,7 @@ msgstr "Collapse channel topic" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Collapse devices" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Connection volume controls" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Connection: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Decorative divider" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop away" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Desktop device" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Error" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "error code {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Failed to delete channel" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Failed to enable camera." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Failed to start" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Failed to start camera preview. Check your camera permissions." @@ -14302,7 +14302,7 @@ msgstr "Filtering" msgid "Filtering by {language}" msgstr "Filtering by {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalising camera..." @@ -17003,7 +17003,7 @@ msgstr "Inherited" msgid "Inherited from {inheritedFromLabel}" msgstr "Inherited from {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initialising camera..." @@ -19991,7 +19991,7 @@ msgstr "Minors at risk, mature content in the wrong place, or unwanted conduct." #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Mirror camera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Misspelt words" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobile device" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Mute sounds" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Mute stream audio" @@ -20545,7 +20545,7 @@ msgstr "Muted" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Muted" @@ -22678,7 +22678,7 @@ msgstr "Operating system" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Opt into experimental per-community and per-channel unread badge controls" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimising camera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Participant limit" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Participant options for {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Preview images are stored by {productName} temporarily for delivery and are not end-to-end encrypted. People still need permission to connect, but they do not need to be actively watching your stream." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Preview paused to save resources" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Show call avatars" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Show camera" @@ -29606,6 +29606,11 @@ msgstr "someone" msgid "something" msgstr "Something" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Something is limiting this stream, so viewers are getting fewer frames than you asked for." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream buffering" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream ended" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream hidden" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Stream is not keeping up" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "Unknown user" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Unknown user" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Unmute microphone" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Unmute stream audio" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Was this you?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Watch" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Watching" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Watching failed :(" @@ -37352,7 +37362,7 @@ msgstr "You can't speak in this channel" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Your community is listed in Discovery. You can update your listing detai msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Your community needs at least {minMemberCount} members before it can be listed in Discovery." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Your CPU can't keep up, so viewers are getting fewer frames than you asked for." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Your message didn't update" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Your most recent purchase is no longer within the refund window. Contact support for billing issues." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Your network can't keep up, so viewers are getting fewer frames than you asked for." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Your registration needs an extra anti-spam check before you can continue." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Your stream is still live" @@ -38301,7 +38321,6 @@ msgstr "Your vanity URL has been removed." msgid "Your vanity URL has been set to {inviteEndpoint}/{vanitySlug}" msgstr "Your vanity URL has been set to {inviteEndpoint}/{vanitySlug}" -# auto-i18n: reviewed unchanged #. Body of a modal shown when the local video encoder produces no frames for an active screen share, which forces the share to stop. #: src/features/voice/engine/v2/VoiceEngineV2AppScreenShareExecutionAdapter.tsx:110 msgctxt "screen-share" 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 6660a7f1e..5aba4b3e2 100644 --- a/fluxer_app/src/features/i18n/locales/en-US/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-US/messages.po @@ -451,7 +451,7 @@ msgstr "{count, plural, one {Expand (# line)} other {Expand (# lines)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Expand # other device} other {Expand # other devices}}" @@ -472,7 +472,7 @@ msgstr "{count, plural, one {In call} other {# in call}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" @@ -846,7 +846,7 @@ msgid "{length} users" msgstr "{length} users" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} watching" @@ -4667,7 +4667,7 @@ msgstr "Backend premium perks disabled" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Background" @@ -5071,7 +5071,7 @@ msgid "Blur" msgstr "Blur" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Blur strength" @@ -5548,12 +5548,12 @@ msgstr "Camera device" msgid "Camera effects" msgstr "Camera effects" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Camera error" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Camera hidden" @@ -5563,7 +5563,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Camera limit reached — up to {voiceChannelCameraUserLimit} people can share video in this channel." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Camera loading" @@ -5591,7 +5591,7 @@ msgstr "Camera permission required" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Camera preview" @@ -5693,7 +5693,7 @@ msgstr "Can't upload files here" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Cancel" @@ -5941,7 +5941,7 @@ msgstr "Centered" msgid "Change avatar" msgstr "Change avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Change background" @@ -7467,7 +7467,7 @@ msgstr "Collapse channel topic" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Collapse devices" @@ -8218,7 +8218,7 @@ msgid "Connection volume controls" msgstr "Connection volume controls" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Connection: {connectionId}" @@ -10302,7 +10302,7 @@ msgstr "Decorative divider" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10826,7 +10826,7 @@ msgid "Desktop away" msgstr "Desktop away" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Desktop device" @@ -13286,7 +13286,7 @@ msgid "Error" msgstr "Error" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "error code {code}" @@ -13774,7 +13774,7 @@ msgid "Failed to delete channel" msgstr "Failed to delete channel" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Failed to enable camera." @@ -13958,7 +13958,7 @@ msgid "Failed to start" msgstr "Failed to start" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Failed to start camera preview. Check your camera permissions." @@ -14303,7 +14303,7 @@ msgstr "Filtering" msgid "Filtering by {language}" msgstr "Filtering by {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizing camera..." @@ -17004,7 +17004,7 @@ msgstr "Inherited" msgid "Inherited from {inheritedFromLabel}" msgstr "Inherited from {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initializing camera..." @@ -19992,7 +19992,7 @@ msgstr "Minors at risk, mature content in the wrong place, or unwanted conduct." #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Mirror camera" @@ -20029,7 +20029,7 @@ msgid "Misspelled words" msgstr "Misspelled words" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobile device" @@ -20519,7 +20519,7 @@ msgid "Mute sounds" msgstr "Mute sounds" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Mute stream audio" @@ -20546,7 +20546,7 @@ msgstr "muted" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Muted" @@ -22679,7 +22679,7 @@ msgstr "Operating system" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Opt into experimental per-community and per-channel unread badge controls" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimizing camera..." @@ -22931,7 +22931,7 @@ msgid "Participant limit" msgstr "Participant limit" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Participant options for {participantDisplayName}" @@ -23964,7 +23964,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Preview images are stored by {productName} temporarily for delivery and are not end-to-end encrypted. People still need permission to connect, but they do not need to be actively watching your stream." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Preview paused to save resources" @@ -28659,7 +28659,7 @@ msgid "Show call avatars" msgstr "Show call avatars" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Show camera" @@ -29607,6 +29607,11 @@ msgstr "someone" msgid "something" msgstr "something" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Something is limiting this stream, so viewers are getting fewer frames than you asked for." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30523,20 +30528,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream buffering" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream ended" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream hidden" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Stream is not keeping up" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33859,7 +33869,7 @@ msgstr "unknown user" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Unknown user" @@ -34017,7 +34027,7 @@ msgid "Unmute microphone" msgstr "Unmute microphone" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Unmute stream audio" @@ -36309,7 +36319,7 @@ msgid "Was this you?" msgstr "Was this you?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Watch" @@ -36324,7 +36334,7 @@ msgid "Watching" msgstr "Watching" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Watching failed :(" @@ -37353,7 +37363,7 @@ msgstr "You can't speak in this channel" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38020,6 +38030,11 @@ msgstr "Your community is listed in Discovery. You can update your listing detai msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Your community needs at least {minMemberCount} members before it can be listed in Discovery." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38161,6 +38176,11 @@ msgstr "Your message didn't update" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Your most recent purchase is no longer within the refund window. Contact support for billing issues." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Your network cannot keep up, so viewers are getting fewer frames than you asked for." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38225,7 +38245,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Your registration needs an extra anti-spam check before you can continue." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Your stream is still live" 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 c990cf3b1..3d174a57b 100644 --- a/fluxer_app/src/features/i18n/locales/es-419/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-419/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Expandir (# línea)} other {Expandir (# líneas)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Mostrar (# fila)} other {Mostrar (# filas)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Expandir # otro dispositivo} other {Expandir # otros dispositivos}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {En llamada} other {# en llamada}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Unirse a videollamada (# participante)} other {Unirse a videollamada (# participantes)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {seguir viendo # transmisión y agregar esta} other {seguir viendo # transmisiones y agregar esta}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} usuarios" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} viendo" @@ -4666,7 +4666,7 @@ msgstr "Ventajas premium del backend desactivadas" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Fondo" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Desenfoque" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensidad del desenfoque" @@ -5547,12 +5547,12 @@ msgstr "Dispositivo de cámara" msgid "Camera effects" msgstr "Efectos de cámara" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Error de cámara" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Cámara oculta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Se alcanzó el límite de cámaras: hasta {voiceChannelCameraUserLimit} personas pueden compartir video en este canal." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Cámara cargando" @@ -5590,7 +5590,7 @@ msgstr "Se requiere permiso para la cámara" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Vista previa de la cámara" @@ -5692,7 +5692,7 @@ msgstr "No se pueden subir archivos aquí" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Cancelar" @@ -5940,7 +5940,7 @@ msgstr "Centrado" msgid "Change avatar" msgstr "Cambiar avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Cambiar fondo" @@ -7466,7 +7466,7 @@ msgstr "Contraer tema del canal" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Contraer dispositivos" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Controles de volumen de conexión" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Conexión: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Divisor decorativo" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Ausente en la computadora" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dispositivo de escritorio" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Error" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "código de error {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "No se pudo eliminar el canal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "No se pudo activar la cámara." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "No se pudo iniciar" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "No se pudo iniciar la vista previa de la cámara. Revisa los permisos de tu cámara." @@ -14302,7 +14302,7 @@ msgstr "Filtrado" msgid "Filtering by {language}" msgstr "Filtrando por {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizando cámara..." @@ -17003,7 +17003,7 @@ msgstr "Heredado" msgid "Inherited from {inheritedFromLabel}" msgstr "Heredado de {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Inicializando cámara..." @@ -19991,7 +19991,7 @@ msgstr "Menores en riesgo, contenido para adultos en el lugar equivocado o condu #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Reflejar cámara" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Palabras mal escritas" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Dispositivo móvil" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Silenciar sonidos" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Silenciar audio de la transmisión" @@ -20545,7 +20545,7 @@ msgstr "silenciado" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Silenciado" @@ -22678,7 +22678,7 @@ msgstr "Sistema operativo" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Activar los controles de insignias de mensajes no leídos por comunidad y canal, que están en fase experimental" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimizando cámara..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Límite de participantes" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opciones de participante para {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Las imágenes de vista previa se almacenan temporalmente en {productName} para su entrega y no están cifradas de extremo a extremo. Las personas aún necesitan permiso para conectarse, pero no tienen que estar viendo activamente tu transmisión." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Vista previa pausada para ahorrar recursos" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Mostrar avatares de la llamada" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Mostrar cámara" @@ -29606,6 +29606,11 @@ msgstr "alguien" msgid "something" msgstr "algo" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Algo está limitando esta transmisión, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Transmisión" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Transmisión en búfer" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transmisión finalizada" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Transmisión oculta" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "La transmisión no está al día" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "usuario desconocido" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Usuario desconocido" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Activar micrófono" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Activar audio del stream" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "¿fuiste tú?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Ver" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Viendo" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Error al cargar la transmisión" @@ -37352,7 +37362,7 @@ msgstr "No puedes hablar en este canal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Tu comunidad está en Descubrir. Puedes actualizar los detalles de tu pu msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Tu comunidad necesita al menos {minMemberCount} miembros para poder aparecer en Descubrir." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Tu CPU no da abasto, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "No se pudo actualizar tu mensaje" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Tu compra más reciente ya no está dentro del período de reembolso. Contacta a soporte técnico para problemas de facturación." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Tu red no puede seguir el ritmo, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Tu registro necesita una verificación antispam adicional antes de que puedas continuar." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Tu transmisión sigue activa" 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 9682b2fec..acdb9b41a 100644 --- a/fluxer_app/src/features/i18n/locales/es-ES/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-ES/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Expandir (# línea)} other {Expandir (# líneas)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Mostrar (# fila)} other {Mostrar (# filas)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Expandir # otro dispositivo} other {Expandir # otros dispositivos}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {En llamada} other {# en llamada}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Unirse a la videollamada (# participante)} other {Unirse a la videollamada (# participantes)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Seguir viendo # retransmisión y añadir esta} other {Seguir viendo # retransmisiones y añadir esta}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} usuarios" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} viendo" @@ -4666,7 +4666,7 @@ msgstr "Ventajas premium del backend desactivadas" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Fondo" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Desenfoque" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensidad del desenfoque" @@ -5547,12 +5547,12 @@ msgstr "Dispositivo de cámara" msgid "Camera effects" msgstr "Efectos de cámara" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Error de la cámara" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Cámara oculta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Se alcanzó el límite de cámaras: hasta {voiceChannelCameraUserLimit} personas pueden compartir vídeo en este canal." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Cámara cargando" @@ -5590,7 +5590,7 @@ msgstr "Se necesitan permisos para la cámara" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Previsualización de la cámara" @@ -5692,7 +5692,7 @@ msgstr "No se pueden subir archivos aquí" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Cancelar" @@ -5940,7 +5940,7 @@ msgstr "Centrado" msgid "Change avatar" msgstr "Cambiar avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Cambiar fondo" @@ -7466,7 +7466,7 @@ msgstr "Contraer tema del canal" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Contraer dispositivos" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Controles de volumen de conexión" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Conexión: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Divisor decorativo" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Ausente en el ordenador" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dispositivo de escritorio" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Error" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "código de error {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "No se pudo eliminar el canal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "No se pudo activar la cámara." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Error al iniciar" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "No se ha podido iniciar la vista previa de la cámara. Comprueba los permisos de la cámara." @@ -14302,7 +14302,7 @@ msgstr "Filtrado" msgid "Filtering by {language}" msgstr "Filtrando por {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizando cámara..." @@ -17003,7 +17003,7 @@ msgstr "Heredado" msgid "Inherited from {inheritedFromLabel}" msgstr "Heredado de {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Inicializando cámara..." @@ -19991,7 +19991,7 @@ msgstr "Menores en riesgo, contenido para adultos en el lugar equivocado o condu #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Reflejar cámara" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Palabras mal escritas" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Dispositivo móvil" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Silenciar sonidos" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Silenciar audio de la transmisión" @@ -20545,7 +20545,7 @@ msgstr "silenciado" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Silenciado" @@ -22678,7 +22678,7 @@ msgstr "Sistema operativo" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Activar los controles de insignias de mensajes no leídos por comunidad y canal, que están en fase experimental" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimizando cámara..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Límite de participantes" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opciones de participante para {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Las imágenes de vista previa se almacenan temporalmente en {productName} para su entrega y no están cifradas de extremo a extremo. Los usuarios siguen necesitando permiso para conectarse, pero no necesitan estar viendo activamente tu transmisión." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Vista previa en pausa para ahorrar recursos" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Mostrar avatares de la llamada" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Mostrar cámara" @@ -29606,6 +29606,11 @@ msgstr "alguien" msgid "something" msgstr "algo" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Algo limita esta transmisión, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Retransmisión" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Transmisión en búfer" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transmisión finalizada" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Transmisión oculta" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "La transmisión no sigue el ritmo" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "usuario desconocido" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Usuario desconocido" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Activar micrófono" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Reactivar audio del stream" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "¿Fuiste tú?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Ver" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Viendo" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Error al cargar la transmisión" @@ -37352,7 +37362,7 @@ msgstr "No puedes hablar en este canal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Tu comunidad aparece en Descubrir. Puedes actualizar los detalles de tu msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Tu comunidad necesita al menos {minMemberCount} miembros para poder aparecer en Descubrir." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Tu CPU no da abasto, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "No se ha podido actualizar tu mensaje" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Tu compra más reciente ya no está dentro del plazo de reembolso. Contacta con soporte para problemas de facturación." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Tu red no puede seguir el ritmo, por lo que los espectadores reciben menos fotogramas de los que solicitaste." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Tu registro necesita una comprobación antispam adicional antes de que puedas continuar." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Tu emisión sigue activa" diff --git a/fluxer_app/src/features/i18n/locales/fi/messages.po b/fluxer_app/src/features/i18n/locales/fi/messages.po index 0965cc539..55863cbf4 100644 --- a/fluxer_app/src/features/i18n/locales/fi/messages.po +++ b/fluxer_app/src/features/i18n/locales/fi/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Laajenna (1 rivi)} other {Laajenna (# riviä)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Näytä lisää (# rivi)} other {Näytä lisää (# riviä)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Laajenna # muu laite} other {Laajenna # muuta laitetta}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Puhelussa} other {# puhelussa}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Liity videopuheluun (1 osallistuja)} other {Liity videopuheluun (# osallistujaa)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "Jatka # {count, plural, one {striimin} other {striimien}} katsomista ja lisää tämä" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} käyttäjää" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length, plural, one {# katsoja} other {# katsojaa}}" @@ -4666,7 +4666,7 @@ msgstr "Taustaohjelman premium-edut poistettu käytöstä" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Tausta" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Sumenna" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Sumennuksen voimakkuus" @@ -5547,12 +5547,12 @@ msgstr "Kamera" msgid "Camera effects" msgstr "Kameratehosteet" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kameravirhe" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera piilotettu" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Kameroiden enimmäismäärä saavutettu – enintään {voiceChannelCameraUserLimit} henkilöä voi jakaa videota tässä kanavassa." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera latautuu" @@ -5590,7 +5590,7 @@ msgstr "Kameran käyttöoikeus tarvitaan" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kameran esikatselu" @@ -5692,7 +5692,7 @@ msgstr "Tiedostojen lähetys ei onnistu tähän" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Peruuta" @@ -5940,7 +5940,7 @@ msgstr "Keskitetty" msgid "Change avatar" msgstr "Vaihda profiilikuva" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Vaihda taustaa" @@ -7466,7 +7466,7 @@ msgstr "Tiivistä kanavan aihe" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Tiivistä laitteet" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Yhteyden äänenvoimakkuuden säätimet" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Yhteys: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Koristeellinen jakaja" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Poissa työpöydän äärestä" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Työpöytälaite" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Virhe" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "virhekoodi {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kanavan poistaminen epäonnistui" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Kameran käynnistys epäonnistui." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Käynnistys epäonnistui" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Kameran esikatselun käynnistys epäonnistui. Tarkista kameran käyttöoikeudet." @@ -14302,7 +14302,7 @@ msgstr "Suodatus" msgid "Filtering by {language}" msgstr "Suodatus kielen mukaan: {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Kameraa viimeistellään..." @@ -17003,7 +17003,7 @@ msgstr "Peritty" msgid "Inherited from {inheritedFromLabel}" msgstr "Peritty kohteesta {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Kameraa käynnistetään..." @@ -19991,7 +19991,7 @@ msgstr "Alaikäiset vaarassa, sopimaton sisältö väärässä paikassa tai ei-t #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Peilaa kamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Väärin kirjoitetut sanat" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobiililaite" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Mykistä äänet" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Mykistä striimin ääni" @@ -20545,7 +20545,7 @@ msgstr "vaimennettu" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Mykistetty" @@ -22678,7 +22678,7 @@ msgstr "Käyttöjärjestelmä" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Ota käyttöön kokeelliset asetukset, joilla voit hallita lukemattomien viestien merkkien näkyvyyttä erikseen jokaisessa yhteisössä ja kanavassa" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Kameraa optimoidaan..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Osallistujarajoitus" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Osallistujan {participantDisplayName} asetukset" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Esikatselukuvat tallennetaan väliaikaisesti palveluun {productName}, jotta ne voidaan näyttää, eikä niitä ole salattu päästä päähän. Käyttäjät tarvitsevat edelleen luvan liittyä kanavaan, mutta heidän ei tarvitse katsoa lähetystäsi aktiivisesti." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Esikatselu keskeytetty resurssien säästämiseksi" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Näytä puhelun osallistujien kuvakkeet" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Näytä kamera" @@ -29606,6 +29606,11 @@ msgstr "joku" msgid "something" msgstr "jotain" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Jokin rajoittaa tätä striimiä, joten katsojat saavat vähemmän kuvia kuin pyysit." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Striimi" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Striimi puskuroi" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Striimi päättyi" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Striimaus piilotettu" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Striimi ei pysy perässä" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "tuntematon käyttäjä" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Tuntematon käyttäjä" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Poista mikrofonin mykistys" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Poista mykistys suoratoiston äänestä" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Olitko sinä?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Katso" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Katsoo" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Katselun epäonnistuminen :(" @@ -37352,7 +37362,7 @@ msgstr "Et voi puhua tällä kanavalla" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Yhteisösi näkyy Hakutoiminnossa. Voit päivittää tietoja alta tai po msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Yhteisössäsi on oltava vähintään {minMemberCount} jäsentä, ennen kuin se voidaan listata Löydä-osioon." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Suorittimesi ei pysy perässä, joten katsojat saavat vähemmän kuvia kuin pyysit." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Viestisi päivitys epäonnistui" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Viimeisin ostoksesi ei ole enää hyvityskelpoinen. Ota yhteyttä tukeen laskutusasioissa." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Verkkosi ei pysy perässä, joten katsojat saavat vähemmän kuvia kuin pyysit." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Rekisteröitymisesi vaatii ylimääräisen roskapostitarkistuksen ennen kuin voit jatkaa." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Striimisi on edelleen käynnissä" diff --git a/fluxer_app/src/features/i18n/locales/fr/messages.po b/fluxer_app/src/features/i18n/locales/fr/messages.po index 0c6b9457a..a99def3fb 100644 --- a/fluxer_app/src/features/i18n/locales/fr/messages.po +++ b/fluxer_app/src/features/i18n/locales/fr/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Développer (# ligne)} other {Développer (# lignes msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Afficher (# ligne)} other {Afficher (# lignes)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Afficher # autre appareil} other {Afficher # autres appareils}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {En appel} other {# en appel}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Rejoindre l'appel vidéo (1 participant)} other {Rejoindre l'appel vidéo (# participants)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Continuer à regarder # stream et ajouter celui-ci} other {Continuer à regarder # streams et ajouter celui-ci}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} utilisateurs" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} spectateur" @@ -4666,7 +4666,7 @@ msgstr "Avantages premium du backend désactivés" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Arrière-plan" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Flouter" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensité du flou" @@ -5547,12 +5547,12 @@ msgstr "Appareil photo" msgid "Camera effects" msgstr "Effets de caméra" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Erreur de l'appareil photo" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Caméra masquée" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Nombre maximal de participants à la diffusion vidéo atteint : jusqu’à {voiceChannelCameraUserLimit} personnes peuvent partager une vidéo dans ce salon." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Chargement de la caméra…" @@ -5590,7 +5590,7 @@ msgstr "Autorisation d'accès à la caméra requise" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Aperçu caméra" @@ -5692,7 +5692,7 @@ msgstr "Impossible de charger des fichiers ici" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Annuler" @@ -5940,7 +5940,7 @@ msgstr "Centré" msgid "Change avatar" msgstr "Changer d'avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Changer l'arrière-plan" @@ -7466,7 +7466,7 @@ msgstr "Réduire le sujet du salon" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Réduire les appareils" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Contrôles du volume de connexion" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Connexion : {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Séparateur décoratif" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Absent (ordinateur)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Appareil de bureau" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Erreur" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "code d'erreur {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Échec de la suppression du salon" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Échec de l'activation de la caméra." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Échec du démarrage" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Échec du démarrage de l'aperçu de la caméra. Vérifiez les autorisations de votre caméra." @@ -14302,7 +14302,7 @@ msgstr "Filtrage" msgid "Filtering by {language}" msgstr "Filtrer par {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalisation de la caméra..." @@ -17003,7 +17003,7 @@ msgstr "Hérité" msgid "Inherited from {inheritedFromLabel}" msgstr "Hérité de {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initialisation de la caméra..." @@ -19991,7 +19991,7 @@ msgstr "Mineurs en danger, contenu mature au mauvais endroit ou comportement ind #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Miroir de la caméra" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Mots mal orthographiés" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Appareil mobile" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Désactiver les sons" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Couper le son du flux" @@ -20545,7 +20545,7 @@ msgstr "masqué" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Muet" @@ -22678,7 +22678,7 @@ msgstr "Système d'exploitation" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Activez les paramètres expérimentaux de contrôle des badges d’éléments non lus par communauté et par salon" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimisation de la caméra..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limite de participants" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Options du participant pour {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Les images d’aperçu sont stockées temporairement par {productName} pour la diffusion et ne sont pas chiffrées de bout en bout. Les utilisateurs doivent toujours avoir l’autorisation de se connecter, mais ils n’ont pas besoin de regarder activement votre flux vidéo." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Aperçu mis en pause pour économiser les ressources" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Afficher les avatars d'appel" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Afficher la caméra" @@ -29606,6 +29606,11 @@ msgstr "quelqu'un" msgid "something" msgstr "quelque chose" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Quelque chose limite ce flux, vos spectateurs reçoivent donc moins d'images que vous ne l'aviez demandé." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Flux" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Mise en mémoire tampon du flux" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream terminé" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Flux masqué" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Le flux ne suit pas" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "utilisateur inconnu" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Utilisateur inconnu" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Réactiver le micro" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Réactiver le son du flux" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Est-ce bien vous ?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Regarder" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Regarde" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Le visionnage a échoué :(" @@ -37352,7 +37362,7 @@ msgstr "Vous ne pouvez pas parler dans ce salon" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Votre communauté est listée dans Découverte. Vous pouvez modifier les msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Votre communauté doit compter au moins {minMemberCount} membres avant de pouvoir être répertoriée dans Découverte." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Votre processeur ne suit pas, vos spectateurs reçoivent donc moins d'images que demandé." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Votre message n'a pas été mis à jour" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Votre achat le plus récent n’est plus dans la période de remboursement. Contactez l’assistance pour les problèmes de facturation." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Votre réseau ne suit pas, vos spectateurs reçoivent donc moins d'images que demandé." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Votre inscription nécessite une vérification anti-spam supplémentaire avant de pouvoir continuer." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Votre flux est toujours en direct" diff --git a/fluxer_app/src/features/i18n/locales/he/messages.po b/fluxer_app/src/features/i18n/locales/he/messages.po index 0cf43c470..875cad77b 100644 --- a/fluxer_app/src/features/i18n/locales/he/messages.po +++ b/fluxer_app/src/features/i18n/locales/he/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {הרחב (שורה אחת)} other {הרחב (# שו msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {הצג (# שורה)} other {הצג (# שורות)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {הרחב מכשיר אחד נוסף} other {הרחב # מכשירים נוספים}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {בשיחה} other {# בשיחה}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {הצטרף לשיחת וידאו (משתתף אחד)} other {הצטרף לשיחת וידאו (# משתתפים)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {המשך/המשיכי לצפות בסטרים # והוסף/הוסיפי את זה} other {המשך/המשיכי לצפות בסטרימים # והוסף/הוסיפי את זה}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} משתמשים" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} צופים" @@ -4666,7 +4666,7 @@ msgstr "הטבות פרימיום של ה־Backend מושבתות" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "רקע" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "טשטוש" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "עוצמת טשטוש" @@ -5547,12 +5547,12 @@ msgstr "מכשיר מצלמה" msgid "Camera effects" msgstr "אפקטים של מצלמה" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "שגיאת מצלמה" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "מצלמה מוסתרת" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "הגעת למגבלת מצלמות — עד {voiceChannelCameraUserLimit} משתמשים יכולים לשתף וידאו בערוץ זה." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "מצלמה בטעינה" @@ -5590,7 +5590,7 @@ msgstr "נדרשת הרשאת מצלמה" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "תצוגה מקדימה של המצלמה" @@ -5692,7 +5692,7 @@ msgstr "לא ניתן להעלות קבצים לכאן" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "ביטול" @@ -5940,7 +5940,7 @@ msgstr "ממורכז" msgid "Change avatar" msgstr "שינוי תמונת פרופיל" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "שינוי רקע" @@ -7466,7 +7466,7 @@ msgstr "כיווץ נושא הערוץ" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "כיווץ מכשירים" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "בקרות עוצמת קול חיבור" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "חיבור: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "מפריד דקורטיבי" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "מנותק מהמחשב" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "מכשיר דסקטופ" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "שגיאה" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "קוד שגיאה {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "מחיקת הערוץ נכשלה" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "הפעלת המצלמה נכשלה." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "ההפעלה נכשלה" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "הפעלת תצוגה מקדימה של המצלמה נכשלה. בדוק את הרשאות המצלמה שלך." @@ -14302,7 +14302,7 @@ msgstr "סינון" msgid "Filtering by {language}" msgstr "מסנן לפי {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "מכין את המצלמה..." @@ -17003,7 +17003,7 @@ msgstr "הוגדר בירושה" msgid "Inherited from {inheritedFromLabel}" msgstr "ירש מ- {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "מאתחל מצלמה..." @@ -19991,7 +19991,7 @@ msgstr "קטינים בסיכון, תוכן למבוגרים במקום הלא #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "שיקוף מצלמה" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "מילים שגויות" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "מכשיר נייד" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "השתקת צלילים" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "השתקת שמע מהזרם" @@ -20545,7 +20545,7 @@ msgstr "מושתק" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "מושתק" @@ -22678,7 +22678,7 @@ msgstr "מערכת הפעלה" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "הצטרף לאפשרות הניסיונית לשליטה על סמני הודעות שלא נקראו ברמת קהילה וברמת ערוץ" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "מבצע אופטימיזציה למצלמה..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "מגבלת משתתפים" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "אפשרויות משתתף עבור {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "תמונות התצוגה המקדימה מאוחסנות באופן זמני על ידי {productName} לצורך העברה ואינן מוצפנות מקצה לקצה. עדיין נדרשת הרשאה כדי להתחבר, אך אין צורך שהמשתמשים יצפו בשידור שלך בזמן אמת." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "התצוגה המקדימה הושהתה כדי לחסוך במשאבים" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "הצג אווטרים של שיחה" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "הצג מצלמה" @@ -29606,6 +29606,11 @@ msgstr "מישהו" msgid "something" msgstr "משהו" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "משהו מגביל את הזרם הזה, ולכן הצופים מקבלים פחות פריימים ממה שביקשת." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "סטרים" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "הזרם נטען" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "הסטרימינג הסתיים" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "הזרם מוסתר" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "הזרם לא עומד בקצב" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "משתמש לא ידוע" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "משתמש לא ידוע" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "בטל השתקת מיקרופון" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "בטל השתקת אודיו של השידור" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "האם זו היית/ה את/ה?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "צפייה" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "צופה" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "הצפייה נכשלה :(" @@ -37352,7 +37362,7 @@ msgstr "אינך יכול לדבר בערוץ זה" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "הקהילה שלך מופיעה ב'גילוי'. ניתן לעדכן א msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "הקהילה שלך צריכה לפחות {minMemberCount} חברים לפני שניתן יהיה לכלול אותה ב'גילוי'." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "המעבד שלך לא עומד בקצב, ולכן הצופים מקבלים פחות פריימים ממה שביקשת." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "ההודעה שלך לא עודכנה" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "הרכישה האחרונה שלך אינה עומדת עוד בחלון הזמן להחזר כספי. צור קשר עם התמיכה בנושאי חיוב." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "הרשת שלך לא עומדת בקצב, ולכן הצופים מקבלים פחות פריימים ממה שביקשת." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "ההרשמה שלך דורשת בדיקה נוספת למניעת ספאם לפני שתוכל להמשיך." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "השידור שלך עדיין פעיל" diff --git a/fluxer_app/src/features/i18n/locales/hi/messages.po b/fluxer_app/src/features/i18n/locales/hi/messages.po index f5ba7b59a..79312e6e4 100644 --- a/fluxer_app/src/features/i18n/locales/hi/messages.po +++ b/fluxer_app/src/features/i18n/locales/hi/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {विस्तार करें (# लाइन) msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {# पंक्तियाँ खोलें} other {# पंक्तियों को खोलें}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {अन्य # डिवाइस को बड़ा करें} other {अन्य # डिवाइस को बड़ा करें}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {कॉल पर} other {# लोग कॉल प msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {वीडियो कॉल में शामिल हों (# प्रतिभागी)} other {वीडियो कॉल में शामिल हों (# प्रतिभागी)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {# स्ट्रीम देखना जारी रखें और इसे जोड़ें} other {# स्ट्रीम देखना जारी रखें और इसे जोड़ें}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} यूज़र" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} दर्शक" @@ -4666,7 +4666,7 @@ msgstr "बैकएंड प्रीमियम सुविधाएं अ #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "बैकग्राउंड" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "धुंधला करें" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "धुंधलापन" @@ -5547,12 +5547,12 @@ msgstr "कैमरा डिवाइस" msgid "Camera effects" msgstr "कैमरा इफ़ेक्ट" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "कैमरा त्रुटि" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "कैमरा छिपा हुआ" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "कैमरा सीमा पहुँच गई — इस चैनल में अधिकतम {voiceChannelCameraUserLimit} लोग वीडियो साझा कर सकते हैं।" #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "कैमरा लोड हो रहा है" @@ -5590,7 +5590,7 @@ msgstr "कैमरा की अनुमति ज़रूरी है" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "कैमरा प्रीव्यू" @@ -5692,7 +5692,7 @@ msgstr "यहां फ़ाइलें अपलोड नहीं की #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "रद्द करें" @@ -5940,7 +5940,7 @@ msgstr "केंद्रित" msgid "Change avatar" msgstr "अवतार बदलें" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "बैकग्राउंड बदलें" @@ -7466,7 +7466,7 @@ msgstr "चैनल विषय छोटा करें" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "डिवाइसों को छोटा करें" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "कनेक्शन वॉल्यूम नियंत्रण" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "कनेक्शन: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "सजावटी विभाजक" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "डेस्कटॉप से दूर" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "डेस्कटॉप डिवाइस" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "गड़बड़ हो गई" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "त्रुटि कोड {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "चैनल मिटाने में विफल रहा" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "कैमरा चालू नहीं हो पाया।" @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "शुरू नहीं हो पाया" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "कैमरा प्रीव्यू शुरू करने में विफल। अपनी कैमरा अनुमतियां जांचें।" @@ -14302,7 +14302,7 @@ msgstr "फ़िल्टरिंग" msgid "Filtering by {language}" msgstr "{language} द्वारा फ़िल्टर किया जा रहा है" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "कैमरा फ़ाइनल किया जा रहा है..." @@ -17003,7 +17003,7 @@ msgstr "इनहेरिटेड" msgid "Inherited from {inheritedFromLabel}" msgstr "{inheritedFromLabel} से इनहेरिट किया गया" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "कैमरा शुरू हो रहा है..." @@ -19991,7 +19991,7 @@ msgstr "नाबालिगों को जोखिम, गलत जगह #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "कैमरा मिरर करें" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "गलत वर्तनी वाले शब्द" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "मोबाइल डिवाइस" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "ध्वनि म्यूट करें" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "स्ट्रीम ऑडियो म्यूट करें" @@ -20545,7 +20545,7 @@ msgstr "म्यूट किया गया" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "म्यूट किया गया" @@ -22678,7 +22678,7 @@ msgstr "ऑपरेटिंग सिस्टम" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "समुदाय और चैनल के अनुसार प्रायोगिक अनरीड बैज नियंत्रणों का उपयोग करें" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "कैमरा ऑप्टिमाइज़ किया जा रहा है..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "सदस्य सीमा" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "{participantDisplayName} के लिए प्रतिभागी विकल्प" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "{productName} द्वारा स्क्रीन शेयर पूर्वावलोकन छवियों को अस्थायी रूप से संग्रहीत किया जाता है ताकि उन्हें दिखाया जा सके और ये एंड-टू-एंड एन्क्रिप्टेड नहीं हैं। लोगों को कनेक्ट करने की अनुमति की आवश्यकता होती है, लेकिन उन्हें आपके स्ट्रीम को सक्रिय रूप से देखने की आवश्यकता नहीं होती है।" #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "संसाधन बचाने के लिए पूर्वावलोकन रोका गया" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "कॉल अवतार दिखाएं" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "कैमरा दिखाएं" @@ -29606,6 +29606,11 @@ msgstr "कोई" msgid "something" msgstr "कुछ" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "कुछ चीज़ें इस स्ट्रीम को सीमित कर रही हैं, इसलिए दर्शकों को आपके द्वारा मांगे गए फ्रेम से कम मिल रहे हैं।" + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "स्ट्रीम" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "स्ट्रीम बफ़र हो रहा है" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "स्ट्रीम समाप्त हो गई" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "स्ट्रीम छिपी हुई है" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "स्ट्रीम तालमेल नहीं बिठा पा रही है" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "अज्ञात यूज़र" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "अज्ञात यूज़र" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "माइक अनम्यूट करें" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "स्ट्रीम ऑडियो अनम्यूट करें" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "क्या यह आप थे?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "देखें" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "देख रहा है" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "वॉचिंग विफल रहा :(" @@ -37352,7 +37362,7 @@ msgstr "आप इस चैनल में बोल नहीं सकते #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "आपकी कम्युनिटी डिस्कवरी मे msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "आपकी कम्युनिटी में डिस्कवरी में लिस्ट होने के लिए कम से कम {minMemberCount} सदस्य होने चाहिए।" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "आपका सीपीयू साथ नहीं दे पा रहा है, इसलिए दर्शकों को आपके द्वारा मांगे गए फ्रेम से कम मिल रहे हैं।" + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "आपका मैसेज अपडेट नहीं हुआ" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "आपकी हाल की खरीदारी अब वापसी की अवधि के अंदर नहीं है। बिलिंग संबंधी समस्याओं के लिए सहायता से संपर्क करें।" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "आपका नेटवर्क साथ नहीं दे पा रहा है, इसलिए दर्शकों को आपके द्वारा मांगे गए फ्रेम से कम मिल रहे हैं।" + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "जारी रखने से पहले आपके रजिस्ट्रेशन के लिए एक अतिरिक्त एंटी-स्पैम जाँच की ज़रूरत है।" #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "आपकी स्ट्रीम अभी भी लाइव है" diff --git a/fluxer_app/src/features/i18n/locales/hr/messages.po b/fluxer_app/src/features/i18n/locales/hr/messages.po index 347202921..efc3314d5 100644 --- a/fluxer_app/src/features/i18n/locales/hr/messages.po +++ b/fluxer_app/src/features/i18n/locales/hr/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Proširi (# redak)} other {Proširi (# redaka)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Prikaži (# red)} other {Prikaži (# redova)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Proširi # drugi uređaj} other {Proširi # druga uređaja}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {U pozivu} other {# u pozivu}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Pridruži se videopozivu (# sudionik)} other {Pridruži se videopozivu (# sudionika)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Nastavi gledati # stream i dodaj ovaj} other {Nastavi gledati # streama i dodaj ovaj}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} korisnika" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} gleda" @@ -4666,7 +4666,7 @@ msgstr "Pozadinske premium pogodnosti onemogućene" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Pozadina" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Zamućenje" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Snaga zamućenja" @@ -5547,12 +5547,12 @@ msgstr "Kamera" msgid "Camera effects" msgstr "Efekti kamere" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Pogreška kamere" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera skrivena" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Dostignut limit kamere — do {voiceChannelCameraUserLimit} osoba može dijeliti video u ovom kanalu." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera se učitava" @@ -5590,7 +5590,7 @@ msgstr "Potrebno je dopuštenje za kameru" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Pregled kamere" @@ -5692,7 +5692,7 @@ msgstr "Ovdje nije moguće učitati datoteke" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Odustani" @@ -5940,7 +5940,7 @@ msgstr "Centrirano" msgid "Change avatar" msgstr "Promijeni avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Promijeni pozadinu" @@ -7466,7 +7466,7 @@ msgstr "Sažmi temu kanala" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Sažmi uređaje" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Kontrole glasnoće veze" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Veza: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Ukrasni razdjelnik" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Izvan mreže (računalo)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Stolni uređaj" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Pogreška" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "kôd greške {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Brisanje kanala nije uspjelo" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Omogućavanje kamere nije uspjelo." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Pokretanje nije uspjelo" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Pokretanje pregleda kamere nije uspjelo. Provjerite dopuštenja za kameru." @@ -14302,7 +14302,7 @@ msgstr "Filtriranje" msgid "Filtering by {language}" msgstr "Filtriranje po {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Završavanje postavljanja kamere..." @@ -17003,7 +17003,7 @@ msgstr "Naslijeđeno" msgid "Inherited from {inheritedFromLabel}" msgstr "Naslijeđeno od {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Pokrećem kameru..." @@ -19991,7 +19991,7 @@ msgstr "Maloljetnici u opasnosti, neprikladan sadržaj na pogrešnom mjestu ili #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Zrcali kameru" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Pogrešno napisane riječi" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobilni uređaj" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Isključi zvukove" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Isključi zvuk prijenosa" @@ -20545,7 +20545,7 @@ msgstr "isključeno" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Utišano" @@ -22678,7 +22678,7 @@ msgstr "Operativni sustav" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Omogućite eksperimentalne kontrole za oznake nepročitanih poruka po zajednici i kanalu" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimiziranje kamere..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Ograničenje broja sudionika" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opcije sudionika za {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Slike pregleda privremeno se pohranjuju u {productName} radi isporuke i nisu šifrirane od kraja do kraja. Ljudima je i dalje potrebna dozvola za povezivanje, ali ne moraju aktivno gledati vaš prijenos uživo." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Pretpregled pauziran radi uštede resursa" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Prikaži avatare poziva" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Prikaži kameru" @@ -29606,6 +29606,11 @@ msgstr "netko" msgid "something" msgstr "nešto" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Nešto ograničava ovaj prijenos, pa gledatelji dobivaju manje sličica nego što ste tražili." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Prijenos uživo" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Učitavanje prijenosa" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Prijenos završen" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Strim skriven" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Prijenos ne uspijeva pratiti" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "nepoznat korisnik" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Nepoznat korisnik" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Uključi mikrofon" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Uključi zvuk prijenosa" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Jeste li to bili vi?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Gledaj" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Gleda" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Gledanje nije uspjelo :(" @@ -37352,7 +37362,7 @@ msgstr "Ne možete govoriti u ovom kanalu" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Vaša je zajednica navedena u Otkrivanju. Pojedinosti unosa možete ažu msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Vaša zajednica treba imati barem {minMemberCount} članova prije nego što se može pojaviti u Otkrivanju." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Vaše CPU ne može pratiti, pa gledatelji dobivaju manje sličica nego što ste tražili." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Vaša poruka nije ažurirana" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Vaša najnovija kupnja više nije unutar roka za povrat novca. Obratite se podršci za probleme s naplatom." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Vaša mreža ne može pratiti, pa gledatelji dobivaju manje sličica nego što ste tražili." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Vaša registracija zahtijeva dodatnu provjeru protiv spama prije nego što možete nastaviti." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Vaš prijenos je i dalje aktivan" diff --git a/fluxer_app/src/features/i18n/locales/hu/messages.po b/fluxer_app/src/features/i18n/locales/hu/messages.po index 5a2667b01..01caf77f1 100644 --- a/fluxer_app/src/features/i18n/locales/hu/messages.po +++ b/fluxer_app/src/features/i18n/locales/hu/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Kibontás (# sor)} other {Kibontás (# sor)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Bontsd ki (# sor)} other {Bontsd ki (# sorok)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Kibontás: # további eszköz} other {Kibontás: # további eszköz}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Hívásban} other {#-en hívásban}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Csatlakozás videóhíváshoz (1 résztvevő)} other {Csatlakozás videóhíváshoz (# résztvevő)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Folytasd a(z) # stream nézését, és add hozzá ezt} other {Folytasd a(z) # stream nézését, és add hozzá ezt}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} felhasználó" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} néző" @@ -4666,7 +4666,7 @@ msgstr "A prémium háttérfunkciók letiltva" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Háttér" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Elmosás" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Elmosás mértéke" @@ -5547,12 +5547,12 @@ msgstr "Kameraeszköz" msgid "Camera effects" msgstr "Kameraeffektusok" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamerahiba" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera elrejtve" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "A kamerához való hozzáférés korlátozva — legfeljebb {voiceChannelCameraUserLimit} felhasználó oszthatja meg a videót ezen a csatornán." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera betöltése" @@ -5590,7 +5590,7 @@ msgstr "Kameraengedély szükséges" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kamera előnézete" @@ -5692,7 +5692,7 @@ msgstr "Ide nem tölthetsz fel fájlokat" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Mégse" @@ -5940,7 +5940,7 @@ msgstr "Középre igazítva" msgid "Change avatar" msgstr "Profilkép módosítása" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Háttér módosítása" @@ -7466,7 +7466,7 @@ msgstr "Csatornatéma összecsukása" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Eszközök összecsukása" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Kapcsolati hangerőszabályzók" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Kapcsolat: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekoratív elválasztó" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Asztali távol" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Asztali eszköz" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Hiba" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "hiba kód: {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Nem sikerült törölni a csatornát" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Nem sikerült bekapcsolni a kamerát." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Indítás sikertelen" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Nem sikerült elindítani a kamera előnézetét. Ellenőrizze a kameraengedélyeket." @@ -14302,7 +14302,7 @@ msgstr "Szűrés" msgid "Filtering by {language}" msgstr "Szűrés {language} szerint" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Kamera véglegesítése..." @@ -17003,7 +17003,7 @@ msgstr "Örökölt" msgid "Inherited from {inheritedFromLabel}" msgstr "Öröklés: {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Kamera inicializálása…" @@ -19991,7 +19991,7 @@ msgstr "Kiskorúak veszélyeztetése, nem megfelelő helyen megjelenő felnőtt #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Kamera tükrözése" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Elgépelt szavak" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobil eszköz" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Hangok némítása" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Stream hangjának némítása" @@ -20545,7 +20545,7 @@ msgstr "némítva" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Némítva" @@ -22678,7 +22678,7 @@ msgstr "Operációs rendszer" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Válassza ki a közösség és csatorna szintű, kísérleti jellegű olvasatlan jelzések beállítását" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Kamera optimalizálása..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Résztvevők korlátja" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Résztvevő beállításai – {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "A képernyőmegosztás előnézeti képei ideiglenesen a {productName} által kerülnek tárolásra a megjelenítéshez, és nem végpontok közötti titkosítással vannak ellátva. A felhasználóknak továbbra is engedélyre van szükségük a csatlakozáshoz, de nem kell aktívan nézniük az élő közvetítést." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Az előnézet szünetel az erőforrások kímélése érdekében" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Hívásban lévők profilképeinek megjelenítése" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Kamera megjelenítése" @@ -29606,6 +29606,11 @@ msgstr "valaki" msgid "something" msgstr "valami" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Valami korlátozza ezt a streamet, ezért a nézők kevesebb képkockát kapnak, mint amennyit kértél." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Adatfolyam" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream pufferelés" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Az adás befejeződött" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Adatfolyam elrejtve" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "A stream nem tartja a lépést" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "ismeretlen felhasználó" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Ismeretlen felhasználó" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Mikrofon némításának feloldása" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Stream hangjának némításának feloldása" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Te voltál?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Nézés" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Néz" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "A megtekintés sikertelen :(" @@ -37352,7 +37362,7 @@ msgstr "Ebben a csatornában nem beszélhetsz" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "A közösséged szerepel a Felfedezésben. Az adatait alább frissíthet msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "A közösségednek legalább {minMemberCount} tagra van szüksége, mielőtt megjelenhetne a Felfedezésben." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "A CPU-d nem bírja a tempót, ezért a nézők kevesebb képkockát kapnak, mint amennyit kértél." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Az üzenet frissítése sikertelen" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "A legutóbbi vásárlásod már kívül esik a visszatérítési időszakon. Számlázási problémák esetén vedd fel a kapcsolatot az ügyfélszolgálattal." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "A hálózatod nem tud lépést tartani, ezért a nézők kevesebb képkockát kapnak, mint amennyit kértél." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "A folytatáshoz a regisztrációdhoz egy további spamellenőrzésre van szükség." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "A stream továbbra is élő" diff --git a/fluxer_app/src/features/i18n/locales/id/messages.po b/fluxer_app/src/features/i18n/locales/id/messages.po index eaa258f40..48ae85df4 100644 --- a/fluxer_app/src/features/i18n/locales/id/messages.po +++ b/fluxer_app/src/features/i18n/locales/id/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Perluas (# baris)} other {Perluas (# baris)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Tampilkan (# baris)} other {Tampilkan (# baris)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Perluas # perangkat lain} other {Perluas # perangkat lain}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Dalam panggilan} other {# dalam panggilan}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Gabung panggilan video (# peserta)} other {Gabung panggilan video (# peserta)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Tetap tonton # stream dan tambahkan yang ini} other {Tetap tonton # stream dan tambahkan yang ini}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} pengguna" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} menonton" @@ -4666,7 +4666,7 @@ msgstr "Manfaat premium backend dinonaktifkan" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Latar belakang" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Buramkan" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Kekuatan buram" @@ -5547,12 +5547,12 @@ msgstr "Perangkat kamera" msgid "Camera effects" msgstr "Efek kamera" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Error kamera" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera disembunyikan" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Batas kamera tercapai — hingga {voiceChannelCameraUserLimit} orang dapat berbagi video di saluran ini." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera sedang dimuat" @@ -5590,7 +5590,7 @@ msgstr "Izin kamera diperlukan" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Pratinjau kamera" @@ -5692,7 +5692,7 @@ msgstr "Tidak bisa mengunggah file di sini" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Batal" @@ -5940,7 +5940,7 @@ msgstr "Tengah" msgid "Change avatar" msgstr "Ganti foto profil" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Ganti latar belakang" @@ -7466,7 +7466,7 @@ msgstr "Ciutkan topik saluran" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Ciutkan perangkat" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Kontrol volume koneksi" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Koneksi: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Pembatas dekoratif" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop tidak aktif" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Perangkat desktop" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Terjadi kesalahan" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "kode kesalahan {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Gagal menghapus saluran" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Gagal mengaktifkan kamera." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Gagal memulai" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Gagal memulai pratinjau kamera. Periksa izin kamera Anda." @@ -14302,7 +14302,7 @@ msgstr "Memfilter" msgid "Filtering by {language}" msgstr "Menyaring berdasarkan {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Menyelesaikan pengaturan kamera..." @@ -17003,7 +17003,7 @@ msgstr "Diwariskan" msgid "Inherited from {inheritedFromLabel}" msgstr "Diwarisi dari {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Menginisialisasi kamera..." @@ -19991,7 +19991,7 @@ msgstr "Anak di bawah umur berisiko, konten dewasa di tempat yang salah, atau pe #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Cerminkan kamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Kata yang salah ketik" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Perangkat seluler" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Bisukan suara" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Bisukan audio streaming" @@ -20545,7 +20545,7 @@ msgstr "dibisukan" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Dibisukan" @@ -22678,7 +22678,7 @@ msgstr "Sistem operasi" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Aktifkan kontrol lencana pesan yang belum dibaca untuk setiap komunitas dan saluran secara terpisah (fitur eksperimental)" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Mengoptimalkan kamera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Batas peserta" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opsi peserta untuk {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Gambar pratinjau disimpan oleh {productName} sementara untuk pengiriman dan tidak dienkripsi secara menyeluruh. Orang tetap memerlukan izin untuk bergabung, tetapi mereka tidak perlu menonton aliran Anda secara aktif." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Pratinjau dijeda untuk menghemat sumber daya" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Tampilkan avatar panggilan" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Tampilkan kamera" @@ -29606,6 +29606,11 @@ msgstr "seseorang" msgid "something" msgstr "sesuatu" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Sesuatu membatasi stream ini, jadi penonton mendapatkan frame lebih sedikit dari yang Anda minta." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Streaming" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Streaming melakukan buffering" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Streaming berakhir" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Streaming disembunyikan" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Streaming tidak lancar" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "pengguna tidak dikenal" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Pengguna tidak dikenal" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Aktifkan mikrofon" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Aktifkan audio streaming" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Apakah ini Anda?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Tonton" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Menonton" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Gagal menonton :(" @@ -37352,7 +37362,7 @@ msgstr "Anda tidak dapat berbicara di saluran ini" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Komunitas Anda terdaftar di Penemuan. Anda dapat memperbarui detail daft msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Komunitas Anda harus memiliki setidaknya {minMemberCount} anggota sebelum dapat dicantumkan di Penemuan." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU Anda tidak mampu mengimbangi, sehingga penonton mendapatkan frame lebih sedikit dari yang Anda minta." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Pesan Anda tidak terkirim" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Pembelian terbaru Anda tidak lagi berada dalam jangka waktu pengembalian dana. Hubungi dukungan untuk masalah penagihan." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Jaringan Anda tidak dapat mengimbangi, sehingga penonton mendapatkan frame lebih sedikit dari yang Anda minta." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Pendaftaran Anda memerlukan pemeriksaan anti-spam tambahan sebelum dapat dilanjutkan." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Streaming Anda masih aktif" diff --git a/fluxer_app/src/features/i18n/locales/it/messages.po b/fluxer_app/src/features/i18n/locales/it/messages.po index 2037fa869..bbd1ce0f0 100644 --- a/fluxer_app/src/features/i18n/locales/it/messages.po +++ b/fluxer_app/src/features/i18n/locales/it/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Espandi (# riga)} other {Espandi (# righe)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Espandi (# riga)} other {Espandi (# righe)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Espandi # altro dispositivo} other {Espandi # altri dispositivi}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {In chiamata} other {# in chiamata}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Partecipa alla videochiamata (# partecipante)} other {Partecipa alla videochiamata (# partecipanti)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Continua a guardare # stream e aggiungi questo} other {Continua a guardare # stream e aggiungi questo}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} utenti" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} spettatore" @@ -4666,7 +4666,7 @@ msgstr "Vantaggi premium del backend disabilitati" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Sfondo" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Sfoca" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensità della sfocatura" @@ -5547,12 +5547,12 @@ msgstr "Dispositivo fotocamera" msgid "Camera effects" msgstr "Effetti fotocamera" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Errore fotocamera" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Fotocamera nascosta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Raggiunto il limite della telecamera: fino a {voiceChannelCameraUserLimit} persone possono condividere video in questo canale." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Telecamera in caricamento" @@ -5590,7 +5590,7 @@ msgstr "Autorizzazione fotocamera richiesta" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Anteprima fotocamera" @@ -5692,7 +5692,7 @@ msgstr "Impossibile caricare file qui" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Annulla" @@ -5940,7 +5940,7 @@ msgstr "Centrato" msgid "Change avatar" msgstr "Cambia avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Cambia sfondo" @@ -7466,7 +7466,7 @@ msgstr "Comprimi l'argomento del canale" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Comprimi dispositivi" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Controlli del volume della connessione" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Connessione: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Divisore decorativo" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop assente" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dispositivo desktop" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Errore" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "codice di errore {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Impossibile eliminare il canale" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Impossibile attivare la fotocamera." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Avvio non riuscito" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Impossibile avviare l'anteprima della fotocamera. Controlla le autorizzazioni della fotocamera." @@ -14302,7 +14302,7 @@ msgstr "Filtri" msgid "Filtering by {language}" msgstr "Filtro per {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizzazione fotocamera..." @@ -17003,7 +17003,7 @@ msgstr "Ereditato" msgid "Inherited from {inheritedFromLabel}" msgstr "Ereditato da {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Inizializzazione fotocamera..." @@ -19991,7 +19991,7 @@ msgstr "Minori a rischio, contenuti per adulti fuori luogo o condotta indesidera #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Rifletti fotocamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Parole con errori di battitura" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Dispositivo mobile" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Disattiva suoni" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Disattiva audio streaming" @@ -20545,7 +20545,7 @@ msgstr "disattivato" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Disattivato" @@ -22678,7 +22678,7 @@ msgstr "Sistema operativo" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Attiva i controlli sperimentali dei badge di messaggi non letti a livello di community e canale" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Ottimizzazione fotocamera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limite partecipanti" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opzioni partecipante per {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Le immagini di anteprima vengono memorizzate temporaneamente da {productName} per la trasmissione e non sono crittografate end-to-end. Gli utenti devono comunque avere il permesso di connettersi, ma non è necessario che stiano attivamente guardando lo streaming." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Anteprima in pausa per risparmiare risorse" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Mostra avatar della chiamata" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Mostra fotocamera" @@ -29606,6 +29606,11 @@ msgstr "qualcuno" msgid "something" msgstr "qualcosa" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Qualcosa sta limitando questo stream, quindi i visualizzatori ricevono meno fotogrammi di quelli richiesti." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Streaming" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Streaming in buffering" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Streaming terminato" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Streaming nascosto" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Il flusso non tiene il passo" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "utente sconosciuto" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Utente sconosciuto" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Riattiva microfono" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Riattiva l'audio dello streaming" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Sei stato tu?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Guarda" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Sta guardando" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Impossibile visualizzare lo streaming" @@ -37352,7 +37362,7 @@ msgstr "Non puoi parlare in questo canale" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "La tua community è in Discovery. Puoi aggiornare i dettagli dell'inserz msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "La tua community deve avere almeno {minMemberCount} membri prima di poter essere elencata in Scopri." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "La tua CPU non riesce a tenere il passo, quindi i visualizzatori ricevono meno fotogrammi di quelli richiesti." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Non è stato possibile aggiornare il messaggio" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Il tuo acquisto più recente non rientra più nel periodo di rimborso. Contatta l'assistenza per problemi di fatturazione." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "La tua rete non riesce a tenere il passo, quindi i visualizzatori ricevono meno fotogrammi di quelli richiesti." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "La tua registrazione richiede un controllo anti-spam aggiuntivo prima di poter continuare." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Il tuo stream è ancora attivo" diff --git a/fluxer_app/src/features/i18n/locales/ja/messages.po b/fluxer_app/src/features/i18n/locales/ja/messages.po index b09b865d3..4ac86eee2 100644 --- a/fluxer_app/src/features/i18n/locales/ja/messages.po +++ b/fluxer_app/src/features/i18n/locales/ja/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {展開(#行)} other {展開(#行)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {#行を展開} other {#行を展開}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {#件の他のデバイスを展開} other {#件の他のデバイスを展開}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {通話中} other {#人が通話中}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {ビデオ通話に参加(#人)} other {ビデオ通話に参加(#人)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {#件のストリームを視聴し続け、これを追加} other {#件のストリームを視聴し続け、これを追加}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length}人のユーザー" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length}人が視聴中" @@ -4666,7 +4666,7 @@ msgstr "バックエンドのプレミアム特典が無効です" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "背景" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "ぼかし" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "ぼかしの強さ" @@ -5547,12 +5547,12 @@ msgstr "カメラデバイス" msgid "Camera effects" msgstr "カメラエフェクト" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "カメラエラー" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "カメラは非表示です" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "カメラ制限に達しました。このチャンネルでは最大 {voiceChannelCameraUserLimit} 人までビデオを共有できます。" #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "カメラ読み込み中" @@ -5590,7 +5590,7 @@ msgstr "カメラの許可が必要です" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "カメラプレビュー" @@ -5692,7 +5692,7 @@ msgstr "ここにファイルをアップロードできません" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "キャンセル" @@ -5940,7 +5940,7 @@ msgstr "中央揃え" msgid "Change avatar" msgstr "アバターを変更" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "背景を変更" @@ -7466,7 +7466,7 @@ msgstr "チャンネルのトピックを折りたたむ" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "デバイスを折りたたむ" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "接続音量コントロール" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "接続: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "区切り線" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "デスクトップ (離席中)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "デスクトップ" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "エラー" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "エラーコード {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "チャンネルを削除できませんでした" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "カメラを有効にできませんでした。" @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "起動できませんでした" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "カメラのプレビューを開始できませんでした。カメラの権限を確認してください。" @@ -14302,7 +14302,7 @@ msgstr "フィルター" msgid "Filtering by {language}" msgstr "{language}で絞り込み中" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "カメラを準備中…" @@ -17003,7 +17003,7 @@ msgstr "引き継ぎ" msgid "Inherited from {inheritedFromLabel}" msgstr "{inheritedFromLabel}から継承" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "カメラを初期化しています…" @@ -19991,7 +19991,7 @@ msgstr "未成年者の危険、不適切な場所での成人向けコンテン #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "カメラを反転" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "入力ミス" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "モバイル端末" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "サウンドをミュート" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "ストリーム音声をミュート" @@ -20545,7 +20545,7 @@ msgstr "ミュート中" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "ミュート中" @@ -22678,7 +22678,7 @@ msgstr "OS" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "コミュニティごと、チャンネルごとの未読バッジ表示設定を有効にする" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "カメラを最適化中…" @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "参加者上限" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "{participantDisplayName}の参加者オプション" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "プレビュー画像は、{productName}によって一時的に保存され、配信されます。エンドツーエンドで暗号化されることはありません。人々は接続するための許可を必要としますが、必ずしもあなたのストリームを積極的に見ている必要はありません。" #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "リソース節約のためプレビューを一時停止しました" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "通話アバターを表示" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "カメラを表示" @@ -29606,6 +29606,11 @@ msgstr "誰か" msgid "something" msgstr "何か" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "ストリームに何らかの制限がかかっているため、視聴者には要求されたよりも少ないフレームが表示されています。" + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "ストリーム" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "ストリームをバッファリング中" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "配信が終了しました" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "ストリームを非表示にしました" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "ストリームが追いついていません" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "不明なユーザー" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "不明なユーザー" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "マイクのミュートを解除" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "ストリームのミュートを解除" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "ご本人ですか?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "見る" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "視聴中" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "ストリームの読み込みに失敗しました" @@ -37352,7 +37362,7 @@ msgstr "このチャンネルでは発言できません" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "コミュニティは「見つける」に掲載されています。掲 msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "コミュニティを「見つける」に表示するには、メンバーが{minMemberCount}人以上必要です。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPUが追いつかないため、視聴者には指定したフレーム数よりも少ないフレームが表示されています。" + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "メッセージを更新できませんでした" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "最新のご購入は返金期間を過ぎています。請求に関する問題については、サポートにお問い合わせください。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "ネットワークが追いついていないため、視聴者にはリクエストしたよりも少ないフレームが表示されています。" + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "引き続きご利用いただくには、追加のスパム対策認証が必要です。" #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "ストリーミングは継続中" diff --git a/fluxer_app/src/features/i18n/locales/ko/messages.po b/fluxer_app/src/features/i18n/locales/ko/messages.po index f9f5c0e39..c132b8ad3 100644 --- a/fluxer_app/src/features/i18n/locales/ko/messages.po +++ b/fluxer_app/src/features/i18n/locales/ko/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {펼치기 (#줄)} other {펼치기 (#줄)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {# 행 확장} other {# 행 확장}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {#개의 다른 기기 확장} other {#개의 다른 기기 확장}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {통화 중} other {#명 통화 중}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {영상 통화 참여 (참여자 #명)} other {영상 통화 참여 (참여자 #명)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {#개의 스트림을 계속 시청하고 이 스트림을 추가합니다} other {#개의 스트림을 계속 시청하고 이 스트림을 추가합니다}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "사용자 {length}명" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length}명 시청 중" @@ -4666,7 +4666,7 @@ msgstr "백엔드 프리미엄 혜택 비활성화됨" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "배경" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "흐리게" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "흐림 강도" @@ -5547,12 +5547,12 @@ msgstr "카메라 기기" msgid "Camera effects" msgstr "카메라 효과" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "카메라 오류" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "카메라 숨김" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "카메라 제한에 도달했습니다. 이 채널에서는 최대 {voiceChannelCameraUserLimit}명까지 비디오를 공유할 수 있습니다." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "카메라 로딩 중" @@ -5590,7 +5590,7 @@ msgstr "카메라 권한 필요" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "카메라 미리보기" @@ -5692,7 +5692,7 @@ msgstr "여기에 파일을 올릴 수 없어요" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "취소" @@ -5940,7 +5940,7 @@ msgstr "가운데 정렬" msgid "Change avatar" msgstr "프로필 사진 변경" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "배경 변경" @@ -7466,7 +7466,7 @@ msgstr "채널 주제 접기" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "기기 접기" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "연결 볼륨 컨트롤" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "연결: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "장식용 구분선" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "데스크톱 자리 비움" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "데스크톱 기기" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "오류" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "오류 코드 {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "채널 삭제 실패" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "카메라를 켤 수 없습니다." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "시작 실패" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "카메라 미리보기를 시작하지 못했습니다. 카메라 권한을 확인해 주세요." @@ -14302,7 +14302,7 @@ msgstr "필터링" msgid "Filtering by {language}" msgstr "{language}(으)로 필터링" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "카메라 준비 중..." @@ -17003,7 +17003,7 @@ msgstr "계승됨" msgid "Inherited from {inheritedFromLabel}" msgstr "{inheritedFromLabel}에서 상속됨" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "카메라 초기화 중..." @@ -19991,7 +19991,7 @@ msgstr "미성년자 위험 노출, 부적절한 성인 콘텐츠, 원치 않는 #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "카메라 좌우 반전" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "오타" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "모바일 기기" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "사운드 음소거" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "스트림 오디오 음소거" @@ -20545,7 +20545,7 @@ msgstr "음소거됨" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "음소거됨" @@ -22678,7 +22678,7 @@ msgstr "운영체제" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "커뮤니티 및 채널별 미확인 배지 제어 기능을 사용하도록 설정합니다" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "카메라 최적화 중..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "참여 인원 제한" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "{participantDisplayName}님에 대한 참여자 옵션" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "미리보기 이미지는 {productName}에 의해 일시적으로 저장되어 전송되며 종단 간 암호화되지는 않습니다. 사용자는 여전히 연결 권한이 필요하지만 스트림을 적극적으로 시청할 필요는 없습니다." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "리소스 절약을 위해 미리보기가 일시 중지되었습니다" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "통화 아바타 표시" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "카메라 보기" @@ -29606,6 +29606,11 @@ msgstr "누군가" msgid "something" msgstr "무언가" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "무언가가 이 스트림을 제한하고 있어 시청자가 요청한 것보다 적은 프레임을 받고 있습니다." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "스트림" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "스트림 버퍼링 중" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "스트림 종료됨" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "화면 공유 숨김" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "스트림이 따라가지 못하고 있어요" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "알 수 없는 사용자" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "알 수 없는 사용자" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "마이크 음소거 해제" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "스트림 오디오 음소거 해제" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "본인 활동이 맞나요?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "시청하기" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "시청 중" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "시청 실패했습니다" @@ -37352,7 +37362,7 @@ msgstr "이 채널에서는 말할 수 없습니다" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "회원님의 커뮤니티가 디스커버리에 등록되었습니다. msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "커뮤니티가 검색에 표시되려면 최소 {minMemberCount}명의 멤버가 있어야 합니다." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU 성능이 부족하여 요청하신 것보다 적은 프레임이 시청자에게 전송됩니다." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "메시지를 업데이트하지 못했습니다" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "최근 구매 내역은 환불 기간이 지났습니다. 결제 관련 문의는 고객 지원팀에 문의하세요." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "네트워크 속도가 느려 시청자에게 요청한 것보다 적은 프레임이 전송되고 있습니다." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "계속하려면 추가 스팸 방지 확인이 필요합니다." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "회원님의 스트림은 계속 라이브 상태입니다" diff --git a/fluxer_app/src/features/i18n/locales/lt/messages.po b/fluxer_app/src/features/i18n/locales/lt/messages.po index 73ff82176..7db501e1d 100644 --- a/fluxer_app/src/features/i18n/locales/lt/messages.po +++ b/fluxer_app/src/features/i18n/locales/lt/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Išskleisti (# eilutę)} other {Išskleisti (# eilu msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Rodyti (# eilutę)} other {Rodyti (# eilutes)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Išskleisti # kitą įrenginį} other {Išskleisti # kitus įrenginius}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {skambina} other {# skambina}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Prisijungti prie vaizdo skambučio (# dalyvis)} other {Prisijungti prie vaizdo skambučio (# dalyviai)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Toliau žiūrėti # srautą ir pridėti šį} other {Toliau žiūrėti # srautus ir pridėti šį}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} naudotojai" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} žiūri" @@ -4666,7 +4666,7 @@ msgstr "Užpakalinės dalies \"premium\" privilegijos išjungtos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Fonas" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Sulieti" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Fono suliejimo stiprumas" @@ -5547,12 +5547,12 @@ msgstr "Kameros įrenginys" msgid "Camera effects" msgstr "Kameros efektai" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kameros klaida" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera paslėpta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Pasiekta kameros riba – šiame kanale vaizdo įrašą gali rodyti iki {voiceChannelCameraUserLimit} žmonių." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera įsijungia" @@ -5590,7 +5590,7 @@ msgstr "Reikalingas leidimas naudoti kamerą" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kameros peržiūra" @@ -5692,7 +5692,7 @@ msgstr "Čia negalima įkelti failų" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Atšaukti" @@ -5940,7 +5940,7 @@ msgstr "Centre" msgid "Change avatar" msgstr "Keisti avatarą" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Keisti foną" @@ -7466,7 +7466,7 @@ msgstr "Sutraukti kanalo temą" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Sutraukti įrenginius" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Ryšio garsumo valdikliai" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Ryšys: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekoratyvinis skirtukas" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Išjungtas kompiuteris" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Stalinis įrenginys" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Klaida" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "klaidos kodas {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Nepavyko ištrinti kanalo" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Nepavyko įjungti kameros." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Nepavyko paleisti" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Nepavyko paleisti kameros peržiūros. Patikrinkite kameros leidimus." @@ -14302,7 +14302,7 @@ msgstr "Filtravimas" msgid "Filtering by {language}" msgstr "Filtruojama pagal {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Kamera ruošiama..." @@ -17003,7 +17003,7 @@ msgstr "Paveldėta" msgid "Inherited from {inheritedFromLabel}" msgstr "Paveldėta iš {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Kamera paleidžiama..." @@ -19991,7 +19991,7 @@ msgstr "Nepilnamečiai pavojuje, netinkamoje vietoje esantis suaugusiesiems skir #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Atspindėti kamerą" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Neteisingai parašyti žodžiai" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobilusis įrenginys" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Nutildyti garsus" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Nutildyti srauto garsą" @@ -20545,7 +20545,7 @@ msgstr "nutildyta" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Nutildyta" @@ -22678,7 +22678,7 @@ msgstr "Operacinė sistema" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Įjunkite eksperimentines bendrų ir kanalų nenumatytų pranešimų atvaizdavimo valdymo funkcijas" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimizuojama kamera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Dalyvių skaičiaus limitas" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Dalyvio \"{participantDisplayName}\" parinktys" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Peržiūros vaizdai yra laikinai sauomi „{productName}“ ir naudojami jų perdavimui, jie nėra užšifruoti iš galo į galą. Žmonėms vis tiek reikia leidimo prisijungti, tačiau jiems nereikia aktyviai stebėti jūsų srautą." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Peržiūra pristabdyta siekiant taupyti išteklius" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Rodyti skambučio avatarus" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Rodyti kamerą" @@ -29606,6 +29606,11 @@ msgstr "kažkas" msgid "something" msgstr "kažkas" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Kažkas riboja šį srautą, todėl žiūrovai gauna mažiau kadrų nei prašėte." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Transliacija" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Srautas buferizuojamas" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transliacija baigėsi" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Srautas paslėptas" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Srautas neatsilieka" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "nežinomas naudotojas" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Nežinomas naudotojas" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Įjungti mikrofoną" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Įjungti srauto garsą" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Ar tai buvote jūs?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Žiūrėti" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Žiūri" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Žiūrėjimas nepavyko :(" @@ -37352,7 +37362,7 @@ msgstr "Negalite kalbėti šiame kanale" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Jūsų bendruomenė yra įtraukta į \"Atradimą\". Galite atnaujinti sa msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Jūsų bendruomenėje turi būti bent {minMemberCount} narių, kad ji būtų rodoma \"Atraskite\" skiltyje." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Jūsų procesorius nespėja, todėl žiūrovai gauna mažiau kadrų nei prašėte." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Nepavyko atnaujinti jūsų žinutės" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Jūsų naujausias pirkinys nebeatitinka pinigų grąžinimo termino. Dėl atsiskaitymo problemų susisiekite su palaikymo komanda." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Jūsų tinklas neatsilieka, todėl žiūrovai gauna mažiau kadrų nei prašėte." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Prieš tęsiant, jūsų registracijai reikalingas papildomas apsaugos nuo brukalų patikrinimas." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Jūsų transliacija vis dar aktyvi" diff --git a/fluxer_app/src/features/i18n/locales/nl/messages.po b/fluxer_app/src/features/i18n/locales/nl/messages.po index 1df3b85e5..1108b37d3 100644 --- a/fluxer_app/src/features/i18n/locales/nl/messages.po +++ b/fluxer_app/src/features/i18n/locales/nl/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Uitvouwen (# regel)} other {Uitvouwen (# regels)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Toon (# rij)} other {Toon (# rijen)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Vouw # ander apparaat uit} other {Vouw # andere apparaten uit}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {In gesprek} other {# in gesprek}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Deelnemen aan videogesprek (# deelnemer)} other {Deelnemen aan videogesprek (# deelnemers)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Blijf # stream bekijken en voeg deze toe} other {Blijf # streams bekijken en voeg deze toe}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} gebruikers" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} kijkt mee" @@ -4666,7 +4666,7 @@ msgstr "Premium-voordelen van backend uitgeschakeld" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Achtergrond" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Vervagen" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Sterkte van de achtergrondvervaging" @@ -5547,12 +5547,12 @@ msgstr "Camera-apparaat" msgid "Camera effects" msgstr "Camera-effecten" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Camerafout" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Camera verborgen" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Maximale aantal camera's bereikt: maximaal {voiceChannelCameraUserLimit} personen kunnen video delen in dit kanaal." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Camera wordt geladen" @@ -5590,7 +5590,7 @@ msgstr "Cameratoegang vereist" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Cameravoorbeeld" @@ -5692,7 +5692,7 @@ msgstr "Kan hier geen bestanden uploaden" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Annuleren" @@ -5940,7 +5940,7 @@ msgstr "Gecentreerd" msgid "Change avatar" msgstr "Avatar wijzigen" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Achtergrond wijzigen" @@ -7466,7 +7466,7 @@ msgstr "Kanaalonderwerp inklappen" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Apparaten samenvouwen" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Volumeregeling voor verbindingen" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Verbinding: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Decoratieve scheidingslijn" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop afwezig" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Desktopapparaat" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Fout" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "foutcode {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kanaal verwijderen mislukt" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Camera inschakelen mislukt." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Starten mislukt" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Kan cameravoorbeeld niet starten. Controleer je cameramachtigingen." @@ -14302,7 +14302,7 @@ msgstr "Filteren" msgid "Filtering by {language}" msgstr "Filteren op {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Camera wordt gestart..." @@ -17003,7 +17003,7 @@ msgstr "Overgenomen" msgid "Inherited from {inheritedFromLabel}" msgstr "Overgenomen van {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Camera initialiseren..." @@ -19991,7 +19991,7 @@ msgstr "Minderjarigen in gevaar, ongepaste inhoud voor volwassenen of ongewenst #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Camera spiegelen" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Verkeerd gespelde woorden" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobiel apparaat" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Geluiden dempen" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Audiostream dempen" @@ -20545,7 +20545,7 @@ msgstr "stil" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Gedempt" @@ -22678,7 +22678,7 @@ msgstr "Besturingssysteem" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Schakel experimentele instellingen in voor ongelezen badges per community en per kanaal" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Camera optimaliseren..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Deelnemerslimiet" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Deelnemeropties voor {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Voorbeeldafbeeldingen worden tijdelijk opgeslagen door {productName} voor de verzending en zijn niet volledig versleuteld. Gebruikers hebben nog steeds toestemming nodig om verbinding te maken, maar ze hoeven je stream niet actief te bekijken." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Voorbeeldweergave gepauzeerd om bronnen te besparen" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Belavatars tonen" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Camera tonen" @@ -29606,6 +29606,11 @@ msgstr "iemand" msgid "something" msgstr "iets" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Er is iets dat deze stream beperkt, dus kijkers krijgen minder frames dan je hebt aangevraagd." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Stream" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Stream buffert" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Stream beëindigd" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream verborgen" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Stream loopt achter" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "onbekende gebruiker" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Onbekende gebruiker" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Microfoon inschakelen" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Geluid van stream inschakelen" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Was jij dit?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Kijken" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Kijkt" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Het bekijken is mislukt :(" @@ -37352,7 +37362,7 @@ msgstr "Je kunt niet spreken in dit kanaal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Je community staat in Ontdekken. Je kunt je vermelding hieronder bijwerk msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Je community moet ten minste {minMemberCount} leden hebben voordat deze kan worden weergegeven in Ontdekken." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Uw CPU kan het niet bijbenen, dus kijkers krijgen minder frames dan u hebt aangevraagd." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Je bericht is niet bijgewerkt" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Je meest recente aankoop valt niet meer binnen de restitutieperiode. Neem contact op met de ondersteuning voor factureringsproblemen." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Je netwerk kan het niet bijbenen, dus kijkers krijgen minder frames dan je hebt aangevraagd." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Je registratie heeft een extra antispamcontrole nodig voordat je verder kunt gaan." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Je stream is nog steeds live" diff --git a/fluxer_app/src/features/i18n/locales/no/messages.po b/fluxer_app/src/features/i18n/locales/no/messages.po index b1856f52d..a13907533 100644 --- a/fluxer_app/src/features/i18n/locales/no/messages.po +++ b/fluxer_app/src/features/i18n/locales/no/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Vis (# linje)} other {Vis (# linjer)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Vis flere (# rad)} other {Vis flere (# rader)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Vis # annen enhet} other {Vis # andre enheter}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {I samtale} other {# i samtale}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Bli med i videosamtale (# deltaker)} other {Bli med i videosamtale (# deltakere)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Fortsett å se # strøm og legg til denne} other {Fortsett å se # strømmer og legg til denne}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} brukere" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} ser på" @@ -4666,7 +4666,7 @@ msgstr "Premiumfordeler for backend deaktivert" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Bakgrunn" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Gjør uskarp" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Uskarphetsstyrke" @@ -5547,12 +5547,12 @@ msgstr "Kameraenhet" msgid "Camera effects" msgstr "Kameraeffekter" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamerafeil" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera skjult" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Kameragrense nådd – opptil {voiceChannelCameraUserLimit} personer kan dele video i denne kanalen." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera laster inn" @@ -5590,7 +5590,7 @@ msgstr "Kameratillatelse kreves" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Forhåndsvisning av kamera" @@ -5692,7 +5692,7 @@ msgstr "Kan ikke laste opp filer her" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Avbryt" @@ -5940,7 +5940,7 @@ msgstr "Midtstilt" msgid "Change avatar" msgstr "Endre profilbilde" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Endre bakgrunn" @@ -7466,7 +7466,7 @@ msgstr "Skjul kanalemne" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Skjul enheter" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Volumkontroller for tilkobling" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Tilkobling: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekorativ skillelinje" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Borte (datamaskin)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Skrivebordsenhet" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Feil" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "feilkode {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kunne ikke slette kanal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Klarte ikke å aktivere kameraet." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Kunne ikke starte" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Klarte ikke å starte kameraforhåndsvisning. Sjekk kameratillatelsene dine." @@ -14302,7 +14302,7 @@ msgstr "Filtrering" msgid "Filtering by {language}" msgstr "Filtrerer etter {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Fullfører kamera..." @@ -17003,7 +17003,7 @@ msgstr "Arvet" msgid "Inherited from {inheritedFromLabel}" msgstr "Arvet fra {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initialiserer kamera ..." @@ -19991,7 +19991,7 @@ msgstr "Mindreårige i fare, upassende innhold eller uønsket oppførsel." #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Speil kamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Feilstavede ord" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobil enhet" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Dempe lyder" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Demp strømmelyd" @@ -20545,7 +20545,7 @@ msgstr "dempet" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Dempet" @@ -22678,7 +22678,7 @@ msgstr "Operativsystem" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Aktiver eksperimentelle innstillinger for å vise antall uleste meldinger per kanal og fellesskap" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimaliserer kamera ..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Antall deltakere" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Alternativer for {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Forhåndsvisningsbilder lagres midlertidig av {productName} for visning og er ikke ende-til-ende-kryptert. Folk trenger fortsatt tillatelse til å koble seg til, men de trenger ikke aktivt å se på strømmen din." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Forhåndsvisning satt på pause for å spare ressurser" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Vis anropsavatarer" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Vis kamera" @@ -29606,6 +29606,11 @@ msgstr "noen" msgid "something" msgstr "noe" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Noe begrenser denne strømmen, så seere får færre bilder enn du ba om." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Direktesending" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Strømmen bufres" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Strømmen er avsluttet" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Strøm skjult" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Strømmen henger ikke med" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "ukjent bruker" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Ukjent bruker" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Slå på mikrofon" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Slå på lyd for strømmen" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Var dette deg?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Se på" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Ser på" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Kunne ikke vise:(" @@ -37352,7 +37362,7 @@ msgstr "Du kan ikke snakke i denne kanalen" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Fellesskapet ditt er oppført i Oppdag. Du kan oppdatere oppføringsdeta msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Fellesskapet ditt må ha minst {minMemberCount} medlemmer før det kan vises i Oppdage." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU-en din klarer ikke å holde tritt, så seerne får færre bilder per sekund enn du ba om." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Meldingen din ble ikke oppdatert" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Ditt siste kjøp er ikke lenger innenfor refusjonsperioden. Kontakt kundestøtte for faktureringsproblemer." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Nettverket ditt klarer ikke å holde tritt, så seere får færre bilder enn du ba om." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Registreringen din krever en ekstra antispam-sjekk før du kan fortsette." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Strømmen din er fortsatt aktiv" diff --git a/fluxer_app/src/features/i18n/locales/pl/messages.po b/fluxer_app/src/features/i18n/locales/pl/messages.po index a94390a28..af5576fd9 100644 --- a/fluxer_app/src/features/i18n/locales/pl/messages.po +++ b/fluxer_app/src/features/i18n/locales/pl/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Rozwiń (1 wiersz)} few {Rozwiń (# wiersze)} many msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Rozwiń (# wiersz)} other {Rozwiń (# wiersze)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Rozwiń # inne urządzenie} other {Rozwiń # inne urządzenia}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {W rozmowie} few {# w rozmowie} many {# w rozmowie} msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Dołącz do rozmowy wideo (# uczestnik)} few {Dołącz do rozmowy wideo (# uczestników)} many {Dołącz do rozmowy wideo (# uczestników)} other {Dołącz do rozmowy wideo (# uczestników)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "Kontynuuj oglądanie {count, plural, one {# transmisji} few {# transmisji} many {# transmisji} other {# transmisji}} i dodaj tę" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} użytkowników" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} oglądających" @@ -4666,7 +4666,7 @@ msgstr "Funkcje premium backendu wyłączone" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Tło" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Rozmycie" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Siła rozmycia" @@ -5547,12 +5547,12 @@ msgstr "Urządzenie aparatu" msgid "Camera effects" msgstr "Efekty aparatu" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Błąd aparatu" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera ukryta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Osiągnięto limit kamer — maksymalnie {voiceChannelCameraUserLimit} osób może udostępniać obraz z kamery na tym kanale." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Wideo się ładuje" @@ -5590,7 +5590,7 @@ msgstr "Wymagane pozwolenie na dostęp do kamery" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Podgląd kamery" @@ -5692,7 +5692,7 @@ msgstr "Nie można tu przesyłać plików" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Anuluj" @@ -5940,7 +5940,7 @@ msgstr "Wyśrodkowano" msgid "Change avatar" msgstr "Zmień awatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Zmień tło" @@ -7466,7 +7466,7 @@ msgstr "Zwiń temat kanału" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Zwiń urządzenia" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Sterowanie głośnością połączenia" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Połączenie: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Ozdobny separator" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Poza komputerem" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Urządzenie stacjonarne" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Błąd" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "kod błędu {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Nie udało się usunąć kanału" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Nie udało się włączyć kamery." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Nie udało się uruchomić" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Nie udało się uruchomić podglądu kamery. Sprawdź uprawnienia kamery." @@ -14302,7 +14302,7 @@ msgstr "Filtrowanie" msgid "Filtering by {language}" msgstr "Filtrowanie według {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizowanie ustawień kamery..." @@ -17003,7 +17003,7 @@ msgstr "Odziedziczone" msgid "Inherited from {inheritedFromLabel}" msgstr "Odziedziczone po {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Inicjowanie kamery..." @@ -19991,7 +19991,7 @@ msgstr "Nieletni w niebezpieczeństwie, treści dla dorosłych w niewłaściwym #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Odbij obraz z kamery" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Błędnie napisane słowa" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Urządzenie mobilne" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Wycisz dźwięki" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Wycisz dźwięk transmisji" @@ -20545,7 +20545,7 @@ msgstr "wyciszone" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Wyciszono" @@ -22678,7 +22678,7 @@ msgstr "System operacyjny" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Włącz eksperymentalne opcje kontrolowania liczby nieprzeczytanych wiadomości dla każdej społeczności i każdego kanału" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optymalizowanie aparatu..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limit uczestników" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opcje uczestnika: {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Obrazy podglądu są tymczasowo przechowywane przez {productName} w celu ich udostępnienia i nie są szyfrowane od końca do końca. Nadal wymagana jest zgoda na połączenie, ale nie muszą aktywnie oglądać Twojego strumienia." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Podgląd wstrzymany w celu oszczędzania zasobów" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Pokaż awatary połączeń" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Pokaż kamerę" @@ -29606,6 +29606,11 @@ msgstr "ktoś" msgid "something" msgstr "coś" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Coś ogranicza ten strumień, więc widzowie otrzymują mniej klatek niż żądano." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Transmisja" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Buforowanie strumienia" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transmisja zakończona" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Ukryto strumień" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Strumień nie nadąża" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "nieznany użytkownik" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Nieznany użytkownik" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Włącz mikrofon" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Włącz dźwięk strumienia" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Czy to Ty?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Obserwuj" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Ogląda" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Wystąpił błąd podczas ładowania strumienia" @@ -37352,7 +37362,7 @@ msgstr "Nie możesz mówić na tym kanale" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Twoja społeczność jest widoczna w Odkrywaniu. Możesz zaktualizować msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Twoja społeczność musi mieć co najmniej {minMemberCount} członków, zanim będzie mogła zostać wyświetlona w Odkrywaniu." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Twój procesor nie nadąża, więc widzowie otrzymują mniej klatek, niż żądałeś." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Nie udało się zaktualizować wiadomości" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Twój ostatni zakup nie kwalifikuje się już do zwrotu. Skontaktuj się z pomocą techniczną w przypadku problemów z płatnościami." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Twoja sieć nie nadąża, więc widzowie otrzymują mniej klatek niż żądano." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Zanim przejdziesz dalej, musimy przeprowadzić dodatkową weryfikację anty-spamową Twojej rejestracji." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Twój strumień jest nadal aktywny" 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 c0858fd5c..03fce338c 100644 --- a/fluxer_app/src/features/i18n/locales/pt-BR/messages.po +++ b/fluxer_app/src/features/i18n/locales/pt-BR/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Expandir (# linha)} other {Expandir (# linhas)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Expandir (# linha)} other {Expandir (# linhas)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Expandir mais # dispositivo} other {Expandir mais # dispositivos}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Em chamada} other {# em chamada}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Entrar na chamada de vídeo (# participante)} other {Entrar na chamada de vídeo (# participantes)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Continuar assistindo a # transmissão e adicionar esta} other {Continuar assistindo a # transmissões e adicionar esta}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} usuários" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} assistindo" @@ -4666,7 +4666,7 @@ msgstr "Benefícios premium do backend desativados" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Plano de fundo" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Desfoque" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensidade do desfoque" @@ -5547,12 +5547,12 @@ msgstr "Câmera" msgid "Camera effects" msgstr "Efeitos de câmera" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Erro na câmera" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Câmera oculta" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Limite de câmera atingido — até {voiceChannelCameraUserLimit} pessoas podem compartilhar vídeo neste canal." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Carregando câmera" @@ -5590,7 +5590,7 @@ msgstr "Permissão da câmera necessária" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Prévia da câmera" @@ -5692,7 +5692,7 @@ msgstr "Não é possível enviar arquivos aqui" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Cancelar" @@ -5940,7 +5940,7 @@ msgstr "Centralizado" msgid "Change avatar" msgstr "Mudar foto do perfil" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Mudar plano de fundo" @@ -7466,7 +7466,7 @@ msgstr "Recolher tópico do canal" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Recolher dispositivos" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Controles de volume da conexão" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Conexão: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Divisor decorativo" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Ausente no computador" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dispositivo desktop" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Erro" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "código de erro {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Não foi possível excluir o canal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Não foi possível ativar a câmera." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Falha ao iniciar" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Falha ao iniciar a prévia da câmera. Verifique as permissões da sua câmera." @@ -14302,7 +14302,7 @@ msgstr "Filtragem" msgid "Filtering by {language}" msgstr "Filtrando por {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Finalizando câmera..." @@ -17003,7 +17003,7 @@ msgstr "Herdado" msgid "Inherited from {inheritedFromLabel}" msgstr "Herdado de {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Iniciando câmera..." @@ -19991,7 +19991,7 @@ msgstr "Menores em risco, conteúdo adulto em local inadequado ou conduta indese #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Espelhar câmera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Palavras com erro de digitação" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Celular" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Silenciar sons" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Silenciar áudio da transmissão" @@ -20545,7 +20545,7 @@ msgstr "silenciado" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "mudo" @@ -22678,7 +22678,7 @@ msgstr "Sistema operacional" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Ative o controle de notificações não lidas por comunidade e canal (recurso experimental)" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Otimizando câmera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limite de participantes" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opções do participante para {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "As imagens de visualização são armazenadas temporariamente pelo {productName} para exibição e não são criptografadas de ponta a ponta. As pessoas ainda precisam de permissão para se conectar, mas não precisam estar assistindo ativamente à sua transmissão." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Prévia pausada para economizar recursos" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Mostrar avatares da chamada" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Mostrar câmera" @@ -29606,6 +29606,11 @@ msgstr "alguém" msgid "something" msgstr "algo" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Algo está limitando esta transmissão, então os espectadores estão recebendo menos quadros do que você solicitou." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Transmissão" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Bufferizando transmissão" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transmissão encerrada" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Transmissão oculta" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "O stream não está acompanhando" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "usuário desconhecido" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Usuário desconhecido" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Ativar microfone" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Reativar áudio da transmissão" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Foi você?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Assistir" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Assistindo" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Falha ao assistir :(" @@ -37352,7 +37362,7 @@ msgstr "Você não pode falar neste canal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Sua comunidade está na aba Descobrir. Você pode atualizar os detalhes msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Sua comunidade precisa de pelo menos {minMemberCount} membros para aparecer na Descoberta." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Sua CPU não está dando conta, então os espectadores estão recebendo menos quadros do que você pediu." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Sua mensagem não foi atualizada" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Sua compra mais recente não está mais dentro do período de reembolso. Entre em contato com o suporte para problemas de cobrança." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Sua rede não está acompanhando, então os espectadores estão recebendo menos quadros do que você solicitou." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Seu cadastro precisa de uma verificação antispam extra antes de você continuar." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Sua transmissão ainda está ativa" diff --git a/fluxer_app/src/features/i18n/locales/ro/messages.po b/fluxer_app/src/features/i18n/locales/ro/messages.po index 7fb0c5be0..6be609916 100644 --- a/fluxer_app/src/features/i18n/locales/ro/messages.po +++ b/fluxer_app/src/features/i18n/locales/ro/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Extinde (o linie)} other {Extinde (# linii)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Extindeți (# rândul)} other {Extindeți (# rânduri)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Extinde încă un dispozitiv} other {Extinde încă # dispozitive}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {În apel} other {# în apel}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Alăturați-vă apelului video (un participant)} other {Alăturați-vă apelului video (# participanți)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Continuă să urmărești # stream și adaugă-l pe acesta} other {Continuă să urmărești # streamuri și adaugă-l pe acesta}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} utilizatori" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} urmăresc" @@ -4666,7 +4666,7 @@ msgstr "Avantajele premium de backend sunt dezactivate" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Fundal" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Estompare" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Intensitatea efectului de estompare" @@ -5547,12 +5547,12 @@ msgstr "Cameră" msgid "Camera effects" msgstr "Efecte cameră" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Eroare cameră" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Cameră ascunsă" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "S-a atins limita pentru camere — maximum {voiceChannelCameraUserLimit} persoane pot partaja video în acest canal." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Camera se încarcă" @@ -5590,7 +5590,7 @@ msgstr "Este necesară permisiunea pentru cameră" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Previzualizare cameră" @@ -5692,7 +5692,7 @@ msgstr "Nu se pot încărca fișiere aici" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Anulează" @@ -5940,7 +5940,7 @@ msgstr "Centrat" msgid "Change avatar" msgstr "Schimbă avatarul" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Schimbă fundalul" @@ -7466,7 +7466,7 @@ msgstr "Restrânge subiectul canalului" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Restrânge dispozitivele" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Controale volum conexiune" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Conexiune: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Separator decorativ" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Desktop inactiv" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dispozitiv desktop" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Eroare" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "cod de eroare {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Ștergerea canalului nu a reușit" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Activarea camerei a eșuat." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Nu s-a putut porni" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Nu s-a putut porni previzualizarea camerei. Verifică permisiunile camerei tale." @@ -14302,7 +14302,7 @@ msgstr "Filtrare" msgid "Filtering by {language}" msgstr "Filtrare după {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Se finalizează camera..." @@ -17003,7 +17003,7 @@ msgstr "Moștenit" msgid "Inherited from {inheritedFromLabel}" msgstr "Moștenit de la {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Se inițializează camera..." @@ -19991,7 +19991,7 @@ msgstr "Minori în pericol, conținut matur în locuri nepotrivite sau comportam #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Oglindire cameră" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Cuvinte scrise greșit" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Dispozitiv mobil" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Dezactivează sunetele" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Dezactivează sunetul fluxului" @@ -20545,7 +20545,7 @@ msgstr "dezactivat" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Dezactivat" @@ -22678,7 +22678,7 @@ msgstr "Sistem de operare" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Activează opțiunile experimentale pentru controlul indicatorilor de mesaje necitite, la nivel de comunitate și canal" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Se optimizează camera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Limită participanți" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Opțiuni participant pentru {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Imaginile de previzualizare sunt stocate temporar de către {productName} pentru a fi afișate și nu sunt criptate cap la cap. Persoanele au nevoie totuși de permisiune pentru a se conecta, dar nu trebuie să urmărească activ fluxul video." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Previzualizare întreruptă pentru a economisi resurse" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Afișează avatarele apelului" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Afișează camera" @@ -29606,6 +29606,11 @@ msgstr "cineva" msgid "something" msgstr "ceva" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Ceva limitează acest flux, așa că spectatorii primesc mai puține cadre decât ați solicitat." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Flux live" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Se încarcă fluxul" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Transmisiune încheiată" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Flux ascuns" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Fluxul nu ține pasul" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "utilizator necunoscut" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Utilizator necunoscut" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Activează microfonul" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Activează sunetul fluxului" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Tu ai fost?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Urmărește" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Urmărește" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Vizualizarea a eșuat :(" @@ -37352,7 +37362,7 @@ msgstr "Nu poți vorbi pe acest canal" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Comunitatea ta este listată în Descoperire. Poți actualiza detaliile msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Comunitatea ta are nevoie de cel puțin {minMemberCount} membri pentru a putea fi listată în Descoperire." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU-ul tău nu face față, așa că spectatorii primesc mai puține cadre decât ai solicitat." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Mesajul tău nu a fost actualizat" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Cea mai recentă achiziție nu mai este în perioada de rambursare. Contactează asistența pentru probleme de facturare." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Rețeaua ta nu face față, așa că spectatorii primesc mai puține cadre decât ai solicitat." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Înregistrarea ta necesită o verificare anti-spam suplimentară înainte de a putea continua." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Streamul tău este încă live" diff --git a/fluxer_app/src/features/i18n/locales/ru/messages.po b/fluxer_app/src/features/i18n/locales/ru/messages.po index 4945ff72b..8fda5d98e 100644 --- a/fluxer_app/src/features/i18n/locales/ru/messages.po +++ b/fluxer_app/src/features/i18n/locales/ru/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Развернуть (# строка)} few {Раз msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Развернуть (# строку)} other {Развернуть (# строки)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Развернуть ещё # устройство} other {Развернуть ещё # устройства}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {В звонке} few {# в звонке} many {# в msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Присоединиться к видеозвонку (1 участник)} few {Присоединиться к видеозвонку ({count} участника)} many {Присоединиться к видеозвонку ({count} участников)} other {Присоединиться к видеозвонку ({count} участников)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Продолжить смотреть # трансляцию и добавить эту} few {Продолжить смотреть # трансляции и добавить эту} many {Продолжить смотреть # трансляций и добавить эту} other {Продолжить смотреть # трансляций и добавить эту}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} пользователя(-ей)" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} смотрят" @@ -4666,7 +4666,7 @@ msgstr "Преимущества Plutonium для бэкенда отключе #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Фон" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Размытие" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Интенсивность размытия" @@ -5547,12 +5547,12 @@ msgstr "Камера" msgid "Camera effects" msgstr "Эффекты камеры" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Ошибка камеры" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Камера скрыта" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Достигнут лимит камер — в этом канале видео могут транслировать до {voiceChannelCameraUserLimit} пользователей." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Загрузка камеры" @@ -5590,7 +5590,7 @@ msgstr "Требуется доступ к камере" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Предпросмотр камеры" @@ -5692,7 +5692,7 @@ msgstr "Не удается загрузить файлы сюда" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Отмена" @@ -5940,7 +5940,7 @@ msgstr "По центру" msgid "Change avatar" msgstr "Сменить фото профиля" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Изменить фон" @@ -7466,7 +7466,7 @@ msgstr "Свернуть тему канала" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Свернуть устройства" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Громкость соединения" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Подключение: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Декоративный разделитель" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Нет на месте (компьютер)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Компьютер" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Ошибка" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "код ошибки {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Не удалось удалить канал" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Не удалось включить камеру." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Не удалось запустить" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Не удалось запустить предварительный просмотр с камеры. Проверьте разрешения камеры." @@ -14302,7 +14302,7 @@ msgstr "Фильтрация" msgid "Filtering by {language}" msgstr "Фильтр по {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Завершение настройки камеры..." @@ -17003,7 +17003,7 @@ msgstr "Унаследовано" msgid "Inherited from {inheritedFromLabel}" msgstr "Унаследовано от {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Инициализация камеры..." @@ -19991,7 +19991,7 @@ msgstr "Несовершеннолетние в опасности, неприе #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Зеркальное отображение камеры" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Опечатки" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Мобильное устройство" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Отключить звуки" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Отключить звук трансляции" @@ -20545,7 +20545,7 @@ msgstr "без звука" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Выкл. микрофон" @@ -22678,7 +22678,7 @@ msgstr "Операционная система" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Включить экспериментальные настройки для отображения значков непрочитанных сообщений в отдельных сообществах и каналах" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Оптимизация камеры..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Лимит участников" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Параметры участника: {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Эскизы предварительного просмотра хранятся в {productName} временно для передачи и не зашифрованы сквозным шифрованием. Пользователям все равно нужно разрешение на подключение, но им не обязательно активно смотреть вашу трансляцию." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Предпросмотр приостановлен для экономии ресурсов" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Показывать аватары в звонке" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Показать камеру" @@ -29606,6 +29606,11 @@ msgstr "кто-то" msgid "something" msgstr "что-то" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Что-то ограничивает этот поток, поэтому зрители получают меньше кадров, чем вы запросили." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Трансляция" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Буферизация трансляции" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Трансляция завершена" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Трансляция скрыта" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Поток не успевает" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "неизвестный пользователь" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Неизвестный пользователь" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Включить микрофон" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Включить звук трансляции" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Это были вы?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Смотреть" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Смотрит" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Просмотр не удался :(" @@ -37352,7 +37362,7 @@ msgstr "Вы не можете говорить в этом канале" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Ваше сообщество отображается в разделе msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "В вашем сообществе должно быть не менее {minMemberCount} участников, прежде чем оно сможет появиться в разделе \"Интересное\"." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ваш процессор не справляется, поэтому зрители получают меньше кадров, чем вы запросили." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Не удалось обновить сообщение" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "С момента вашей последней покупки прошло слишком много времени, чтобы оформить возврат. Обратитесь в службу поддержки по вопросам оплаты." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ваша сеть не справляется, поэтому зрители получают меньше кадров, чем вы запросили." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Чтобы продолжить, нужно пройти дополнительную антиспам-проверку." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Ваша трансляция продолжается" 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 b121c55cd..812d9c7c1 100644 --- a/fluxer_app/src/features/i18n/locales/sv-SE/messages.po +++ b/fluxer_app/src/features/i18n/locales/sv-SE/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Visa fler (# rad)} other {Visa fler (# rader)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Visa (# rad)} other {Visa (# rader)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Visa # annan enhet} other {Visa # andra enheter}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {I samtal} other {# i samtal}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Gå med i videosamtal (# deltagare)} other {Gå med i videosamtal (# deltagare)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "Fortsätt titta på {count, plural, one {# stream} other {# streams}} och lägg till den här" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} användare" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} tittar" @@ -4666,7 +4666,7 @@ msgstr "Backend-premiumförmåner inaktiverade" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Bakgrund" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Oskärpa" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Oskärpa" @@ -5547,12 +5547,12 @@ msgstr "Kameraenhet" msgid "Camera effects" msgstr "Kameraeffekter" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamerafel" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kameran dold" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Antalet kameror har nått gränsen – upp till {voiceChannelCameraUserLimit} personer kan dela video i den här kanalen." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera laddas" @@ -5590,7 +5590,7 @@ msgstr "Kamerabehörighet krävs" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kameraförhandsvisning" @@ -5692,7 +5692,7 @@ msgstr "Kan inte ladda upp filer här" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Avbryt" @@ -5940,7 +5940,7 @@ msgstr "Centrerad" msgid "Change avatar" msgstr "Ändra avatar" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Ändra bakgrund" @@ -7466,7 +7466,7 @@ msgstr "Fäll ihop kanalämne" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Fäll ihop enheter" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Volymkontroller för anslutning" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Anslutning: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekorativ avdelare" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Borta från datorn" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Dator" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Ett fel uppstod" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "Felkod {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kunde inte radera kanal" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Kunde inte aktivera kameran." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Kunde inte starta" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Det gick inte att starta kameraförhandsvisningen. Kontrollera dina kamerabehörigheter." @@ -14302,7 +14302,7 @@ msgstr "Filtrering" msgid "Filtering by {language}" msgstr "Filtrerar efter {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Slutför kamera..." @@ -17003,7 +17003,7 @@ msgstr "Ärvd" msgid "Inherited from {inheritedFromLabel}" msgstr "Ärvt från {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Initierar kamera..." @@ -19991,7 +19991,7 @@ msgstr "Minderåriga i riskzonen, olämpligt innehåll på fel plats eller oöns #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Spegelvänd kamera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Felstavade ord" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobil enhet" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Stäng av ljud" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Stäng av strömmande ljud" @@ -20545,7 +20545,7 @@ msgstr "tystad" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Avstängd" @@ -22678,7 +22678,7 @@ msgstr "Operativsystem" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Aktivera experimentella inställningar för att visa olästa meddelanden per grupp och kanal" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Optimerar kamera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Deltagargräns" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Alternativ för {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Förhandsvisningsbilder lagras tillfälligt av {productName} för att kunna visas och är inte krypterade från slutpunkt till slutpunkt. Användare behöver fortfarande behörighet för att ansluta, men de behöver inte aktivt titta på din ström." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Förhandsvisningen pausad för att spara resurser" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Visa samtalsavatarer" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Visa kamera" @@ -29606,6 +29606,11 @@ msgstr "någon" msgid "something" msgstr "något" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Något begränsar den här strömmen, så tittare får färre bildrutor än du begärde." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Ström" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Buffrar ström" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Streamen avslutades" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Stream dold" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Strömmen hänger inte med" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "okänd användare" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Okänd användare" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Slå på mikrofonljudet" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Slå på ljudet för strömmen" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Var det du?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Titta" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Tittar" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Visning misslyckades :(" @@ -37352,7 +37362,7 @@ msgstr "Du kan inte prata i den här kanalen" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Din community visas i Upptäck. Du kan uppdatera dina uppgifter nedan el msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Din community behöver minst {minMemberCount} medlemmar innan den kan listas i Upptäck." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Din CPU hänger inte med, så tittarna får färre bildrutor än du begärde." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Ditt meddelande uppdaterades inte" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Ditt senaste köp ligger inte längre inom återbetalningsperioden. Kontakta supporten om du har problem med faktureringen." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ditt nätverk hänger inte med, så tittarna får färre bilder än du begärde." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Din registrering behöver en extra antispamkontroll innan du kan fortsätta." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Din stream är fortfarande aktiv" diff --git a/fluxer_app/src/features/i18n/locales/th/messages.po b/fluxer_app/src/features/i18n/locales/th/messages.po index f60d58b21..87a0240ec 100644 --- a/fluxer_app/src/features/i18n/locales/th/messages.po +++ b/fluxer_app/src/features/i18n/locales/th/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {ขยาย (# บรรทัด)} other {ขย msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {ขยาย (# แถว)} other {ขยาย (# แถว)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {ขยายอุปกรณ์อื่น # เครื่อง} other {ขยายอุปกรณ์อื่น # เครื่อง}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {กำลังคุยสาย} other {# คน msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {เข้าร่วมวิดีโอคอล (# ผู้เข้าร่วม)} other {เข้าร่วมวิดีโอคอล (# ผู้เข้าร่วม)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "ดูสตรีม # {count, plural, one {} other {อื่นๆ }}ต่อไปและเพิ่มสตรีมนี้" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} ผู้ใช้" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "มีคนดู {length} คน" @@ -4666,7 +4666,7 @@ msgstr "ปิดใช้งานสิทธิประโยชน์พร #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "พื้นหลัง" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "เบลอ" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "ระดับความเบลอ" @@ -5547,12 +5547,12 @@ msgstr "อุปกรณ์กล้อง" msgid "Camera effects" msgstr "เอฟเฟกต์กล้อง" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "กล้องมีข้อผิดพลาด" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "ซ่อนกล้องแล้ว" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "ถึงจำนวนผู้ใช้สูงสุดที่สามารถแชร์วิดีโอในช่องนี้ได้แล้ว (สูงสุด {voiceChannelCameraUserLimit} คน)" #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "กำลังโหลดกล้อง" @@ -5590,7 +5590,7 @@ msgstr "ต้องอนุญาตการเข้าถึงกล้อ #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "ตัวอย่างกล้อง" @@ -5692,7 +5692,7 @@ msgstr "อัปโหลดไฟล์ที่นี่ไม่ได้" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "ยกเลิก" @@ -5940,7 +5940,7 @@ msgstr "จัดกึ่งกลาง" msgid "Change avatar" msgstr "เปลี่ยนรูปโปรไฟล์" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "เปลี่ยนพื้นหลัง" @@ -7466,7 +7466,7 @@ msgstr "ยุบหัวข้อช่อง" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "ยุบอุปกรณ์" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "การควบคุมระดับเสียงการเชื่อมต่อ" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "การเชื่อมต่อ: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "เส้นแบ่งตกแต่ง" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "ไม่อยู่ (บนเดสก์ท็อป)" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "อุปกรณ์เดสก์ท็อป" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "เกิดข้อผิดพลาด" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "รหัสข้อผิดพลาด {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "ลบช่องไม่สำเร็จ" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "ไม่สามารถเปิดกล้องได้" @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "เริ่มต้นไม่ได้" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "ไม่สามารถเริ่มแสดงตัวอย่างกล้องได้ โปรดตรวจสอบสิทธิ์การเข้าถึงกล้องของคุณ" @@ -14302,7 +14302,7 @@ msgstr "การกรอง" msgid "Filtering by {language}" msgstr "กรองตาม{language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "กำลังเตรียมกล้อง..." @@ -17003,7 +17003,7 @@ msgstr "รับช่วงต่อ" msgid "Inherited from {inheritedFromLabel}" msgstr "รับช่วงต่อจาก {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "กำลังเริ่มต้นกล้อง..." @@ -19991,7 +19991,7 @@ msgstr "ผู้เยาว์ตกอยู่ในความเสี่ #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "กลับด้านกล้อง" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "คำสะกดผิด" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "อุปกรณ์มือถือ" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "ปิดเสียง" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "ปิดเสียงสตรีม" @@ -20545,7 +20545,7 @@ msgstr "ปิดเสียง" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "ปิดเสียง" @@ -22678,7 +22678,7 @@ msgstr "ระบบปฏิบัติการ" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "เปิดใช้งานการควบคุมจำนวนข้อความที่ยังไม่ได้อ่านในแต่ละกลุ่มและช่องทดลองใช้" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "กำลังปรับปรุงกล้อง..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "จำกัดจำนวนผู้เข้าร่วม" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "ตัวเลือกผู้เข้าร่วมสำหรับ {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "รูปภาพตัวอย่างจะถูกจัดเก็บโดย {productName} ชั่วคราวเพื่อส่ง และจะไม่ได้รับการเข้ารหัสแบบ end-to-end ผู้ใช้ยังคงต้องได้รับอนุญาตในการเชื่อมต่อ แต่ไม่จำเป็นต้องดูสตรีมของคุณอยู่เสมอ" #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "หยุดแสดงตัวอย่างชั่วคราวเพื่อประหยัดทรัพยากร" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "แสดงรูปโปรไฟล์ในสาย" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "แสดงกล้อง" @@ -29606,6 +29606,11 @@ msgstr "บางคน" msgid "something" msgstr "บางอย่าง" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "มีบางอย่างจำกัดสตรีมนี้ ทำให้ผู้ชมได้รับเฟรมที่น้อยกว่าที่คุณร้องขอ" + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "สตรีม" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "กำลังบัฟเฟอร์สตรีม" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "สตรีมจบแล้ว" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "ซ่อนสตรีมแล้ว" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "สตรีมไม่ทัน" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "ผู้ใช้ไม่ทราบชื่อ" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "ผู้ใช้ไม่รู้จัก" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "เปิดเสียงไมโครโฟน" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "เปิดเสียงสตรีม" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "ใช่คุณหรือเปล่า" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "ดู" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "กำลังดู" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "การรับชมล้มเหลว :(" @@ -37352,7 +37362,7 @@ msgstr "คุณไม่สามารถพูดในช่องนี้ #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "คอมมูนิตี้ของคุณอยู่ในส่ msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "ชุมชนของคุณต้องมีสมาชิกอย่างน้อย {minMemberCount} คน จึงจะแสดงในหน้าสำรวจได้" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU ของคุณทำงานไม่ทัน จึงทำให้ผู้ชมได้รับเฟรมภาพน้อยกว่าที่คุณต้องการ" + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "อัปเดตข้อความของคุณไม่สำ msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "การซื้อล่าสุดของคุณไม่อยู่ในช่วงเวลาที่สามารถขอคืนเงินได้แล้ว โปรดติดต่อฝ่ายสนับสนุนสำหรับปัญหาการเรียกเก็บเงิน" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "เครือข่ายของคุณตามไม่ทัน ทำให้ผู้ชมได้รับเฟรมน้อยกว่าที่คุณต้องการ" + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "การลงทะเบียนของคุณต้องผ่านการตรวจสอบสแปมเพิ่มเติมก่อนดำเนินการต่อ" #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "สตรีมของคุณยังคงถ่ายทอดสดอยู่" diff --git a/fluxer_app/src/features/i18n/locales/tr/messages.po b/fluxer_app/src/features/i18n/locales/tr/messages.po index fa5eb1b05..955f54d06 100644 --- a/fluxer_app/src/features/i18n/locales/tr/messages.po +++ b/fluxer_app/src/features/i18n/locales/tr/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Genişlet (# satır)} other {Genişlet (# satır)}} msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {(# satırı göster)} other {(# satırları göster)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Diğer cihazı genişlet} other {Diğer {count} cihazı genişlet}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Aramada} other {# aramada}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Görüntülü aramaya katıl (1 katılımcı)} other {Görüntülü aramaya katıl (# katılımcı)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {# akışı izlemeye devam et ve bunu ekle} other {# akışı izlemeye devam et ve bunu ekle}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} kullanıcı" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} kişi izliyor" @@ -4666,7 +4666,7 @@ msgstr "Arka uç premium avantajları devre dışı bırakıldı" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Arka plan" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Bulanıklaştır" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Bulanıklık şiddeti" @@ -5547,12 +5547,12 @@ msgstr "Kamera cihazı" msgid "Camera effects" msgstr "Kamera efektleri" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Kamera hatası" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Kamera gizli" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Kamera limiti aşıldı; bu kanalda en fazla {voiceChannelCameraUserLimit} kişi video paylaşabilir." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Kamera yükleniyor" @@ -5590,7 +5590,7 @@ msgstr "Kamera izni gerekli" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Kamera önizlemesi" @@ -5692,7 +5692,7 @@ msgstr "Buraya dosya yüklenemiyor" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "İptal" @@ -5940,7 +5940,7 @@ msgstr "Ortalanmış" msgid "Change avatar" msgstr "Avatarı değiştir" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Arka planı değiştir" @@ -7466,7 +7466,7 @@ msgstr "Kanal konusunu daralt" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Cihazları daralt" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Bağlantı ses seviyesi denetimleri" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Bağlantı: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Dekoratif ayırıcı" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Masaüstü uzakta" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Masaüstü cihaz" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Hata" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "hata kodu {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Kanal silinemedi" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Kamera etkinleştirilemedi." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Başlatılamadı" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Kamera önizlemesi başlatılamadı. Kamera izinlerinizi kontrol edin." @@ -14302,7 +14302,7 @@ msgstr "Filtreleme" msgid "Filtering by {language}" msgstr "{language} diline göre filtreleniyor" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Kamera hazırlanıyor..." @@ -17003,7 +17003,7 @@ msgstr "Devralındı" msgid "Inherited from {inheritedFromLabel}" msgstr "{inheritedFromLabel} kaynağından devralındı" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Kamera başlatılıyor..." @@ -19991,7 +19991,7 @@ msgstr "Risk altındaki küçükler, uygunsuz olgun içerik veya istenmeyen davr #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Kamerayı yansıt" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Yanlış yazılmış kelimeler" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Mobil cihaz" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Sesleri kapat" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Akış sesini kapat" @@ -20545,7 +20545,7 @@ msgstr "sessiz" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Sessize alındı" @@ -22678,7 +22678,7 @@ msgstr "İşletim sistemi" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Topluluk ve kanal bazında deneysel okunmamış rozet kontrollerine katılın" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Kamera optimize ediliyor..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Katılımcı sınırı" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "{participantDisplayName} için katılımcı seçenekleri" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Önizleme görüntüleri geçici olarak {productName} tarafından saklanır ve uçtan uca şifrelenmez. İnsanların yine de bağlanmak için izni olması gerekir, ancak yayınınızı aktif olarak izlemeleri gerekmez." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Kaynak tasarrufu için önizleme duraklatıldı" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Arama avatarlarını göster" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Kamerayı göster" @@ -29606,6 +29606,11 @@ msgstr "biri" msgid "something" msgstr "bir şeyler" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Akışınız bir şey tarafından kısıtlanıyor, bu yüzden izleyiciler istediğinizden daha az kare alıyor." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Yayın" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Akış arabelleğe alınıyor" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Yayın sona erdi" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Yayın gizlendi" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Akış ayak uyduramıyor" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "Bilinmeyen kullanıcı" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Bilinmeyen kullanıcı" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Mikrofonun sesini aç" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Akış sesinin sesini aç" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Bu sen miydin?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "İzle" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "İzleniyor" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "İzlenen akışın yüklenmesi başarısız olduğunda uzaktaki ekran paylaşımı kutucuğundaki başlık: İzleme başarısız oldu :(" @@ -37352,7 +37362,7 @@ msgstr "Bu kanalda konuşamazsınız" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Topluluğunuz Keşfet'te listeleniyor. Aşağıdan liste ayrıntıların msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Topluluğunuzun Keşfet'te listelenebilmesi için en az {minMemberCount} üyesi olması gerekir." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU'nuz yetişemiyor, bu nedenle izleyiciler istediğinizden daha az kare alıyor." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Mesajınız güncellenemedi" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Son satın alımınız artık iade süresi içinde değil. Fatura sorunları için destek ekibiyle iletişime geçin." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ağınız yetişemiyor, bu nedenle izleyiciler istediğinizden daha az kare alıyor." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Devam etmeden önce kaydınızın ek bir anti-spam kontrolünden geçmesi gerekiyor." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Yayın devam ediyor" diff --git a/fluxer_app/src/features/i18n/locales/uk/messages.po b/fluxer_app/src/features/i18n/locales/uk/messages.po index 0d141c081..3dc4f5265 100644 --- a/fluxer_app/src/features/i18n/locales/uk/messages.po +++ b/fluxer_app/src/features/i18n/locales/uk/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Розгорнути (# рядок)} few {Розг msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Розгорнути (# рядок)} other {Розгорнути (# рядки)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Розгорнути ще # пристрій} few {Розгорнути ще # пристрої} many {Розгорнути ще # пристроїв} other {Розгорнути ще # пристроїв}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {У дзвінку} other {# у дзвінку}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Приєднатися до відеодзвінка (# учасник)} few {Приєднатися до відеодзвінка (# учасники)} many {Приєднатися до відеодзвінка (# учасників)} other {Приєднатися до відеодзвінка (# учасників)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Продовжуйте дивитися # трансляцію та додайте цю} other {Продовжуйте дивитися # трансляції та додайте цю}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} користувачів" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "Дивляться: {length}" @@ -4666,7 +4666,7 @@ msgstr "Преміум-функції бекенду вимкнено" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Фон" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Розмиття" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Інтенсивність розмиття" @@ -5547,12 +5547,12 @@ msgstr "Камера" msgid "Camera effects" msgstr "Ефекти камери" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Помилка камери" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Камеру приховано" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Досягнуто ліміт камери — у цьому каналі відео можуть одночасно використовувати до {voiceChannelCameraUserLimit} учасників." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Завантаження камери" @@ -5590,7 +5590,7 @@ msgstr "Потрібен дозвіл на камеру" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Попередній перегляд камери" @@ -5692,7 +5692,7 @@ msgstr "Не вдається завантажити файли сюди" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Скасувати" @@ -5940,7 +5940,7 @@ msgstr "По центру" msgid "Change avatar" msgstr "Змінити аватар" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Змінити фон" @@ -7466,7 +7466,7 @@ msgstr "Згорнути тему каналу" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Згорнути пристрої" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Керування гучністю з'єднання" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Підключення: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Декоративний роздільник" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Немає на комп'ютері" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Комп'ютер" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Помилка" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "помилка: код {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Не вдалося видалити канал" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Не вдалося ввімкнути камеру." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Не вдалося запустити" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Не вдалося запустити попередній перегляд камери. Перевірте дозволи камери." @@ -14302,7 +14302,7 @@ msgstr "Фільтрування" msgid "Filtering by {language}" msgstr "Фільтрування за {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Завершення налаштування камери..." @@ -17003,7 +17003,7 @@ msgstr "Успадковано" msgid "Inherited from {inheritedFromLabel}" msgstr "Успадковано від {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Ініціалізація камери..." @@ -19991,7 +19991,7 @@ msgstr "Неповнолітні в небезпеці, неприйнятний #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Віддзеркалити камеру" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Слова з помилками" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Мобільний пристрій" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Вимкнути звуки" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Вимкнути звук трансляції" @@ -20545,7 +20545,7 @@ msgstr "вимкнено" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Без звуку" @@ -22678,7 +22678,7 @@ msgstr "Операційна система" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Увімкнути експериментальні параметри керування значками непрочитаних повідомлень для окремих спільнот і каналів" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Оптимізація камери..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Обмеження учасників" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Параметри учасника для {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Зображення попереднього перегляду тимчасово зберігаються в {productName} для передачі та не захищені наскрізним шифруванням. Для підключення все ще потрібен дозвіл, але користувачам не потрібно активно дивитися вашу трансляцію." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Попередній перегляд призупинено для економії ресурсів" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Показувати аватари в дзвінку" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Показати камеру" @@ -29606,6 +29606,11 @@ msgstr "хтось" msgid "something" msgstr "щось" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Щось обмежує цей потік, тому глядачі отримують менше кадрів, ніж ви просили." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Стрім" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Буферизація потоку" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Трансляція завершена" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Трансляцію приховано" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Потік не встигає" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "невідомий користувач" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Невідомий користувач" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Увімкнути мікрофон" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Увімкнути звук трансляції" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Це були ви?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Дивитися" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Дивиться" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Перегляд не вдався :(" @@ -37352,7 +37362,7 @@ msgstr "Ви не можете говорити в цьому каналі" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Ваша спільнота відображається в \"Пошук msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "У вашій спільноті має бути щонайменше {minMemberCount} учасників, перш ніж її можна буде додати до Discovery." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ваш процесор не встигає, тому глядачі отримують менше кадрів, ніж ви запитували." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Ваше повідомлення не оновилося" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Ваша остання покупка більше не підлягає поверненню. Зверніться до служби підтримки щодо питань виставлення рахунків." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Ваша мережа не встигає, тому глядачі отримують менше кадрів, ніж ви запитували." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Щоб продовжити, потрібно пройти додаткову перевірку на спам." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Ваша трансляція досі активна" diff --git a/fluxer_app/src/features/i18n/locales/vi/messages.po b/fluxer_app/src/features/i18n/locales/vi/messages.po index 145c707f1..238860f7e 100644 --- a/fluxer_app/src/features/i18n/locales/vi/messages.po +++ b/fluxer_app/src/features/i18n/locales/vi/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {Mở rộng (# dòng)} other {Mở rộng (# dòng) msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {Mở rộng (# hàng)} other {Mở rộng (# hàng)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {Mở rộng # thiết bị khác} other {Mở rộng # thiết bị khác}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {Đang gọi} other {# người đang gọi}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {Tham gia cuộc gọi video (# người tham gia)} other {Tham gia cuộc gọi video (# người tham gia)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {Tiếp tục xem # luồng và thêm luồng này} other {Tiếp tục xem # luồng và thêm luồng này}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} người dùng" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} đang xem" @@ -4666,7 +4666,7 @@ msgstr "Đặc quyền cao cấp của backend đã bị tắt" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "Ảnh nền" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "Làm mờ" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "Độ mạnh của hiệu ứng làm mờ nền" @@ -5547,12 +5547,12 @@ msgstr "Thiết bị camera" msgid "Camera effects" msgstr "Hiệu ứng camera" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "Lỗi camera" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "Đã ẩn camera" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "Đã đạt giới hạn camera — tối đa {voiceChannelCameraUserLimit} người có thể chia sẻ video trong kênh này." #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "Đang tải camera" @@ -5590,7 +5590,7 @@ msgstr "Cần có quyền truy cập camera" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "Xem trước camera" @@ -5692,7 +5692,7 @@ msgstr "Không thể tải tệp lên đây" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "Hủy" @@ -5940,7 +5940,7 @@ msgstr "Căn giữa" msgid "Change avatar" msgstr "Đổi ảnh đại diện" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "Đổi hình nền" @@ -7466,7 +7466,7 @@ msgstr "Thu gọn chủ đề kênh" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "Thu gọn thiết bị" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "Điều khiển âm lượng kết nối" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "Kết nối: {connectionId}" @@ -10301,7 +10301,7 @@ msgstr "Đường phân cách trang trí" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "Máy tính để bàn vắng mặt" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "Thiết bị máy tính" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "Lỗi" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "mã lỗi {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "Không thể xóa kênh" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "Không thể bật camera." @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "Không thể khởi động" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "Không thể khởi chạy bản xem trước camera. Vui lòng kiểm tra quyền truy cập camera của bạn." @@ -14302,7 +14302,7 @@ msgstr "Lọc" msgid "Filtering by {language}" msgstr "Lọc theo {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "Đang hoàn tất thiết lập camera..." @@ -17003,7 +17003,7 @@ msgstr "Kế thừa" msgid "Inherited from {inheritedFromLabel}" msgstr "Kế thừa từ {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "Đang khởi tạo camera..." @@ -19991,7 +19991,7 @@ msgstr "Trẻ vị thành niên gặp rủi ro, nội dung người lớn không #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "Phản chiếu camera" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "Lỗi chính tả" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "Thiết bị di động" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "Tắt tiếng" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "Tắt tiếng luồng âm thanh" @@ -20545,7 +20545,7 @@ msgstr "đã tắt tiếng" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "Đã tắt tiếng" @@ -22678,7 +22678,7 @@ msgstr "Hệ điều hành" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "Cho phép sử dụng tính năng thử nghiệm để kiểm soát số lượng thông báo chưa đọc cho từng cộng đồng và kênh" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "Đang tối ưu hóa camera..." @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "Giới hạn thành viên" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "Tùy chọn người tham gia cho {participantDisplayName}" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "Hình ảnh xem trước được lưu trữ tạm thời bởi {productName} để hiển thị và không được mã hóa hoàn toàn. Mọi người vẫn cần quyền để kết nối, nhưng họ không cần phải chủ động xem luồng của bạn." #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "Đã tạm dừng xem trước để tiết kiệm tài nguyên" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "Hiện ảnh đại diện cuộc gọi" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "Hiện camera" @@ -29606,6 +29606,11 @@ msgstr "ai đó" msgid "something" msgstr "gì đó" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "Có điều gì đó đang giới hạn luồng này, vì vậy người xem nhận được ít khung hình hơn bạn yêu cầu." + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "Phát trực tiếp" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "Đang tải luồng" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "Luồng trực tiếp đã kết thúc" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "Đã ẩn luồng" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "Luồng không theo kịp" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "người dùng không xác định" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "Người dùng không xác định" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "Bật tiếng micrô" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "Bật tiếng luồng âm thanh" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "Có phải bạn không?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "Xem" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "Đang xem" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "Xem không thành công :(" @@ -37352,7 +37362,7 @@ msgstr "Bạn không thể nói trong kênh này" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "Cộng đồng của bạn đã được liệt kê trong Khám phá. B msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "Cộng đồng của bạn cần ít nhất {minMemberCount} thành viên trước khi có thể hiển thị trong Khám phá." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "CPU của bạn không theo kịp, vì vậy người xem nhận được ít khung hình hơn bạn yêu cầu." + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "Tin nhắn của bạn chưa được cập nhật" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "Giao dịch mua gần đây nhất của bạn đã quá thời gian hoàn tiền. Vui lòng liên hệ bộ phận hỗ trợ nếu có vấn đề về thanh toán." +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "Mạng của bạn không theo kịp, nên người xem nhận được ít khung hình hơn bạn yêu cầu." + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "Đăng ký của bạn cần một bước kiểm tra chống spam bổ sung trước khi tiếp tục." #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "Luồng của bạn vẫn đang hoạt động" 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 ee1180154..4b235185b 100644 --- a/fluxer_app/src/features/i18n/locales/zh-CN/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-CN/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {展开(# 行)} other {展开(# 行)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {展开(# 行)} other {展开(# 行)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {展开其他设备} other {展开其他设备}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {通话中} other {# 人正在通话}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {加入视频通话(#位参与者)} other {加入视频通话(#位参与者)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {继续观看 # 个直播并添加此直播} other {继续观看 # 个直播并添加此直播}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} 位用户" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} 人正在观看" @@ -4666,7 +4666,7 @@ msgstr "后端高级特权已禁用" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "背景" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "模糊" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "模糊强度" @@ -5547,12 +5547,12 @@ msgstr "摄像头" msgid "Camera effects" msgstr "相机特效" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "相机错误" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "摄像头已隐藏" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "此频道最多允许 {voiceChannelCameraUserLimit} 人同时共享视频。" #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "正在加载摄像头…" @@ -5590,7 +5590,7 @@ msgstr "需要相机权限" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "摄像头预览" @@ -5692,7 +5692,7 @@ msgstr "无法在此上传文件" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "取消" @@ -5940,7 +5940,7 @@ msgstr "居中" msgid "Change avatar" msgstr "更换头像" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "更换背景" @@ -7466,7 +7466,7 @@ msgstr "收起频道话题" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "收起设备" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "连接音量控制" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "连接:{connectionId}" @@ -10301,7 +10301,7 @@ msgstr "装饰性分隔线" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "桌面版离开" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "桌面设备" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "错误" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "错误代码 {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "删除频道失败" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "无法启用摄像头。" @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "启动失败" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "无法启动摄像头预览。请检查您的摄像头权限。" @@ -14302,7 +14302,7 @@ msgstr "筛选" msgid "Filtering by {language}" msgstr "按 {language} 筛选" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "正在准备相机…" @@ -17003,7 +17003,7 @@ msgstr "已继承" msgid "Inherited from {inheritedFromLabel}" msgstr "继承自{inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "正在初始化摄像头…" @@ -19991,7 +19991,7 @@ msgstr "未成年人风险、不当的成人内容或不当行为。" #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "镜像摄像头" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "拼写错误" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "移动设备" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "静音" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "静音直播音频" @@ -20545,7 +20545,7 @@ msgstr "已静音" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "已静音" @@ -22678,7 +22678,7 @@ msgstr "操作系统" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "启用实验性的社区和频道级别的未读消息徽章控制功能" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "正在优化相机…" @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "人数上限" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "{participantDisplayName} 的参与者选项" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "预览图像由 {productName} 临时存储,用于传输,且不进行端到端加密。人们仍然需要获得权限才能连接,但他们不必主动观看您的直播。" #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "预览已暂停以节省资源" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "显示通话头像" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "显示摄像头" @@ -29606,6 +29606,11 @@ msgstr "某人" msgid "something" msgstr "某物" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "某些因素限制了此流,因此观看者收到的帧数少于您要求的数量。" + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "直播" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "直播缓冲中" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "直播已结束" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "屏幕共享已隐藏" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "流未能跟上" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "未知用户" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "未知用户" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "取消静音麦克风" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "取消静音直播音频" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "是你本人吗?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "观看" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "正在看" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "观看失败 :(" @@ -37352,7 +37362,7 @@ msgstr "你无法在此频道发言" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "你的社群已在\"发现\"中列出。你可以在下方更新列表 msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "你的社群成员数量至少达到 {minMemberCount} 人后,才能在\"发现\"中显示。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "您的 CPU 性能不足,观众看到的帧数少于您要求的数量。" + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "消息未能更新" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "您最近的购买已超出退款期限。如遇账单问题,请联系客服。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "你的网络跟不上,因此观众看到的帧数少于你请求的帧数。" + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "为防止垃圾信息,你需要先完成一项额外的安全验证,然后才能继续。" #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "你的直播仍在继续" 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 b12b11447..34a7e8951 100644 --- a/fluxer_app/src/features/i18n/locales/zh-TW/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-TW/messages.po @@ -450,7 +450,7 @@ msgstr "{count, plural, one {展開(# 行)} other {展開(# 行)}}" msgid "{count, plural, one {Expand (# row)} other {Expand (# rows)}}" msgstr "{count, plural, one {展開 (# 列)} other {展開 (# 列)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:306 +#: src/features/voice/components/VoiceParticipantTile.tsx:310 msgid "{count, plural, one {Expand # other device} other {Expand # other devices}}" msgstr "{count, plural, one {展開其他 {count} 個裝置} other {展開其他 {count} 個裝置}}" @@ -471,7 +471,7 @@ msgstr "{count, plural, one {通話中} other {# 人通話中}}" msgid "{count, plural, one {Join video call (# participant)} other {Join video call (# participants)}}" msgstr "{count, plural, one {加入視訊通話(#位參與者)} other {加入視訊通話(#位參與者)}}" -#: src/features/voice/components/VoiceParticipantTile.tsx:623 +#: src/features/voice/components/VoiceParticipantTile.tsx:630 msgid "{count, plural, one {Keep watching # stream and add this one} other {Keep watching # streams and add this one}}" msgstr "{count, plural, one {繼續觀看 # 個直播並新增這個} other {繼續觀看 # 個直播並新增這個}}" @@ -845,7 +845,7 @@ msgid "{length} users" msgstr "{length} 位使用者" #. Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review. -#: src/features/voice/components/voice_participant_tile/shared.ts:73 +#: src/features/voice/components/voice_participant_tile/shared.ts:75 msgid "{length} watching" msgstr "{length} 位觀眾" @@ -4666,7 +4666,7 @@ msgstr "後端進階版福利已停用" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/theme/components/modals/BackgroundImageGalleryModal.tsx:56 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:5 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:735 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:725 msgid "Background" msgstr "背景" @@ -5070,7 +5070,7 @@ msgid "Blur" msgstr "模糊" #. Slider label in the camera preview modal controlling how strong the background blur effect is. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:79 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:80 msgid "Blur strength" msgstr "模糊強度" @@ -5547,12 +5547,12 @@ msgstr "相機裝置" msgid "Camera effects" msgstr "相機特效" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:813 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:803 msgid "Camera error" msgstr "相機錯誤" #. Overlay text on a participant tile when the local user hid the remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:47 +#: src/features/voice/components/voice_participant_tile/shared.ts:49 msgid "Camera hidden" msgstr "鏡頭已隱藏" @@ -5562,7 +5562,7 @@ msgid "Camera limit reached — up to {voiceChannelCameraUserLimit} people can s msgstr "已達攝影機上限 — 此頻道最多可讓 {voiceChannelCameraUserLimit} 人共享影片。" #. Accessible status label while a voice participant camera feed is starting before video is renderable. -#: src/features/voice/components/voice_participant_tile/shared.ts:51 +#: src/features/voice/components/voice_participant_tile/shared.ts:53 msgid "Camera loading" msgstr "正在載入攝影機" @@ -5590,7 +5590,7 @@ msgstr "需要相機權限" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Title of the camera preview modal. #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:181 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:62 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:63 msgid "Camera preview" msgstr "相機預覽" @@ -5692,7 +5692,7 @@ msgstr "無法在這裡上傳檔案" #: src/features/user/components/modals/PhoneAddModal.tsx:392 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:173 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:31 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:849 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:839 #: src/features/voice/components/VoiceMessageComposerModal.tsx:80 msgid "Cancel" msgstr "取消" @@ -5940,7 +5940,7 @@ msgstr "置中" msgid "Change avatar" msgstr "更換大頭貼" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:748 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:738 msgid "Change background" msgstr "變更背景" @@ -7466,7 +7466,7 @@ msgstr "收合頻道主題" #. Tooltip / aria label on a voice participant tile button that collapses expanded device tiles for one user. #. Voice menu action that collapses expanded device tiles back into a single tile. #: src/features/ui/action_menu/items/voice_participant_menu_data/shared.ts:122 -#: src/features/voice/components/VoiceParticipantTile.tsx:168 +#: src/features/voice/components/VoiceParticipantTile.tsx:172 msgid "Collapse devices" msgstr "收合裝置" @@ -8217,7 +8217,7 @@ msgid "Connection volume controls" msgstr "連線音量控制" #. Developer / debug overlay text on a participant tile. {connectionId} is the voice connection identifier. -#: src/features/voice/components/voice_participant_tile/shared.ts:90 +#: src/features/voice/components/voice_participant_tile/shared.ts:110 msgid "Connection: {connectionId}" msgstr "連線:{connectionId}" @@ -10301,7 +10301,7 @@ msgstr "裝飾性分隔線" #: src/features/ui/action_menu/items/SearchMenuData.tsx:43 #: src/features/ui/action_menu/items/SearchProviderMenuItems.tsx:14 #: src/features/user/components/modals/tabs/component_gallery_tab/MarkdownTab.tsx:117 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:66 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:67 #: src/features/voice/components/VoiceSettingsMenus.tsx:86 #: src/features/voice/utils/SettingsDeviceOptions.ts:11 msgid "Default" @@ -10825,7 +10825,7 @@ msgid "Desktop away" msgstr "電腦版離開" #. Aria label on a participant tile icon that indicates the participant is on desktop. -#: src/features/voice/components/voice_participant_tile/shared.ts:86 +#: src/features/voice/components/voice_participant_tile/shared.ts:106 msgid "Desktop device" msgstr "電腦版" @@ -13285,7 +13285,7 @@ msgid "Error" msgstr "錯誤" #. Subtitle on a remote screen-share tile after loading the watched stream failed. {code} is a numeric diagnostic code. -#: src/features/voice/components/voice_participant_tile/shared.ts:42 +#: src/features/voice/components/voice_participant_tile/shared.ts:44 msgid "error code {code}" msgstr "錯誤代碼 {code}" @@ -13773,7 +13773,7 @@ msgid "Failed to delete channel" msgstr "無法刪除頻道" #. Toast / inline error in the camera preview modal when enabling the camera fails. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:58 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:59 msgid "Failed to enable camera." msgstr "無法開啟相機。" @@ -13957,7 +13957,7 @@ msgid "Failed to start" msgstr "啟動失敗" #. Error text in the camera preview modal when the camera stream cannot be opened. Prompts user to check OS / browser permissions. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:53 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:54 msgid "Failed to start camera preview. Check your camera permissions." msgstr "無法啟動相機預覽。請檢查您的相機權限。" @@ -14302,7 +14302,7 @@ msgstr "篩選" msgid "Filtering by {language}" msgstr "篩選自 {language}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:792 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:782 msgid "Finalizing camera..." msgstr "正在準備相機…" @@ -17003,7 +17003,7 @@ msgstr "繼承" msgid "Inherited from {inheritedFromLabel}" msgstr "繼承自 {inheritedFromLabel}" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:794 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:784 msgid "Initializing camera..." msgstr "正在初始化相機…" @@ -19991,7 +19991,7 @@ msgstr "未成年人風險、不當的成人內容或不必要的行為。" #. Switch label in the camera preview modal for flipping the local camera preview horizontally. #. Switch label in the video tab for flipping the local camera preview horizontally. #: src/features/user/components/modals/tabs/UserVideoTab.tsx:76 -#: src/features/voice/components/modals/CameraPreviewModal.tsx:70 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:71 #: src/features/voice/components/VoiceSettingsMenus.tsx:112 msgid "Mirror camera" msgstr "鏡像相機" @@ -20028,7 +20028,7 @@ msgid "Misspelled words" msgstr "錯字" #. Aria label on a participant tile icon that indicates the participant is on mobile. -#: src/features/voice/components/voice_participant_tile/shared.ts:82 +#: src/features/voice/components/voice_participant_tile/shared.ts:102 msgid "Mobile device" msgstr "行動裝置" @@ -20518,7 +20518,7 @@ msgid "Mute sounds" msgstr "靜音" #. Tooltip / button label on a voice participant tile that mutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:22 +#: src/features/voice/components/voice_participant_tile/shared.ts:24 msgid "Mute stream audio" msgstr "將串流音訊靜音" @@ -20545,7 +20545,7 @@ msgstr "已關閉通知" #: src/features/ui/avatars/AvatarWithPresence.tsx:20 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:463 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:73 -#: src/features/voice/components/voice_participant_tile/shared.ts:78 +#: src/features/voice/components/voice_participant_tile/shared.ts:98 #: src/lib/overlay/OverlayContextMenu.tsx:24 msgid "Muted" msgstr "已靜音" @@ -22678,7 +22678,7 @@ msgstr "作業系統" msgid "Opt into experimental per-community and per-channel unread badge controls" msgstr "啟用實驗性的社群和頻道未讀標記控制功能" -#: src/features/voice/components/modals/CameraPreviewModal.tsx:790 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:780 msgid "Optimizing camera..." msgstr "正在最佳化相機…" @@ -22930,7 +22930,7 @@ msgid "Participant limit" msgstr "成員上限" #. Aria label for the participant context-menu trigger button. {participantDisplayName} is the participant's display name. -#: src/features/voice/components/voice_participant_tile/shared.ts:94 +#: src/features/voice/components/voice_participant_tile/shared.ts:114 msgid "Participant options for {participantDisplayName}" msgstr "「{participantDisplayName}」的參與者選項" @@ -23963,7 +23963,7 @@ msgid "Preview images are stored by {productName} temporarily for delivery and a msgstr "預覽圖片會由 {productName} 暫時儲存,以便傳送,且不會進行端對端加密。人們仍然需要獲得權限才能連線,但他們不需要主動觀看您的直播。" #. Overlay on the local screen-share preview when playback is paused to reduce CPU / battery use. Local share is still being sent to others. -#: src/features/voice/components/voice_participant_tile/shared.ts:59 +#: src/features/voice/components/voice_participant_tile/shared.ts:61 msgid "Preview paused to save resources" msgstr "預覽已暫停以節省資源" @@ -28658,7 +28658,7 @@ msgid "Show call avatars" msgstr "顯示通話頭像" #. Action label that reveals a previously hidden remote camera feed. -#: src/features/voice/components/voice_participant_tile/shared.ts:55 +#: src/features/voice/components/voice_participant_tile/shared.ts:57 msgid "Show camera" msgstr "顯示相機" @@ -29606,6 +29606,11 @@ msgstr "某人" msgid "something" msgstr "某個東西" +#. Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation. +#: src/features/voice/components/voice_participant_tile/shared.ts:93 +msgid "Something is limiting this stream, so viewers are getting fewer frames than you asked for." +msgstr "有東西正在限制此串流,因此觀眾收到的畫面張數比您要求的少。" + #. Generic error modal title for an unexpected failure. #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 @@ -30522,20 +30527,25 @@ msgid "Stream" msgstr "直播" #. Accessible status label for the black buffering frame shown while a screen share codec is renegotiated. -#: src/features/voice/components/voice_participant_tile/shared.ts:34 +#: src/features/voice/components/voice_participant_tile/shared.ts:36 msgid "Stream buffering" msgstr "串流緩衝中" #. Status overlay on a voice participant tile when the remote screen share has ended. -#: src/features/voice/components/voice_participant_tile/shared.ts:26 +#: src/features/voice/components/voice_participant_tile/shared.ts:28 msgid "Stream ended" msgstr "直播已結束" #. Overlay text on a participant tile when the local user hid the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:30 +#: src/features/voice/components/voice_participant_tile/shared.ts:32 msgid "Stream hidden" msgstr "已隱藏串流" +#. Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for. +#: src/features/voice/components/voice_participant_tile/shared.ts:80 +msgid "Stream is not keeping up" +msgstr "串流未跟上" + #. Aria label for the small thumbnail preview on the screen-share hover card. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the user settings voice activity card. Keep it concise. @@ -33858,7 +33868,7 @@ msgstr "不明使用者" #: src/features/devtools/utils/CommandUtils.ts:27 #: src/features/guild/components/modals/guild_tabs/GuildAuditLogTab.tsx:114 #: src/features/voice/components/VoiceParticipantAvatarList.tsx:44 -#: src/features/voice/components/VoiceParticipantTile.tsx:164 +#: src/features/voice/components/VoiceParticipantTile.tsx:168 #: src/features/webhook/components/WebhookListItem.tsx:30 msgid "Unknown user" msgstr "不明使用者" @@ -34016,7 +34026,7 @@ msgid "Unmute microphone" msgstr "解除麥克風靜音" #. Tooltip / button label on a voice participant tile that unmutes the remote screen-share or camera audio. -#: src/features/voice/components/voice_participant_tile/shared.ts:18 +#: src/features/voice/components/voice_participant_tile/shared.ts:20 msgid "Unmute stream audio" msgstr "解除靜音串流音訊" @@ -36308,7 +36318,7 @@ msgid "Was this you?" msgstr "這是你本人嗎?" #. Compact button label on a participant tile. Joins / opens the remote screen share. -#: src/features/voice/components/voice_participant_tile/shared.ts:69 +#: src/features/voice/components/voice_participant_tile/shared.ts:71 msgid "Watch" msgstr "觀看" @@ -36323,7 +36333,7 @@ msgid "Watching" msgstr "正在觀看" #. Title on a remote screen-share tile when loading the watched stream failed. -#: src/features/voice/components/voice_participant_tile/shared.ts:38 +#: src/features/voice/components/voice_participant_tile/shared.ts:40 msgid "Watching failed :(" msgstr "觀看失敗:(" @@ -37352,7 +37362,7 @@ msgstr "你無法在此頻道中發言" #. Tooltip / error shown in the camera preview modal when the user lacks Video permission in the current channel. Tone stays plain. #. Tooltip in the voice control bar when the user lacks the Video permission in this channel. Tone stays plain. #. Tooltip shown when the user lacks the Video permission in the voice channel. Tone stays plain. -#: src/features/voice/components/modals/CameraPreviewModal.tsx:74 +#: src/features/voice/components/modals/CameraPreviewModal.tsx:75 #: src/features/voice/components/voice_connection_status/LocalParticipantControls.tsx:50 #: src/features/voice/components/VoiceControlBar.tsx:127 msgid "You can't turn on your camera in this channel" @@ -38019,6 +38029,11 @@ msgstr "您的社群已列在探索中。您可以更新下列的刊登資訊, msgid "Your community needs at least {minMemberCount} members before it can be listed in Discovery." msgstr "您的社群至少需要有 {minMemberCount} 位成員,才能在探索中顯示。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU. +#: src/features/voice/components/voice_participant_tile/shared.ts:85 +msgid "Your CPU cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "您的 CPU 處理速度跟不上,因此觀眾收到的畫面張數少於您要求的數量。" + #. Body copy on the mature content check callback page after a successful check submission. #: src/features/auth/components/pages/MatureContentCheckCallbackPage.tsx:14 msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." @@ -38160,6 +38175,11 @@ msgstr "您的訊息未更新" msgid "Your most recent purchase is no longer within the refund window. Contact support for billing issues." msgstr "您最近的購買已超出退款期限。如需處理帳務問題,請聯絡客服。" +#. Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth. +#: src/features/voice/components/voice_participant_tile/shared.ts:89 +msgid "Your network cannot keep up, so viewers are getting fewer frames than you asked for." +msgstr "你的網路跟不上,因此觀眾收到的畫面更新率比你要求的少。" + #. Placeholder text inside the new email field. Sentence-fragment hint, intentionally lowercase. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:88 msgid "your new email" @@ -38224,7 +38244,7 @@ msgid "Your registration needs an extra anti-spam check before you can continue. msgstr "您的註冊需要額外的防垃圾訊息驗證,才能繼續。" #. Subtitle under the preview-paused overlay reassuring the user that the screen share is still live for others. -#: src/features/voice/components/voice_participant_tile/shared.ts:64 +#: src/features/voice/components/voice_participant_tile/shared.ts:66 msgid "Your stream is still live" msgstr "你的直播仍在進行中" diff --git a/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts b/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts index 09cd6c549..f583c0706 100644 --- a/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts +++ b/fluxer_app/src/features/voice/commands/VoiceSettingsCommands.ts @@ -1,6 +1,7 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import MediaEngine from '@app/features/voice/engine/MediaEngineFacade'; +import {noteDeliberateScreenShareQualityChange} from '@app/features/voice/engine/ScreenShareUnderperformance'; import VoiceSettings, { type CameraResolution, type ScreenshareResolution, @@ -136,13 +137,44 @@ function shouldRefreshCameraCapture( return CAMERA_CAPTURE_REFRESH_KEYS.some((key) => settings[key] !== undefined && before[key] !== after[key]); } +function readScreenShareQualityValues(): VoiceSettingsPatch { + return { + screenshareResolution: VoiceSettings.getScreenshareResolution(), + videoFrameRate: VoiceSettings.getVideoFrameRate(), + streamingMode: VoiceSettings.getStreamingMode(), + screenShareContentHint: VoiceSettings.getScreenShareContentHint(), + preferredScreenShareCodec: VoiceSettings.getPreferredScreenShareCodec(), + screenShareAv1OptIn: VoiceSettings.getScreenShareAv1OptIn(), + screenShareHevcOptIn: VoiceSettings.getScreenShareHevcOptIn(), + screenShareEncoderMode: VoiceSettings.getScreenShareEncoderMode(), + screenShareSoftwareQuality: VoiceSettings.getScreenShareSoftwareQuality(), + screenShareScalabilityMode: VoiceSettings.getScreenShareScalabilityMode(), + screenShareBackupCodecMode: VoiceSettings.getScreenShareBackupCodecMode(), + openH264Enabled: VoiceSettings.getOpenH264Enabled(), + }; +} + +function changesScreenShareQualityDeliberately( + settings: VoiceSettingsPatch, + before: VoiceSettingsPatch, + after: VoiceSettingsPatch, +): boolean { + return (Object.keys(before) as Array).some( + (key) => settings[key] !== undefined && before[key] !== after[key], + ); +} + function applyUpdatedVoiceSettings( settings: VoiceSettingsPatch, refreshInput: boolean, options: VoiceSettingsUpdateOptions = {}, ): void { const cameraCaptureBefore = readCameraCaptureRefreshValues(); + const screenShareQualityBefore = readScreenShareQualityValues(); VoiceSettings.updateSettings(settings); + if (changesScreenShareQualityDeliberately(settings, screenShareQualityBefore, readScreenShareQualityValues())) { + noteDeliberateScreenShareQualityChange(); + } if (settings.muteStreamAudio !== undefined) { MediaEngine.setScreenShareAudioMuted(settings.muteStreamAudio); } diff --git a/fluxer_app/src/features/voice/components/VoiceParticipantTile.module.css b/fluxer_app/src/features/voice/components/VoiceParticipantTile.module.css index 6ceb7aaa4..16cf38832 100644 --- a/fluxer_app/src/features/voice/components/VoiceParticipantTile.module.css +++ b/fluxer_app/src/features/voice/components/VoiceParticipantTile.module.css @@ -220,6 +220,12 @@ color: var(--status-danger); } +.streamUnderperformanceSlot { + padding: 0 0.375rem; + color: var(--status-warning); + cursor: default; +} + .avatarFlexShrink { flex-shrink: 0; } diff --git a/fluxer_app/src/features/voice/components/VoiceParticipantTile.tsx b/fluxer_app/src/features/voice/components/VoiceParticipantTile.tsx index 4fc4b646a..e089c8ee0 100644 --- a/fluxer_app/src/features/voice/components/VoiceParticipantTile.tsx +++ b/fluxer_app/src/features/voice/components/VoiceParticipantTile.tsx @@ -42,6 +42,7 @@ import {StreamInfoPill} from '@app/features/voice/components/StreamInfoPill'; import {getStreamKey} from '@app/features/voice/components/StreamKeys'; import {StreamSpectatorsPopout} from '@app/features/voice/components/StreamSpectatorsPopout'; import {StreamWatchHoverCard} from '@app/features/voice/components/StreamWatchHoverCard'; +import {useScreenShareUnderperformance} from '@app/features/voice/components/useScreenShareUnderperformance'; import {useScreenShareWatchFailure} from '@app/features/voice/components/useScreenShareWatchFailure'; import {useStreamPreview} from '@app/features/voice/components/useStreamPreview'; import {useStreamSpectators} from '@app/features/voice/components/useStreamSpectators'; @@ -77,6 +78,7 @@ import { CONNECTION_DESCRIPTOR, DESKTOP_DEVICE_DESCRIPTOR, getSourceDataAttr, + getStreamUnderperformanceLabel, isCameraSource, logger, MOBILE_DEVICE_DESCRIPTOR, @@ -87,6 +89,7 @@ import { STREAM_BUFFERING_DESCRIPTOR, STREAM_ENDED_DESCRIPTOR, STREAM_HIDDEN_DESCRIPTOR, + STREAM_NOT_KEEPING_UP_DESCRIPTOR, TILE_AVATAR_BASE, TILE_AVATAR_MEDIA_SIZE, TILE_AVATAR_STYLE, @@ -154,6 +157,7 @@ import { PauseIcon, SpeakerSlashIcon, VideoCameraSlashIcon, + WarningIcon, } from '@phosphor-icons/react'; import {clsx} from 'clsx'; import type {Participant, RemoteTrackPublication, Track} from 'livekit-client'; @@ -338,6 +342,9 @@ const VoiceParticipantTileInner = observer(function VoiceParticipantTileInner({ const streamKey = useMemo(() => getStreamKey(guildId, channelId, connectionId), [guildId, channelId, connectionId]); const {viewerIds, viewerUsers, spectatorEntries} = useStreamSpectators(isScreenShare ? streamKey : '', userId); const hasSpectatorDemand = viewerIds.length > 0; + const streamUnderperformanceReason = useScreenShareUnderperformance( + isOwnScreenShare && !isFocusedPlaceholderTile && viewerUsers.length > 0, + ); const isCameraTile = isCameraSource(trackRef.source); const cameraLocallyDisabled = callId !== '' && isCameraTile && CallMediaPrefs.isVideoDisabled(callId, identity); const screenSharePublicationMigrationVersion = ScreenSharePublicationMigration.version; @@ -1282,6 +1289,26 @@ const VoiceParticipantTileInner = observer(function VoiceParticipantTileInner({ )} + {isOwnScreenShare && viewerUsers.length > 0 && streamUnderperformanceReason && ( + +
+ +
+
+ )} {isScreenShare && viewerUsers.length > 0 && ( { ).toBeNull(); }); }); + +const UNDERPERFORMANCE_START_AT = 1_000_000; + +interface UnderperformanceFeed { + encodeFrameRate: number; + limitationReason: ScreenShareQualityLimitationReason; + requestedFrameRate?: number; + trackId?: string; + qualityChangeAt?: number; + startAt?: number; +} + +function feedUnderperformance( + tracker: ScreenShareUnderperformanceTracker, + count: number, + feed: UnderperformanceFeed, +): ScreenShareUnderperformanceReason | null { + let reason: ScreenShareUnderperformanceReason | null = null; + const startAt = feed.startAt ?? UNDERPERFORMANCE_START_AT; + for (let index = 0; index < count; index += 1) { + reason = tracker.observe({ + sample: {encodeFrameRate: feed.encodeFrameRate, limitationReason: feed.limitationReason}, + requestedFrameRate: feed.requestedFrameRate ?? 30, + trackId: feed.trackId ?? 'track-a', + qualityChangeAt: feed.qualityChangeAt ?? 0, + now: startAt + index * 1000, + }); + } + return reason; +} + +describe('ScreenShareUnderperformanceTracker', () => { + it('stays quiet until fifteen datapoints exist', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(tracker, 14, {encodeFrameRate: 5, limitationReason: 'cpu'})).toBeNull(); + expect( + feedUnderperformance(tracker, 1, { + encodeFrameRate: 5, + limitationReason: 'cpu', + startAt: UNDERPERFORMANCE_START_AT + 14_000, + }), + ).toBe('cpu'); + }); + + it('does not fire while the encoder holds at least half the requested rate', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(tracker, 30, {encodeFrameRate: 15, limitationReason: 'cpu'})).toBeNull(); + }); + + it('uses an eight frame floor for low requested rates', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect( + feedUnderperformance(tracker, 15, {encodeFrameRate: 7, limitationReason: 'bandwidth', requestedFrameRate: 15}), + ).toBe('bandwidth'); + const steady = new ScreenShareUnderperformanceTracker(); + expect( + feedUnderperformance(steady, 15, {encodeFrameRate: 8, limitationReason: 'bandwidth', requestedFrameRate: 15}), + ).toBeNull(); + }); + + it('does not fire when nothing reports an active limitation', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(tracker, 30, {encodeFrameRate: 2, limitationReason: 'none'})).toBeNull(); + }); + + it('needs a limitation on at least half of the window', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + feedUnderperformance(tracker, 8, {encodeFrameRate: 5, limitationReason: 'none'}); + expect( + feedUnderperformance(tracker, 7, { + encodeFrameRate: 5, + limitationReason: 'cpu', + startAt: UNDERPERFORMANCE_START_AT + 8_000, + }), + ).toBeNull(); + expect( + feedUnderperformance(tracker, 1, { + encodeFrameRate: 5, + limitationReason: 'cpu', + startAt: UNDERPERFORMANCE_START_AT + 15_000, + }), + ).toBe('cpu'); + }); + + it('suppresses for twenty seconds after a deliberate quality change', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + const qualityChangeAt = UNDERPERFORMANCE_START_AT; + expect( + feedUnderperformance(tracker, 20, {encodeFrameRate: 5, limitationReason: 'cpu', qualityChangeAt}), + ).toBeNull(); + expect( + feedUnderperformance(tracker, 1, { + encodeFrameRate: 5, + limitationReason: 'cpu', + qualityChangeAt, + startAt: UNDERPERFORMANCE_START_AT + 20_000, + }), + ).toBe('cpu'); + }); + + it('adds no grace period of its own when tracking starts long after the last change', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect( + feedUnderperformance(tracker, 15, { + encodeFrameRate: 5, + limitationReason: 'cpu', + qualityChangeAt: UNDERPERFORMANCE_START_AT - 60_000, + }), + ).toBe('cpu'); + }); + + it('starts over when the requested rate, the track or the change timestamp moves', () => { + const byRate = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(byRate, 15, {encodeFrameRate: 5, limitationReason: 'cpu'})).toBe('cpu'); + expect( + feedUnderperformance(byRate, 1, {encodeFrameRate: 5, limitationReason: 'cpu', requestedFrameRate: 60}), + ).toBeNull(); + const byTrack = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(byTrack, 15, {encodeFrameRate: 5, limitationReason: 'cpu'})).toBe('cpu'); + expect( + feedUnderperformance(byTrack, 1, {encodeFrameRate: 5, limitationReason: 'cpu', trackId: 'track-b'}), + ).toBeNull(); + const byChange = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(byChange, 15, {encodeFrameRate: 5, limitationReason: 'cpu'})).toBe('cpu'); + expect( + feedUnderperformance(byChange, 1, { + encodeFrameRate: 5, + limitationReason: 'cpu', + qualityChangeAt: UNDERPERFORMANCE_START_AT - 60_000, + }), + ).toBeNull(); + }); + + it('names the limitation reported most often', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + feedUnderperformance(tracker, 7, {encodeFrameRate: 5, limitationReason: 'cpu'}); + expect( + feedUnderperformance(tracker, 8, { + encodeFrameRate: 5, + limitationReason: 'bandwidth', + startAt: UNDERPERFORMANCE_START_AT + 7_000, + }), + ).toBe('bandwidth'); + const other = new ScreenShareUnderperformanceTracker(); + feedUnderperformance(other, 7, {encodeFrameRate: 5, limitationReason: 'bandwidth'}); + expect( + feedUnderperformance(other, 8, { + encodeFrameRate: 5, + limitationReason: 'other', + startAt: UNDERPERFORMANCE_START_AT + 7_000, + }), + ).toBe('other'); + }); + + it('falls back to the long window when the short one is inconclusive', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + feedUnderperformance(tracker, 15, {encodeFrameRate: 2, limitationReason: 'cpu'}); + expect( + feedUnderperformance(tracker, 15, { + encodeFrameRate: 16, + limitationReason: 'cpu', + startAt: UNDERPERFORMANCE_START_AT + 15_000, + }), + ).toBe('cpu'); + }); + + it('does not latch once the encoder recovers', () => { + const tracker = new ScreenShareUnderperformanceTracker(); + expect(feedUnderperformance(tracker, 15, {encodeFrameRate: 5, limitationReason: 'cpu'})).toBe('cpu'); + expect( + feedUnderperformance(tracker, 30, { + encodeFrameRate: 30, + limitationReason: 'none', + startAt: UNDERPERFORMANCE_START_AT + 15_000, + }), + ).toBeNull(); + }); +}); + +describe('applied screen share frame rate records', () => { + it('returns the frame rate recorded for a track and nothing for other tracks', () => { + noteAppliedScreenShareFrameRate('record-a', 60); + expect(getAppliedScreenShareFrameRate('record-a')).toBe(60); + expect(getAppliedScreenShareFrameRate('record-missing')).toBeNull(); + noteAppliedScreenShareFrameRate('record-a', 30); + expect(getAppliedScreenShareFrameRate('record-a')).toBe(30); + }); + + it('keeps only the most recent records', () => { + for (let index = 0; index < 9; index += 1) { + noteAppliedScreenShareFrameRate(`record-prune-${index}`, 15 + index); + } + expect(getAppliedScreenShareFrameRate('record-prune-0')).toBeNull(); + expect(getAppliedScreenShareFrameRate('record-prune-1')).toBe(16); + expect(getAppliedScreenShareFrameRate('record-prune-8')).toBe(23); + }); +}); diff --git a/fluxer_app/src/features/voice/components/useScreenShareUnderperformance.ts b/fluxer_app/src/features/voice/components/useScreenShareUnderperformance.ts new file mode 100644 index 000000000..a3228ca12 --- /dev/null +++ b/fluxer_app/src/features/voice/components/useScreenShareUnderperformance.ts @@ -0,0 +1,107 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import MediaEngine from '@app/features/voice/engine/MediaEngineFacade'; +import { + getAppliedScreenShareFrameRate, + getDeliberateScreenShareQualityChangeAt, + parseScreenShareQualityLimitationReason, + SCREEN_SHARE_UNDERPERFORMANCE_SAMPLE_INTERVAL_MS, + type ScreenShareUnderperformanceReason, + ScreenShareUnderperformanceTracker, +} from '@app/features/voice/engine/ScreenShareUnderperformance'; +import {VoiceTrackSource} from '@app/features/voice/engine/VoiceTrackSource'; +import {classifyVoiceEngineV2TrackStats, type VoiceEngineV2PerTrackStats} from '@fluxer/voice_engine_v2'; +import type {Track} from 'livekit-client'; +import {useEffect, useState} from 'react'; + +const CAMERA_SOURCE = VoiceTrackSource.Camera as Track.Source; +const SCREEN_SHARE_SOURCE = VoiceTrackSource.ScreenShare as Track.Source; + +interface LocalScreenShareTrackStats { + trackId: string; + stats: VoiceEngineV2PerTrackStats; + snapshot: ReadonlyArray; +} + +function selectLocalScreenShareTrackStats(): LocalScreenShareTrackStats | null { + const perTrackStats = MediaEngine.perTrackStats; + if (perTrackStats.length === 0) return null; + const localParticipant = MediaEngine.room?.localParticipant; + const localScreenShareTrackId = + localParticipant?.getTrackPublication(SCREEN_SHARE_SOURCE)?.videoTrack?.mediaStreamTrack?.id ?? null; + if (!localScreenShareTrackId) return null; + const classification = classifyVoiceEngineV2TrackStats({ + tracks: perTrackStats.map((track) => ({ + direction: track.direction, + kind: track.kind, + rid: track.rid, + trackIdentifier: track.trackIdentifier, + bitrateKbps: track.bitrateKbps, + })), + publications: { + localCameraTrackId: + localParticipant?.getTrackPublication(CAMERA_SOURCE)?.videoTrack?.mediaStreamTrack?.id ?? null, + localMicrophoneTrackId: null, + localScreenShareTrackId, + localScreenShareAudioTrackId: null, + remoteMicrophoneTrackIds: [], + remoteScreenShareTrackIds: [], + remoteScreenShareAudioTrackIds: [], + }, + }); + const index = classification.localScreenShareTrackIndex; + if (index == null) return null; + const stats = perTrackStats[index]; + if (!stats) return null; + return {trackId: localScreenShareTrackId, stats, snapshot: perTrackStats}; +} + +function readEncodeFrameRate(stats: VoiceEngineV2PerTrackStats): number { + const framesPerSecond = stats.framesPerSecond; + return typeof framesPerSecond === 'number' && Number.isFinite(framesPerSecond) ? framesPerSecond : 0; +} + +export function useScreenShareUnderperformance(enabled: boolean): ScreenShareUnderperformanceReason | null { + const [reason, setReason] = useState(null); + useEffect(() => { + setReason(null); + if (!enabled) return; + const tracker = new ScreenShareUnderperformanceTracker(); + let lastSnapshot: ReadonlyArray | null = null; + const sample = () => { + const selected = selectLocalScreenShareTrackStats(); + if (!selected) { + lastSnapshot = null; + tracker.reset(); + setReason(null); + return; + } + if (selected.snapshot === lastSnapshot) return; + lastSnapshot = selected.snapshot; + const requestedFrameRate = getAppliedScreenShareFrameRate(selected.trackId); + if (requestedFrameRate === null) { + setReason(null); + return; + } + setReason( + tracker.observe({ + sample: { + encodeFrameRate: readEncodeFrameRate(selected.stats), + limitationReason: parseScreenShareQualityLimitationReason(selected.stats.qualityLimitationReason), + }, + requestedFrameRate, + trackId: selected.trackId, + qualityChangeAt: getDeliberateScreenShareQualityChangeAt(), + now: Date.now(), + }), + ); + }; + sample(); + const timer = setInterval(sample, SCREEN_SHARE_UNDERPERFORMANCE_SAMPLE_INTERVAL_MS); + return () => { + clearInterval(timer); + tracker.reset(); + }; + }, [enabled]); + return reason; +} diff --git a/fluxer_app/src/features/voice/components/voice_participant_tile/shared.ts b/fluxer_app/src/features/voice/components/voice_participant_tile/shared.ts index a6244e833..943ddcc90 100644 --- a/fluxer_app/src/features/voice/components/voice_participant_tile/shared.ts +++ b/fluxer_app/src/features/voice/components/voice_participant_tile/shared.ts @@ -1,9 +1,11 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import {Logger} from '@app/features/platform/utils/AppLogger'; +import type {ScreenShareUnderperformanceReason} from '@app/features/voice/engine/ScreenShareUnderperformance'; import {VoiceTrackSource} from '@app/features/voice/engine/VoiceTrackSource'; import {MEDIA_PROXY_AVATAR_SIZE_PROFILE} from '@fluxer/constants/src/MediaProxyAssetSizes'; import type {MediaProxyImageSize} from '@fluxer/constants/src/MediaProxyImageSizes'; +import type {I18n} from '@lingui/core'; import {msg} from '@lingui/core/macro'; import type {TrackReferenceOrPlaceholder} from '@livekit/components-react'; import type React from 'react'; @@ -75,6 +77,24 @@ export const WATCHING_DESCRIPTOR = msg({ comment: 'Spectator count badge on a screen-share tile. {length} is the integer number of viewers. Consider pluralization on review.', }); +export const STREAM_NOT_KEEPING_UP_DESCRIPTOR = msg({ + message: 'Stream is not keeping up', + comment: + 'Accessible label for a passive badge on your own screen-share tile, shown when the encoder stays below the frame rate you asked for.', +}); +export const STREAM_LIMITED_BY_CPU_DESCRIPTOR = msg({ + message: 'Your CPU cannot keep up, so viewers are getting fewer frames than you asked for.', + comment: 'Tooltip on the passive badge on your own screen-share tile when the encoder is limited by CPU.', +}); +export const STREAM_LIMITED_BY_BANDWIDTH_DESCRIPTOR = msg({ + message: 'Your network cannot keep up, so viewers are getting fewer frames than you asked for.', + comment: 'Tooltip on the passive badge on your own screen-share tile when the encoder is limited by bandwidth.', +}); +export const STREAM_LIMITED_DESCRIPTOR = msg({ + message: 'Something is limiting this stream, so viewers are getting fewer frames than you asked for.', + comment: + 'Fallback tooltip on the passive badge on your own screen-share tile when the encoder reports no specific limitation.', +}); export const MUTED_DESCRIPTOR = msg({ message: 'Muted', comment: "Status badge on a voice participant tile. The participant's microphone is muted.", @@ -126,6 +146,12 @@ export interface VoiceParticipantTileInnerProps { showParticipantMetadata: boolean; } +export function getStreamUnderperformanceLabel(i18n: I18n, reason: ScreenShareUnderperformanceReason): string { + if (reason === 'cpu') return i18n._(STREAM_LIMITED_BY_CPU_DESCRIPTOR); + if (reason === 'bandwidth') return i18n._(STREAM_LIMITED_BY_BANDWIDTH_DESCRIPTOR); + return i18n._(STREAM_LIMITED_DESCRIPTOR); +} + export function isCameraSource(source: unknown) { return source === VoiceTrackSource.Camera; } diff --git a/fluxer_app/src/features/voice/engine/ScreenShareUnderperformance.ts b/fluxer_app/src/features/voice/engine/ScreenShareUnderperformance.ts new file mode 100644 index 000000000..d751b9db9 --- /dev/null +++ b/fluxer_app/src/features/voice/engine/ScreenShareUnderperformance.ts @@ -0,0 +1,128 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +export const SCREEN_SHARE_UNDERPERFORMANCE_SAMPLE_INTERVAL_MS = 1000; + +const SHORT_WINDOW_SAMPLES = 15; +const LONG_WINDOW_SAMPLES = 30; +const MIN_WINDOW_SAMPLES = 15; +const MIN_ENCODE_FRAME_RATE_FLOOR = 8; +const MIN_LIMITED_SAMPLE_RATIO = 0.5; +const QUALITY_CHANGE_SUPPRESSION_MS = 20_000; +const MAX_APPLIED_FRAME_RATE_RECORDS = 8; + +export type ScreenShareQualityLimitationReason = 'none' | 'cpu' | 'bandwidth' | 'other' | 'unknown'; + +export type ScreenShareUnderperformanceReason = 'cpu' | 'bandwidth' | 'other'; + +export interface ScreenShareUnderperformanceSample { + encodeFrameRate: number; + limitationReason: ScreenShareQualityLimitationReason; +} + +export interface ScreenShareUnderperformanceObservation { + sample: ScreenShareUnderperformanceSample; + requestedFrameRate: number; + trackId: string; + qualityChangeAt: number; + now: number; +} + +let deliberateQualityChangeAt = 0; +const appliedFrameRateByTrackId = new Map(); + +export function noteDeliberateScreenShareQualityChange(): void { + deliberateQualityChangeAt = Date.now(); +} + +export function getDeliberateScreenShareQualityChangeAt(): number { + return deliberateQualityChangeAt; +} + +export function noteAppliedScreenShareFrameRate(trackId: string, frameRate: number): void { + appliedFrameRateByTrackId.delete(trackId); + appliedFrameRateByTrackId.set(trackId, frameRate); + while (appliedFrameRateByTrackId.size > MAX_APPLIED_FRAME_RATE_RECORDS) { + const oldest = appliedFrameRateByTrackId.keys().next().value; + if (oldest === undefined) break; + appliedFrameRateByTrackId.delete(oldest); + } +} + +export function getAppliedScreenShareFrameRate(trackId: string): number | null { + return appliedFrameRateByTrackId.get(trackId) ?? null; +} + +export function parseScreenShareQualityLimitationReason(value: unknown): ScreenShareQualityLimitationReason { + if (value === 'none' || value === 'cpu' || value === 'bandwidth' || value === 'other') { + return value; + } + return 'unknown'; +} + +function getScreenShareEncodeFrameRateFloor(requestedFrameRate: number): number { + return Math.max(MIN_ENCODE_FRAME_RATE_FLOOR, requestedFrameRate / 2); +} + +function evaluateWindow( + samples: ReadonlyArray, + windowSamples: number, + requestedFrameRate: number, +): ScreenShareUnderperformanceReason | null { + const window = samples.slice(-windowSamples); + if (window.length < MIN_WINDOW_SAMPLES) return null; + let totalFrameRate = 0; + let cpuSamples = 0; + let bandwidthSamples = 0; + let otherSamples = 0; + for (const sample of window) { + totalFrameRate += sample.encodeFrameRate; + if (sample.limitationReason === 'cpu') { + cpuSamples += 1; + } else if (sample.limitationReason === 'bandwidth') { + bandwidthSamples += 1; + } else if (sample.limitationReason === 'other') { + otherSamples += 1; + } + } + if (totalFrameRate / window.length >= getScreenShareEncodeFrameRateFloor(requestedFrameRate)) return null; + if (cpuSamples + bandwidthSamples + otherSamples < window.length * MIN_LIMITED_SAMPLE_RATIO) return null; + if (cpuSamples >= bandwidthSamples && cpuSamples >= otherSamples) return 'cpu'; + if (bandwidthSamples >= otherSamples) return 'bandwidth'; + return 'other'; +} + +export class ScreenShareUnderperformanceTracker { + private samples: Array = []; + private requestedFrameRate: number | null = null; + private trackId: string | null = null; + private qualityChangeAt: number | null = null; + + reset(): void { + this.samples = []; + this.requestedFrameRate = null; + this.trackId = null; + this.qualityChangeAt = null; + } + + observe(observation: ScreenShareUnderperformanceObservation): ScreenShareUnderperformanceReason | null { + if ( + observation.requestedFrameRate !== this.requestedFrameRate || + observation.trackId !== this.trackId || + observation.qualityChangeAt !== this.qualityChangeAt + ) { + this.samples = []; + this.requestedFrameRate = observation.requestedFrameRate; + this.trackId = observation.trackId; + this.qualityChangeAt = observation.qualityChangeAt; + } + this.samples.push(observation.sample); + if (this.samples.length > LONG_WINDOW_SAMPLES) { + this.samples.splice(0, this.samples.length - LONG_WINDOW_SAMPLES); + } + if (observation.now - observation.qualityChangeAt < QUALITY_CHANGE_SUPPRESSION_MS) return null; + return ( + evaluateWindow(this.samples, SHORT_WINDOW_SAMPLES, observation.requestedFrameRate) ?? + evaluateWindow(this.samples, LONG_WINDOW_SAMPLES, observation.requestedFrameRate) + ); + } +} 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 493b34bfe..bd2b30715 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 @@ -3,6 +3,7 @@ import {getDesktopTroubleshootingSettings} from '@app/features/devtools/utils/DesktopTroubleshootingUtils'; import {Logger} from '@app/features/platform/utils/AppLogger'; import ScreenShareCodecNegotiation from '@app/features/voice/engine/ScreenShareCodecNegotiation'; +import {noteAppliedScreenShareFrameRate} from '@app/features/voice/engine/ScreenShareUnderperformance'; import SoftwareEncoderWarning from '@app/features/voice/state/SoftwareEncoderWarning'; import VoiceSettings from '@app/features/voice/state/VoiceSettings'; import { @@ -372,6 +373,10 @@ export async function enforceScreenShareSenderParameters( const scalabilityMode = getEffectiveScreenShareScalabilityMode(preferredVideoCodec, publishOptions, { respectExplicit: !codecOverride || codecOverride === publishOptions?.videoCodec, }); + const senderTrackId = sender.track?.id; + if (senderTrackId && screenShareEncoding?.maxFramerate !== undefined) { + noteAppliedScreenShareFrameRate(senderTrackId, screenShareEncoding.maxFramerate); + } try { const params = sender.getParameters(); const encodings = params.encodings?.length ? params.encodings : [{}];