fix(player): load subtitle sidecars with media

close #1583
This commit is contained in:
edde746
2026-07-17 23:09:07 +02:00
parent 70cd7e8c67
commit a1b6a89714
77 changed files with 2879 additions and 699 deletions
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Оригинал",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Транскодирането не е налично — пуска се оригиналното качество",
"subtitleUnavailableFallback": "Избраните субтитри не можаха да се заредят — възпроизвеждането продължава без субтитри",
"pipButton": "Режим картина в картината",
"aspectRatioButton": "Съотношение на страните",
"ambientLighting": "Амбиентно осветление",
@@ -524,11 +525,11 @@
"searchSubtitles": "Търсене на субтитри",
"language": "Език",
"noSubtitlesFound": "Не са намерени субтитри",
"downloadedSubtitle": "Изтеглени субтитри",
"noSubtitlesAvailable": "Няма налични субтитри",
"noAudioTracksAvailable": "Няма налични аудио писти",
"noTracksAvailable": "Няма налични писти",
"subtitleDownloaded": "Субтитърът е изтеглен",
"subtitleDownloadedNotApplied": "Субтитрите са изтеглени, но не можаха да бъдат избрани",
"subtitleDownloadFailed": "Неуспешно изтегляне на субтитър",
"searchLanguages": "Търсене на езици..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transkodning utilgængelig — afspiller original kvalitet",
"subtitleUnavailableFallback": "De valgte undertekster kunne ikke indlæses — afspilningen fortsætter uden undertekster",
"pipButton": "Billede-i-billede-tilstand",
"aspectRatioButton": "Billedformat",
"ambientLighting": "Omgivelsesbelysning",
@@ -524,11 +525,11 @@
"searchSubtitles": "Søg undertekster",
"language": "Sprog",
"noSubtitlesFound": "Ingen undertekster fundet",
"downloadedSubtitle": "Downloadet",
"noSubtitlesAvailable": "Ingen undertekster tilgængelige",
"noAudioTracksAvailable": "Ingen lydspor tilgængelige",
"noTracksAvailable": "Ingen spor tilgængelige",
"subtitleDownloaded": "Undertekst downloadet",
"subtitleDownloadedNotApplied": "Underteksten blev downloadet, men kunne ikke vælges",
"subtitleDownloadFailed": "Kunne ikke downloade undertekst",
"searchLanguages": "Søg sprog..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transkodierung nicht verfügbar — Wiedergabe in Originalqualität",
"subtitleUnavailableFallback": "Die ausgewählten Untertitel konnten nicht geladen werden — Wiedergabe ohne Untertitel wird fortgesetzt",
"pipButton": "Bild-in-Bild Modus",
"aspectRatioButton": "Seitenverhältnis",
"ambientLighting": "Umgebungsbeleuchtung",
@@ -524,11 +525,11 @@
"searchSubtitles": "Untertitel suchen",
"language": "Sprache",
"noSubtitlesFound": "Keine Untertitel gefunden",
"downloadedSubtitle": "Heruntergeladen",
"noSubtitlesAvailable": "Keine Untertitel verfügbar",
"noAudioTracksAvailable": "Keine Audiospuren verfügbar",
"noTracksAvailable": "Keine Spuren verfügbar",
"subtitleDownloaded": "Untertitel heruntergeladen",
"subtitleDownloadedNotApplied": "Der Untertitel wurde heruntergeladen, konnte aber nicht ausgewählt werden",
"subtitleDownloadFailed": "Untertitel konnte nicht heruntergeladen werden",
"searchLanguages": "Sprachen suchen..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcoding unavailable — playing original quality",
"subtitleUnavailableFallback": "Selected subtitles could not be loaded — continuing without subtitles",
"pipButton": "Picture-in-Picture mode",
"aspectRatioButton": "Aspect ratio",
"ambientLighting": "Ambient lighting",
@@ -524,11 +525,11 @@
"searchSubtitles": "Search Subtitles",
"language": "Language",
"noSubtitlesFound": "No subtitles found",
"downloadedSubtitle": "Downloaded",
"noSubtitlesAvailable": "No subtitles available",
"noAudioTracksAvailable": "No audio tracks available",
"noTracksAvailable": "No tracks available",
"subtitleDownloaded": "Subtitle downloaded",
"subtitleDownloadedNotApplied": "Subtitle downloaded, but it could not be selected",
"subtitleDownloadFailed": "Failed to download subtitle",
"searchLanguages": "Search languages..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcodificación no disponible — reproduciendo calidad original",
"subtitleUnavailableFallback": "No se pudieron cargar los subtítulos seleccionados — continuando sin subtítulos",
"pipButton": "Modo PiP (Imagen en Imagen)",
"aspectRatioButton": "Relación de aspecto",
"ambientLighting": "Iluminación ambiental",
@@ -524,11 +525,11 @@
"searchSubtitles": "Buscar subtítulos",
"language": "Idioma",
"noSubtitlesFound": "No se encontraron subtítulos",
"downloadedSubtitle": "Descargado",
"noSubtitlesAvailable": "No hay subtítulos disponibles",
"noAudioTracksAvailable": "No hay pistas de audio disponibles",
"noTracksAvailable": "No hay pistas disponibles",
"subtitleDownloaded": "Subtítulo descargado",
"subtitleDownloadedNotApplied": "El subtítulo se descargó, pero no se pudo seleccionar",
"subtitleDownloadFailed": "Error al descargar subtítulo",
"searchLanguages": "Buscar idiomas..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Originale",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcodage indisponible — lecture en qualité originale",
"subtitleUnavailableFallback": "Impossible de charger les sous-titres sélectionnés — poursuite de la lecture sans sous-titres",
"pipButton": "Mode PiP (Picture-in-Picture)",
"aspectRatioButton": "Format d'image",
"ambientLighting": "Éclairage ambiant",
@@ -524,11 +525,11 @@
"searchSubtitles": "Rechercher des sous-titres",
"language": "Langue",
"noSubtitlesFound": "Aucun sous-titre trouvé",
"downloadedSubtitle": "Téléchargé",
"noSubtitlesAvailable": "Aucun sous-titre disponible",
"noAudioTracksAvailable": "Aucune piste audio disponible",
"noTracksAvailable": "Aucune piste disponible",
"subtitleDownloaded": "Sous-titre téléchargé",
"subtitleDownloadedNotApplied": "Le sous-titre a été téléchargé, mais na pas pu être sélectionné",
"subtitleDownloadFailed": "Échec du téléchargement du sous-titre",
"searchLanguages": "Rechercher des langues..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Originale",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcodifica non disponibile — riproduzione in qualità originale",
"subtitleUnavailableFallback": "Impossibile caricare i sottotitoli selezionati — la riproduzione continua senza sottotitoli",
"pipButton": "Modalità Picture-in-Picture",
"aspectRatioButton": "Proporzioni",
"ambientLighting": "Illuminazione ambientale",
@@ -524,11 +525,11 @@
"searchSubtitles": "Cerca sottotitoli",
"language": "Lingua",
"noSubtitlesFound": "Nessun sottotitolo trovato",
"downloadedSubtitle": "Scaricato",
"noSubtitlesAvailable": "Nessun sottotitolo disponibile",
"noAudioTracksAvailable": "Nessuna traccia audio disponibile",
"noTracksAvailable": "Nessuna traccia disponibile",
"subtitleDownloaded": "Sottotitolo scaricato",
"subtitleDownloadedNotApplied": "Il sottotitolo è stato scaricato, ma non è stato possibile selezionarlo",
"subtitleDownloadFailed": "Impossibile scaricare il sottotitolo",
"searchLanguages": "Cerca lingue..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "オリジナル",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "トランスコードは利用できません — オリジナル画質で再生中",
"subtitleUnavailableFallback": "選択した字幕を読み込めませんでした — 字幕なしで再生を続けます",
"pipButton": "ピクチャーインピクチャーモード",
"aspectRatioButton": "アスペクト比",
"ambientLighting": "アンビエントライティング",
@@ -524,11 +525,11 @@
"searchSubtitles": "字幕を検索",
"language": "言語",
"noSubtitlesFound": "字幕が見つかりません",
"downloadedSubtitle": "ダウンロード済み",
"noSubtitlesAvailable": "利用可能な字幕はありません",
"noAudioTracksAvailable": "利用可能な音声トラックはありません",
"noTracksAvailable": "利用可能なトラックはありません",
"subtitleDownloaded": "字幕をダウンロードしました",
"subtitleDownloadedNotApplied": "字幕はダウンロードされましたが、選択できませんでした",
"subtitleDownloadFailed": "字幕のダウンロードに失敗しました",
"searchLanguages": "言語を検索..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "원본",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "트랜스코딩을 사용할 수 없음 — 원본 화질로 재생",
"subtitleUnavailableFallback": "선택한 자막을 불러올 수 없어 자막 없이 재생을 계속합니다",
"pipButton": "픽처 인 픽처 모드",
"aspectRatioButton": "화면비율",
"ambientLighting": "주변 조명",
@@ -524,11 +525,11 @@
"searchSubtitles": "자막 검색",
"language": "언어",
"noSubtitlesFound": "자막을 찾을 수 없습니다",
"downloadedSubtitle": "다운로드됨",
"noSubtitlesAvailable": "사용 가능한 자막 없음",
"noAudioTracksAvailable": "사용 가능한 오디오 트랙 없음",
"noTracksAvailable": "사용 가능한 트랙 없음",
"subtitleDownloaded": "자막이 다운로드되었습니다",
"subtitleDownloadedNotApplied": "자막을 다운로드했지만 선택할 수 없습니다",
"subtitleDownloadFailed": "자막 다운로드에 실패했습니다",
"searchLanguages": "언어 검색..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transkoding utilgjengelig — spiller av i original kvalitet",
"subtitleUnavailableFallback": "De valgte undertekstene kunne ikke lastes inn — avspillingen fortsetter uten undertekster",
"pipButton": "Bilde-i-bilde-modus",
"aspectRatioButton": "Sideforhold",
"ambientLighting": "Omgivelseslys",
@@ -524,11 +525,11 @@
"searchSubtitles": "Søk etter undertekster",
"language": "Språk",
"noSubtitlesFound": "Ingen undertekster funnet",
"downloadedSubtitle": "Lastet ned",
"noSubtitlesAvailable": "Ingen undertekster tilgjengelig",
"noAudioTracksAvailable": "Ingen lydspor tilgjengelig",
"noTracksAvailable": "Ingen spor tilgjengelig",
"subtitleDownloaded": "Undertekst lastet ned",
"subtitleDownloadedNotApplied": "Underteksten ble lastet ned, men kunne ikke velges",
"subtitleDownloadFailed": "Kunne ikke laste ned undertekst",
"searchLanguages": "Søk etter språk..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Origineel",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld",
"subtitleUnavailableFallback": "De geselecteerde ondertitels konden niet worden geladen — afspelen gaat door zonder ondertitels",
"pipButton": "Beeld-in-beeld modus",
"aspectRatioButton": "Beeldverhouding",
"ambientLighting": "Omgevingsverlichting",
@@ -524,11 +525,11 @@
"searchSubtitles": "Ondertitels zoeken",
"language": "Taal",
"noSubtitlesFound": "Geen ondertitels gevonden",
"downloadedSubtitle": "Gedownload",
"noSubtitlesAvailable": "Geen ondertitels beschikbaar",
"noAudioTracksAvailable": "Geen audiotracks beschikbaar",
"noTracksAvailable": "Geen tracks beschikbaar",
"subtitleDownloaded": "Ondertitel gedownload",
"subtitleDownloadedNotApplied": "De ondertiteling is gedownload, maar kon niet worden geselecteerd",
"subtitleDownloadFailed": "Ondertitel downloaden mislukt",
"searchLanguages": "Talen zoeken..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Oryginalna",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości",
"subtitleUnavailableFallback": "Nie udało się wczytać wybranych napisów — odtwarzanie jest kontynuowane bez napisów",
"pipButton": "Tryb obraz w obrazie",
"aspectRatioButton": "Proporcje",
"ambientLighting": "Oświetlenie otoczenia",
@@ -524,11 +525,11 @@
"searchSubtitles": "Szukaj napisów",
"language": "Język",
"noSubtitlesFound": "Nie znaleziono napisów",
"downloadedSubtitle": "Pobrano",
"noSubtitlesAvailable": "Brak dostępnych napisów",
"noAudioTracksAvailable": "Brak dostępnych ścieżek audio",
"noTracksAvailable": "Brak dostępnych ścieżek",
"subtitleDownloaded": "Napisy pobrane",
"subtitleDownloadedNotApplied": "Napisy zostały pobrane, ale nie można ich było wybrać",
"subtitleDownloadFailed": "Nie udało się pobrać napisów",
"searchLanguages": "Szukaj języków..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transcodificação indisponível — reproduzindo qualidade original",
"subtitleUnavailableFallback": "Não foi possível carregar as legendas selecionadas — a reprodução continuará sem legendas",
"pipButton": "Modo Picture-in-Picture",
"aspectRatioButton": "Proporção",
"ambientLighting": "Iluminação ambiente",
@@ -524,11 +525,11 @@
"searchSubtitles": "Pesquisar legendas",
"language": "Idioma",
"noSubtitlesFound": "Nenhuma legenda encontrada",
"downloadedSubtitle": "Baixado",
"noSubtitlesAvailable": "Nenhuma legenda disponível",
"noAudioTracksAvailable": "Nenhuma faixa de áudio disponível",
"noTracksAvailable": "Nenhuma faixa disponível",
"subtitleDownloaded": "Legenda baixada",
"subtitleDownloadedNotApplied": "A legenda foi transferida, mas não foi possível selecioná-la",
"subtitleDownloadFailed": "Falha ao baixar legenda",
"searchLanguages": "Pesquisar idiomas..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Оригинал",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Транскодирование недоступно — воспроизведение в оригинальном качестве",
"subtitleUnavailableFallback": "Не удалось загрузить выбранные субтитры — воспроизведение продолжится без субтитров",
"pipButton": "Режим «картинка в картинке»",
"aspectRatioButton": "Соотношение сторон",
"ambientLighting": "Фоновая подсветка",
@@ -524,11 +525,11 @@
"searchSubtitles": "Поиск субтитров",
"language": "Язык",
"noSubtitlesFound": "Субтитры не найдены",
"downloadedSubtitle": "Загружено",
"noSubtitlesAvailable": "Нет доступных субтитров",
"noAudioTracksAvailable": "Нет доступных аудиодорожек",
"noTracksAvailable": "Нет доступных дорожек",
"subtitleDownloaded": "Субтитры загружены",
"subtitleDownloadedNotApplied": "Субтитры загружены, но их не удалось выбрать",
"subtitleDownloadFailed": "Не удалось загрузить субтитры",
"searchLanguages": "Поиск языков..."
},
+1 -1
View File
@@ -4,7 +4,7 @@
/// To regenerate, run: `dart run slang`
///
/// Locales: 16
/// Strings: 22835 (1427 per locale)
/// Strings: 22851 (1428 per locale)
// coverage:ignore-file
// ignore_for_file: type=lint, unused_import
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsBg extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Оригинал';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Транскодирането не е налично — пуска се оригиналното качество';
@override String get subtitleUnavailableFallback => 'Избраните субтитри не можаха да се заредят — възпроизвеждането продължава без субтитри';
@override String get pipButton => 'Режим картина в картината';
@override String get aspectRatioButton => 'Съотношение на страните';
@override String get ambientLighting => 'Амбиентно осветление';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsBg extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Търсене на субтитри';
@override String get language => 'Език';
@override String get noSubtitlesFound => 'Не са намерени субтитри';
@override String get downloadedSubtitle => 'Изтеглени субтитри';
@override String get noSubtitlesAvailable => 'Няма налични субтитри';
@override String get noAudioTracksAvailable => 'Няма налични аудио писти';
@override String get noTracksAvailable => 'Няма налични писти';
@override String get subtitleDownloaded => 'Субтитърът е изтеглен';
@override String get subtitleDownloadedNotApplied => 'Субтитрите са изтеглени, но не можаха да бъдат избрани';
@override String get subtitleDownloadFailed => 'Неуспешно изтегляне на субтитър';
@override String get searchLanguages => 'Търсене на езици...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsBg {
'videoControls.qualityOriginal' => 'Оригинал',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Транскодирането не е налично — пуска се оригиналното качество',
'videoControls.subtitleUnavailableFallback' => 'Избраните субтитри не можаха да се заредят — възпроизвеждането продължава без субтитри',
'videoControls.pipButton' => 'Режим картина в картината',
'videoControls.aspectRatioButton' => 'Съотношение на страните',
'videoControls.ambientLighting' => 'Амбиентно осветление',
@@ -2616,11 +2618,11 @@ extension on TranslationsBg {
'videoControls.searchSubtitles' => 'Търсене на субтитри',
'videoControls.language' => 'Език',
'videoControls.noSubtitlesFound' => 'Не са намерени субтитри',
'videoControls.downloadedSubtitle' => 'Изтеглени субтитри',
'videoControls.noSubtitlesAvailable' => 'Няма налични субтитри',
'videoControls.noAudioTracksAvailable' => 'Няма налични аудио писти',
'videoControls.noTracksAvailable' => 'Няма налични писти',
'videoControls.subtitleDownloaded' => 'Субтитърът е изтеглен',
'videoControls.subtitleDownloadedNotApplied' => 'Субтитрите са изтеглени, но не можаха да бъдат избрани',
'videoControls.subtitleDownloadFailed' => 'Неуспешно изтегляне на субтитър',
'videoControls.searchLanguages' => 'Търсене на езици...',
'messages.markedAsWatched' => 'Маркирано като гледано',
@@ -2633,9 +2635,9 @@ extension on TranslationsBg {
'messages.errorLoading' => ({required Object error}) => 'Грешка: ${error}',
'messages.streamInterrupted' => 'Потокът прекъсна. Натиснете „Пусни“ или превъртете, за да опитате отново.',
'messages.liveStreamInterrupted' => 'Потокът на живо прекъсна. Натиснете „Пусни“, за да опитате отново.',
'messages.fileInfoNotAvailable' => 'Информацията за файла не е налична',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Информацията за файла не е налична',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Грешка при зареждане на информация за файла: ${error}',
'messages.errorLoadingSeries' => 'Грешка при зареждане на сериала',
'messages.musicNotSupported' => 'Възпроизвеждането на музика все още не се поддържа',
@@ -3147,9 +3149,9 @@ extension on TranslationsBg {
'downloads.title' => 'Изтегляния',
'downloads.manage' => 'Управление',
'downloads.tvShows' => 'ТВ сериали',
'downloads.movies' => 'Филми',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Филми',
'downloads.music' => 'Музика',
'downloads.tracksQueued' => ({required Object count}) => '${count} песни в опашката за изтегляне',
'downloads.noDownloads' => 'Все още няма изтегляния',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsDa extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transkodning utilgængelig — afspiller original kvalitet';
@override String get subtitleUnavailableFallback => 'De valgte undertekster kunne ikke indlæses — afspilningen fortsætter uden undertekster';
@override String get pipButton => 'Billede-i-billede-tilstand';
@override String get aspectRatioButton => 'Billedformat';
@override String get ambientLighting => 'Omgivelsesbelysning';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsDa extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Søg undertekster';
@override String get language => 'Sprog';
@override String get noSubtitlesFound => 'Ingen undertekster fundet';
@override String get downloadedSubtitle => 'Downloadet';
@override String get noSubtitlesAvailable => 'Ingen undertekster tilgængelige';
@override String get noAudioTracksAvailable => 'Ingen lydspor tilgængelige';
@override String get noTracksAvailable => 'Ingen spor tilgængelige';
@override String get subtitleDownloaded => 'Undertekst downloadet';
@override String get subtitleDownloadedNotApplied => 'Underteksten blev downloadet, men kunne ikke vælges';
@override String get subtitleDownloadFailed => 'Kunne ikke downloade undertekst';
@override String get searchLanguages => 'Søg sprog...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsDa {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transkodning utilgængelig — afspiller original kvalitet',
'videoControls.subtitleUnavailableFallback' => 'De valgte undertekster kunne ikke indlæses — afspilningen fortsætter uden undertekster',
'videoControls.pipButton' => 'Billede-i-billede-tilstand',
'videoControls.aspectRatioButton' => 'Billedformat',
'videoControls.ambientLighting' => 'Omgivelsesbelysning',
@@ -2616,11 +2618,11 @@ extension on TranslationsDa {
'videoControls.searchSubtitles' => 'Søg undertekster',
'videoControls.language' => 'Sprog',
'videoControls.noSubtitlesFound' => 'Ingen undertekster fundet',
'videoControls.downloadedSubtitle' => 'Downloadet',
'videoControls.noSubtitlesAvailable' => 'Ingen undertekster tilgængelige',
'videoControls.noAudioTracksAvailable' => 'Ingen lydspor tilgængelige',
'videoControls.noTracksAvailable' => 'Ingen spor tilgængelige',
'videoControls.subtitleDownloaded' => 'Undertekst downloadet',
'videoControls.subtitleDownloadedNotApplied' => 'Underteksten blev downloadet, men kunne ikke vælges',
'videoControls.subtitleDownloadFailed' => 'Kunne ikke downloade undertekst',
'videoControls.searchLanguages' => 'Søg sprog...',
'messages.markedAsWatched' => 'Markeret som set',
@@ -2633,9 +2635,9 @@ extension on TranslationsDa {
'messages.errorLoading' => ({required Object error}) => 'Fejl: ${error}',
'messages.streamInterrupted' => 'Streamen blev afbrudt. Tryk på afspil, eller spol for at prøve igen.',
'messages.liveStreamInterrupted' => 'Livestreamen blev afbrudt. Tryk på afspil for at prøve igen.',
'messages.fileInfoNotAvailable' => 'Filinfo ikke tilgængelig',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Filinfo ikke tilgængelig',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fejl ved indlæsning af filinfo: ${error}',
'messages.errorLoadingSeries' => 'Fejl ved indlæsning af serie',
'messages.musicNotSupported' => 'Musikafspilning understøttes endnu ikke',
@@ -3147,9 +3149,9 @@ extension on TranslationsDa {
'downloads.title' => 'Downloads',
'downloads.manage' => 'Administrer',
'downloads.tvShows' => 'TV-serier',
'downloads.movies' => 'Film',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Film',
'downloads.music' => 'Musik',
'downloads.tracksQueued' => ({required Object count}) => '${count} numre i kø til download',
'downloads.noDownloads' => 'Ingen downloads endnu',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsDe extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transkodierung nicht verfügbar — Wiedergabe in Originalqualität';
@override String get subtitleUnavailableFallback => 'Die ausgewählten Untertitel konnten nicht geladen werden — Wiedergabe ohne Untertitel wird fortgesetzt';
@override String get pipButton => 'Bild-in-Bild Modus';
@override String get aspectRatioButton => 'Seitenverhältnis';
@override String get ambientLighting => 'Umgebungsbeleuchtung';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsDe extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Untertitel suchen';
@override String get language => 'Sprache';
@override String get noSubtitlesFound => 'Keine Untertitel gefunden';
@override String get downloadedSubtitle => 'Heruntergeladen';
@override String get noSubtitlesAvailable => 'Keine Untertitel verfügbar';
@override String get noAudioTracksAvailable => 'Keine Audiospuren verfügbar';
@override String get noTracksAvailable => 'Keine Spuren verfügbar';
@override String get subtitleDownloaded => 'Untertitel heruntergeladen';
@override String get subtitleDownloadedNotApplied => 'Der Untertitel wurde heruntergeladen, konnte aber nicht ausgewählt werden';
@override String get subtitleDownloadFailed => 'Untertitel konnte nicht heruntergeladen werden';
@override String get searchLanguages => 'Sprachen suchen...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsDe {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transkodierung nicht verfügbar — Wiedergabe in Originalqualität',
'videoControls.subtitleUnavailableFallback' => 'Die ausgewählten Untertitel konnten nicht geladen werden — Wiedergabe ohne Untertitel wird fortgesetzt',
'videoControls.pipButton' => 'Bild-in-Bild Modus',
'videoControls.aspectRatioButton' => 'Seitenverhältnis',
'videoControls.ambientLighting' => 'Umgebungsbeleuchtung',
@@ -2616,11 +2618,11 @@ extension on TranslationsDe {
'videoControls.searchSubtitles' => 'Untertitel suchen',
'videoControls.language' => 'Sprache',
'videoControls.noSubtitlesFound' => 'Keine Untertitel gefunden',
'videoControls.downloadedSubtitle' => 'Heruntergeladen',
'videoControls.noSubtitlesAvailable' => 'Keine Untertitel verfügbar',
'videoControls.noAudioTracksAvailable' => 'Keine Audiospuren verfügbar',
'videoControls.noTracksAvailable' => 'Keine Spuren verfügbar',
'videoControls.subtitleDownloaded' => 'Untertitel heruntergeladen',
'videoControls.subtitleDownloadedNotApplied' => 'Der Untertitel wurde heruntergeladen, konnte aber nicht ausgewählt werden',
'videoControls.subtitleDownloadFailed' => 'Untertitel konnte nicht heruntergeladen werden',
'videoControls.searchLanguages' => 'Sprachen suchen...',
'messages.markedAsWatched' => 'Als gesehen markiert',
@@ -2633,9 +2635,9 @@ extension on TranslationsDe {
'messages.errorLoading' => ({required Object error}) => 'Fehler: ${error}',
'messages.streamInterrupted' => 'Der Stream wurde unterbrochen. Drücke auf Wiedergabe oder spule, um es erneut zu versuchen.',
'messages.liveStreamInterrupted' => 'Der Livestream wurde unterbrochen. Drücke auf Wiedergabe, um es erneut zu versuchen.',
'messages.fileInfoNotAvailable' => 'Dateiinfo nicht verfügbar',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Dateiinfo nicht verfügbar',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fehler beim Laden der Dateiinfo: ${error}',
'messages.errorLoadingSeries' => 'Fehler beim Laden der Serie',
'messages.musicNotSupported' => 'Musikwiedergabe wird noch nicht unterstützt',
@@ -3147,9 +3149,9 @@ extension on TranslationsDe {
'downloads.title' => 'Downloads',
'downloads.manage' => 'Verwalten',
'downloads.tvShows' => 'Serien',
'downloads.movies' => 'Filme',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Filme',
'downloads.music' => 'Musik',
'downloads.tracksQueued' => ({required Object count}) => '${count} Titel zum Download in Warteschlange',
'downloads.noDownloads' => 'Noch keine Downloads',
+10 -6
View File
@@ -1531,6 +1531,9 @@ class TranslationsVideoControlsEn {
/// en: 'Transcoding unavailable — playing original quality'
String get transcodeUnavailableFallback => 'Transcoding unavailable — playing original quality';
/// en: 'Selected subtitles could not be loaded — continuing without subtitles'
String get subtitleUnavailableFallback => 'Selected subtitles could not be loaded — continuing without subtitles';
/// en: 'Picture-in-Picture mode'
String get pipButton => 'Picture-in-Picture mode';
@@ -1605,9 +1608,6 @@ class TranslationsVideoControlsEn {
/// en: 'No subtitles found'
String get noSubtitlesFound => 'No subtitles found';
/// en: 'Downloaded'
String get downloadedSubtitle => 'Downloaded';
/// en: 'No subtitles available'
String get noSubtitlesAvailable => 'No subtitles available';
@@ -1620,6 +1620,9 @@ class TranslationsVideoControlsEn {
/// en: 'Subtitle downloaded'
String get subtitleDownloaded => 'Subtitle downloaded';
/// en: 'Subtitle downloaded, but it could not be selected'
String get subtitleDownloadedNotApplied => 'Subtitle downloaded, but it could not be selected';
/// en: 'Failed to download subtitle'
String get subtitleDownloadFailed => 'Failed to download subtitle';
@@ -5440,6 +5443,7 @@ extension on Translations {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcoding unavailable — playing original quality',
'videoControls.subtitleUnavailableFallback' => 'Selected subtitles could not be loaded — continuing without subtitles',
'videoControls.pipButton' => 'Picture-in-Picture mode',
'videoControls.aspectRatioButton' => 'Aspect ratio',
'videoControls.ambientLighting' => 'Ambient lighting',
@@ -5471,11 +5475,11 @@ extension on Translations {
'videoControls.searchSubtitles' => 'Search Subtitles',
'videoControls.language' => 'Language',
'videoControls.noSubtitlesFound' => 'No subtitles found',
'videoControls.downloadedSubtitle' => 'Downloaded',
'videoControls.noSubtitlesAvailable' => 'No subtitles available',
'videoControls.noAudioTracksAvailable' => 'No audio tracks available',
'videoControls.noTracksAvailable' => 'No tracks available',
'videoControls.subtitleDownloaded' => 'Subtitle downloaded',
'videoControls.subtitleDownloadedNotApplied' => 'Subtitle downloaded, but it could not be selected',
'videoControls.subtitleDownloadFailed' => 'Failed to download subtitle',
'videoControls.searchLanguages' => 'Search languages...',
'messages.markedAsWatched' => 'Marked as watched',
@@ -5488,9 +5492,9 @@ extension on Translations {
'messages.errorLoading' => ({required Object error}) => 'Error: ${error}',
'messages.streamInterrupted' => 'The stream was interrupted. Press play or seek to retry.',
'messages.liveStreamInterrupted' => 'The live stream was interrupted. Press play to retry.',
'messages.fileInfoNotAvailable' => 'File information not available',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'File information not available',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Error loading file info: ${error}',
'messages.errorLoadingSeries' => 'Error loading series',
'messages.musicNotSupported' => 'Music playback is not yet supported',
@@ -6002,9 +6006,9 @@ extension on Translations {
'downloads.title' => 'Downloads',
'downloads.manage' => 'Manage',
'downloads.tvShows' => 'TV Shows',
'downloads.movies' => 'Movies',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Movies',
'downloads.music' => 'Music',
'downloads.tracksQueued' => ({required Object count}) => '${count} tracks queued for download',
'downloads.noDownloads' => 'No downloads yet',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsEs extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transcodificación no disponible — reproduciendo calidad original';
@override String get subtitleUnavailableFallback => 'No se pudieron cargar los subtítulos seleccionados — continuando sin subtítulos';
@override String get pipButton => 'Modo PiP (Imagen en Imagen)';
@override String get aspectRatioButton => 'Relación de aspecto';
@override String get ambientLighting => 'Iluminación ambiental';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsEs extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Buscar subtítulos';
@override String get language => 'Idioma';
@override String get noSubtitlesFound => 'No se encontraron subtítulos';
@override String get downloadedSubtitle => 'Descargado';
@override String get noSubtitlesAvailable => 'No hay subtítulos disponibles';
@override String get noAudioTracksAvailable => 'No hay pistas de audio disponibles';
@override String get noTracksAvailable => 'No hay pistas disponibles';
@override String get subtitleDownloaded => 'Subtítulo descargado';
@override String get subtitleDownloadedNotApplied => 'El subtítulo se descargó, pero no se pudo seleccionar';
@override String get subtitleDownloadFailed => 'Error al descargar subtítulo';
@override String get searchLanguages => 'Buscar idiomas...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsEs {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcodificación no disponible — reproduciendo calidad original',
'videoControls.subtitleUnavailableFallback' => 'No se pudieron cargar los subtítulos seleccionados — continuando sin subtítulos',
'videoControls.pipButton' => 'Modo PiP (Imagen en Imagen)',
'videoControls.aspectRatioButton' => 'Relación de aspecto',
'videoControls.ambientLighting' => 'Iluminación ambiental',
@@ -2616,11 +2618,11 @@ extension on TranslationsEs {
'videoControls.searchSubtitles' => 'Buscar subtítulos',
'videoControls.language' => 'Idioma',
'videoControls.noSubtitlesFound' => 'No se encontraron subtítulos',
'videoControls.downloadedSubtitle' => 'Descargado',
'videoControls.noSubtitlesAvailable' => 'No hay subtítulos disponibles',
'videoControls.noAudioTracksAvailable' => 'No hay pistas de audio disponibles',
'videoControls.noTracksAvailable' => 'No hay pistas disponibles',
'videoControls.subtitleDownloaded' => 'Subtítulo descargado',
'videoControls.subtitleDownloadedNotApplied' => 'El subtítulo se descargó, pero no se pudo seleccionar',
'videoControls.subtitleDownloadFailed' => 'Error al descargar subtítulo',
'videoControls.searchLanguages' => 'Buscar idiomas...',
'messages.markedAsWatched' => 'Marcado como visto',
@@ -2633,9 +2635,9 @@ extension on TranslationsEs {
'messages.errorLoading' => ({required Object error}) => 'Error: ${error}',
'messages.streamInterrupted' => 'La reproducción se interrumpió. Pulsa reproducir o avanza para volver a intentarlo.',
'messages.liveStreamInterrupted' => 'La transmisión en vivo se interrumpió. Pulsa reproducir para volver a intentarlo.',
'messages.fileInfoNotAvailable' => 'Información de archivo no disponible',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Información de archivo no disponible',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Error al cargar info de archivo: ${error}',
'messages.errorLoadingSeries' => 'Error al cargar la serie',
'messages.musicNotSupported' => 'La reproducción de música aún no está soportada',
@@ -3147,9 +3149,9 @@ extension on TranslationsEs {
'downloads.title' => 'Descargas',
'downloads.manage' => 'Gestionar',
'downloads.tvShows' => 'Series de TV',
'downloads.movies' => 'Películas',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Películas',
'downloads.music' => 'Música',
'downloads.tracksQueued' => ({required Object count}) => '${count} canciones en cola para descargar',
'downloads.noDownloads' => 'No hay descargas aún',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsFr extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Originale';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transcodage indisponible — lecture en qualité originale';
@override String get subtitleUnavailableFallback => 'Impossible de charger les sous-titres sélectionnés — poursuite de la lecture sans sous-titres';
@override String get pipButton => 'Mode PiP (Picture-in-Picture)';
@override String get aspectRatioButton => 'Format d\'image';
@override String get ambientLighting => 'Éclairage ambiant';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsFr extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Rechercher des sous-titres';
@override String get language => 'Langue';
@override String get noSubtitlesFound => 'Aucun sous-titre trouvé';
@override String get downloadedSubtitle => 'Téléchargé';
@override String get noSubtitlesAvailable => 'Aucun sous-titre disponible';
@override String get noAudioTracksAvailable => 'Aucune piste audio disponible';
@override String get noTracksAvailable => 'Aucune piste disponible';
@override String get subtitleDownloaded => 'Sous-titre téléchargé';
@override String get subtitleDownloadedNotApplied => 'Le sous-titre a été téléchargé, mais na pas pu être sélectionné';
@override String get subtitleDownloadFailed => 'Échec du téléchargement du sous-titre';
@override String get searchLanguages => 'Rechercher des langues...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsFr {
'videoControls.qualityOriginal' => 'Originale',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcodage indisponible — lecture en qualité originale',
'videoControls.subtitleUnavailableFallback' => 'Impossible de charger les sous-titres sélectionnés — poursuite de la lecture sans sous-titres',
'videoControls.pipButton' => 'Mode PiP (Picture-in-Picture)',
'videoControls.aspectRatioButton' => 'Format d\'image',
'videoControls.ambientLighting' => 'Éclairage ambiant',
@@ -2616,11 +2618,11 @@ extension on TranslationsFr {
'videoControls.searchSubtitles' => 'Rechercher des sous-titres',
'videoControls.language' => 'Langue',
'videoControls.noSubtitlesFound' => 'Aucun sous-titre trouvé',
'videoControls.downloadedSubtitle' => 'Téléchargé',
'videoControls.noSubtitlesAvailable' => 'Aucun sous-titre disponible',
'videoControls.noAudioTracksAvailable' => 'Aucune piste audio disponible',
'videoControls.noTracksAvailable' => 'Aucune piste disponible',
'videoControls.subtitleDownloaded' => 'Sous-titre téléchargé',
'videoControls.subtitleDownloadedNotApplied' => 'Le sous-titre a été téléchargé, mais na pas pu être sélectionné',
'videoControls.subtitleDownloadFailed' => 'Échec du téléchargement du sous-titre',
'videoControls.searchLanguages' => 'Rechercher des langues...',
'messages.markedAsWatched' => 'Marqué comme vu',
@@ -2633,9 +2635,9 @@ extension on TranslationsFr {
'messages.errorLoading' => ({required Object error}) => 'Erreur: ${error}',
'messages.streamInterrupted' => 'La lecture a été interrompue. Appuyez sur Lecture ou avancez pour réessayer.',
'messages.liveStreamInterrupted' => 'Le direct a été interrompu. Appuyez sur Lecture pour réessayer.',
'messages.fileInfoNotAvailable' => 'Informations sur le fichier non disponibles',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Informations sur le fichier non disponibles',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Erreur lors du chargement des informations sur le fichier: ${error}',
'messages.errorLoadingSeries' => 'Erreur lors du chargement de la série',
'messages.musicNotSupported' => 'La lecture de musique n\'est pas encore prise en charge',
@@ -3147,9 +3149,9 @@ extension on TranslationsFr {
'downloads.title' => 'Téléchargements',
'downloads.manage' => 'Gérer',
'downloads.tvShows' => 'Show TV',
'downloads.movies' => 'Films',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Films',
'downloads.music' => 'Musique',
'downloads.tracksQueued' => ({required Object count}) => '${count} titres en file d\'attente de téléchargement',
'downloads.noDownloads' => 'Aucun téléchargement pour le moment',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsIt extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Originale';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transcodifica non disponibile — riproduzione in qualità originale';
@override String get subtitleUnavailableFallback => 'Impossibile caricare i sottotitoli selezionati — la riproduzione continua senza sottotitoli';
@override String get pipButton => 'Modalità Picture-in-Picture';
@override String get aspectRatioButton => 'Proporzioni';
@override String get ambientLighting => 'Illuminazione ambientale';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsIt extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Cerca sottotitoli';
@override String get language => 'Lingua';
@override String get noSubtitlesFound => 'Nessun sottotitolo trovato';
@override String get downloadedSubtitle => 'Scaricato';
@override String get noSubtitlesAvailable => 'Nessun sottotitolo disponibile';
@override String get noAudioTracksAvailable => 'Nessuna traccia audio disponibile';
@override String get noTracksAvailable => 'Nessuna traccia disponibile';
@override String get subtitleDownloaded => 'Sottotitolo scaricato';
@override String get subtitleDownloadedNotApplied => 'Il sottotitolo è stato scaricato, ma non è stato possibile selezionarlo';
@override String get subtitleDownloadFailed => 'Impossibile scaricare il sottotitolo';
@override String get searchLanguages => 'Cerca lingue...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsIt {
'videoControls.qualityOriginal' => 'Originale',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcodifica non disponibile — riproduzione in qualità originale',
'videoControls.subtitleUnavailableFallback' => 'Impossibile caricare i sottotitoli selezionati — la riproduzione continua senza sottotitoli',
'videoControls.pipButton' => 'Modalità Picture-in-Picture',
'videoControls.aspectRatioButton' => 'Proporzioni',
'videoControls.ambientLighting' => 'Illuminazione ambientale',
@@ -2616,11 +2618,11 @@ extension on TranslationsIt {
'videoControls.searchSubtitles' => 'Cerca sottotitoli',
'videoControls.language' => 'Lingua',
'videoControls.noSubtitlesFound' => 'Nessun sottotitolo trovato',
'videoControls.downloadedSubtitle' => 'Scaricato',
'videoControls.noSubtitlesAvailable' => 'Nessun sottotitolo disponibile',
'videoControls.noAudioTracksAvailable' => 'Nessuna traccia audio disponibile',
'videoControls.noTracksAvailable' => 'Nessuna traccia disponibile',
'videoControls.subtitleDownloaded' => 'Sottotitolo scaricato',
'videoControls.subtitleDownloadedNotApplied' => 'Il sottotitolo è stato scaricato, ma non è stato possibile selezionarlo',
'videoControls.subtitleDownloadFailed' => 'Impossibile scaricare il sottotitolo',
'videoControls.searchLanguages' => 'Cerca lingue...',
'messages.markedAsWatched' => 'Segna come visto',
@@ -2633,9 +2635,9 @@ extension on TranslationsIt {
'messages.errorLoading' => ({required Object error}) => 'Errore: ${error}',
'messages.streamInterrupted' => 'La riproduzione si è interrotta. Premi Riproduci o scorri per riprovare.',
'messages.liveStreamInterrupted' => 'La diretta si è interrotta. Premi Riproduci per riprovare.',
'messages.fileInfoNotAvailable' => 'Informazioni sul file non disponibili',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Informazioni sul file non disponibili',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Errore caricamento informazioni sul file: ${error}',
'messages.errorLoadingSeries' => 'Errore caricamento serie',
'messages.musicNotSupported' => 'La riproduzione musicale non è ancora supportata',
@@ -3147,9 +3149,9 @@ extension on TranslationsIt {
'downloads.title' => 'Download',
'downloads.manage' => 'Gestisci',
'downloads.tvShows' => 'Serie TV',
'downloads.movies' => 'Film',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Film',
'downloads.music' => 'Musica',
'downloads.tracksQueued' => ({required Object count}) => '${count} brani in coda per il download',
'downloads.noDownloads' => 'Nessun download',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsJa extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'オリジナル';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'トランスコードは利用できません — オリジナル画質で再生中';
@override String get subtitleUnavailableFallback => '選択した字幕を読み込めませんでした — 字幕なしで再生を続けます';
@override String get pipButton => 'ピクチャーインピクチャーモード';
@override String get aspectRatioButton => 'アスペクト比';
@override String get ambientLighting => 'アンビエントライティング';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsJa extends TranslationsVideoControlsEn {
@override String get searchSubtitles => '字幕を検索';
@override String get language => '言語';
@override String get noSubtitlesFound => '字幕が見つかりません';
@override String get downloadedSubtitle => 'ダウンロード済み';
@override String get noSubtitlesAvailable => '利用可能な字幕はありません';
@override String get noAudioTracksAvailable => '利用可能な音声トラックはありません';
@override String get noTracksAvailable => '利用可能なトラックはありません';
@override String get subtitleDownloaded => '字幕をダウンロードしました';
@override String get subtitleDownloadedNotApplied => '字幕はダウンロードされましたが、選択できませんでした';
@override String get subtitleDownloadFailed => '字幕のダウンロードに失敗しました';
@override String get searchLanguages => '言語を検索...';
}
@@ -2582,6 +2583,7 @@ extension on TranslationsJa {
'videoControls.qualityOriginal' => 'オリジナル',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'トランスコードは利用できません — オリジナル画質で再生中',
'videoControls.subtitleUnavailableFallback' => '選択した字幕を読み込めませんでした — 字幕なしで再生を続けます',
'videoControls.pipButton' => 'ピクチャーインピクチャーモード',
'videoControls.aspectRatioButton' => 'アスペクト比',
'videoControls.ambientLighting' => 'アンビエントライティング',
@@ -2613,11 +2615,11 @@ extension on TranslationsJa {
'videoControls.searchSubtitles' => '字幕を検索',
'videoControls.language' => '言語',
'videoControls.noSubtitlesFound' => '字幕が見つかりません',
'videoControls.downloadedSubtitle' => 'ダウンロード済み',
'videoControls.noSubtitlesAvailable' => '利用可能な字幕はありません',
'videoControls.noAudioTracksAvailable' => '利用可能な音声トラックはありません',
'videoControls.noTracksAvailable' => '利用可能なトラックはありません',
'videoControls.subtitleDownloaded' => '字幕をダウンロードしました',
'videoControls.subtitleDownloadedNotApplied' => '字幕はダウンロードされましたが、選択できませんでした',
'videoControls.subtitleDownloadFailed' => '字幕のダウンロードに失敗しました',
'videoControls.searchLanguages' => '言語を検索...',
'messages.markedAsWatched' => '視聴済みにしました',
@@ -2630,9 +2632,9 @@ extension on TranslationsJa {
'messages.errorLoading' => ({required Object error}) => 'エラー: ${error}',
'messages.streamInterrupted' => 'ストリームが中断されました。再生を押すかシークして再試行してください。',
'messages.liveStreamInterrupted' => 'ライブストリームが中断されました。再生を押して再試行してください。',
'messages.fileInfoNotAvailable' => 'ファイル情報が利用できません',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'ファイル情報が利用できません',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'ファイル情報の読み込みエラー: ${error}',
'messages.errorLoadingSeries' => 'シリーズの読み込みエラー',
'messages.musicNotSupported' => '音楽の再生はまだサポートされていません',
@@ -3144,9 +3146,9 @@ extension on TranslationsJa {
'downloads.title' => 'ダウンロード',
'downloads.manage' => '管理',
'downloads.tvShows' => 'テレビ番組',
'downloads.movies' => '映画',
_ => null,
} ?? switch (path) {
'downloads.movies' => '映画',
'downloads.music' => '音楽',
'downloads.tracksQueued' => ({required Object count}) => '${count} 曲をダウンロード待機中',
'downloads.noDownloads' => 'ダウンロードなし',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsKo extends TranslationsVideoControlsEn {
@override String get qualityOriginal => '원본';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => '트랜스코딩을 사용할 수 없음 — 원본 화질로 재생';
@override String get subtitleUnavailableFallback => '선택한 자막을 불러올 수 없어 자막 없이 재생을 계속합니다';
@override String get pipButton => '픽처 인 픽처 모드';
@override String get aspectRatioButton => '화면비율';
@override String get ambientLighting => '주변 조명';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsKo extends TranslationsVideoControlsEn {
@override String get searchSubtitles => '자막 검색';
@override String get language => '언어';
@override String get noSubtitlesFound => '자막을 찾을 수 없습니다';
@override String get downloadedSubtitle => '다운로드됨';
@override String get noSubtitlesAvailable => '사용 가능한 자막 없음';
@override String get noAudioTracksAvailable => '사용 가능한 오디오 트랙 없음';
@override String get noTracksAvailable => '사용 가능한 트랙 없음';
@override String get subtitleDownloaded => '자막이 다운로드되었습니다';
@override String get subtitleDownloadedNotApplied => '자막을 다운로드했지만 선택할 수 없습니다';
@override String get subtitleDownloadFailed => '자막 다운로드에 실패했습니다';
@override String get searchLanguages => '언어 검색...';
}
@@ -2582,6 +2583,7 @@ extension on TranslationsKo {
'videoControls.qualityOriginal' => '원본',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => '트랜스코딩을 사용할 수 없음 — 원본 화질로 재생',
'videoControls.subtitleUnavailableFallback' => '선택한 자막을 불러올 수 없어 자막 없이 재생을 계속합니다',
'videoControls.pipButton' => '픽처 인 픽처 모드',
'videoControls.aspectRatioButton' => '화면비율',
'videoControls.ambientLighting' => '주변 조명',
@@ -2613,11 +2615,11 @@ extension on TranslationsKo {
'videoControls.searchSubtitles' => '자막 검색',
'videoControls.language' => '언어',
'videoControls.noSubtitlesFound' => '자막을 찾을 수 없습니다',
'videoControls.downloadedSubtitle' => '다운로드됨',
'videoControls.noSubtitlesAvailable' => '사용 가능한 자막 없음',
'videoControls.noAudioTracksAvailable' => '사용 가능한 오디오 트랙 없음',
'videoControls.noTracksAvailable' => '사용 가능한 트랙 없음',
'videoControls.subtitleDownloaded' => '자막이 다운로드되었습니다',
'videoControls.subtitleDownloadedNotApplied' => '자막을 다운로드했지만 선택할 수 없습니다',
'videoControls.subtitleDownloadFailed' => '자막 다운로드에 실패했습니다',
'videoControls.searchLanguages' => '언어 검색...',
'messages.markedAsWatched' => '시청 완료로 표시됨',
@@ -2630,9 +2632,9 @@ extension on TranslationsKo {
'messages.errorLoading' => ({required Object error}) => '오류: ${error}',
'messages.streamInterrupted' => '스트림이 중단되었습니다. 재생을 누르거나 탐색하여 다시 시도하세요.',
'messages.liveStreamInterrupted' => '라이브 스트림이 중단되었습니다. 재생을 눌러 다시 시도하세요.',
'messages.fileInfoNotAvailable' => '파일 정보가 없습니다',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => '파일 정보가 없습니다',
'messages.errorLoadingFileInfo' => ({required Object error}) => '파일 정보 로딩 중 오류: ${error}',
'messages.errorLoadingSeries' => '시리즈 로딩 중 오류',
'messages.musicNotSupported' => '음악 재생 미지원',
@@ -3144,9 +3146,9 @@ extension on TranslationsKo {
'downloads.title' => '다운로드',
'downloads.manage' => '관리',
'downloads.tvShows' => 'TV 프로그램',
'downloads.movies' => '영화',
_ => null,
} ?? switch (path) {
'downloads.movies' => '영화',
'downloads.music' => '음악',
'downloads.tracksQueued' => ({required Object count}) => '${count}곡 다운로드 대기 중',
'downloads.noDownloads' => '다운로드 없음',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsNb extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transkoding utilgjengelig — spiller av i original kvalitet';
@override String get subtitleUnavailableFallback => 'De valgte undertekstene kunne ikke lastes inn — avspillingen fortsetter uten undertekster';
@override String get pipButton => 'Bilde-i-bilde-modus';
@override String get aspectRatioButton => 'Sideforhold';
@override String get ambientLighting => 'Omgivelseslys';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsNb extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Søk etter undertekster';
@override String get language => 'Språk';
@override String get noSubtitlesFound => 'Ingen undertekster funnet';
@override String get downloadedSubtitle => 'Lastet ned';
@override String get noSubtitlesAvailable => 'Ingen undertekster tilgjengelig';
@override String get noAudioTracksAvailable => 'Ingen lydspor tilgjengelig';
@override String get noTracksAvailable => 'Ingen spor tilgjengelig';
@override String get subtitleDownloaded => 'Undertekst lastet ned';
@override String get subtitleDownloadedNotApplied => 'Underteksten ble lastet ned, men kunne ikke velges';
@override String get subtitleDownloadFailed => 'Kunne ikke laste ned undertekst';
@override String get searchLanguages => 'Søk etter språk...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsNb {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transkoding utilgjengelig — spiller av i original kvalitet',
'videoControls.subtitleUnavailableFallback' => 'De valgte undertekstene kunne ikke lastes inn — avspillingen fortsetter uten undertekster',
'videoControls.pipButton' => 'Bilde-i-bilde-modus',
'videoControls.aspectRatioButton' => 'Sideforhold',
'videoControls.ambientLighting' => 'Omgivelseslys',
@@ -2616,11 +2618,11 @@ extension on TranslationsNb {
'videoControls.searchSubtitles' => 'Søk etter undertekster',
'videoControls.language' => 'Språk',
'videoControls.noSubtitlesFound' => 'Ingen undertekster funnet',
'videoControls.downloadedSubtitle' => 'Lastet ned',
'videoControls.noSubtitlesAvailable' => 'Ingen undertekster tilgjengelig',
'videoControls.noAudioTracksAvailable' => 'Ingen lydspor tilgjengelig',
'videoControls.noTracksAvailable' => 'Ingen spor tilgjengelig',
'videoControls.subtitleDownloaded' => 'Undertekst lastet ned',
'videoControls.subtitleDownloadedNotApplied' => 'Underteksten ble lastet ned, men kunne ikke velges',
'videoControls.subtitleDownloadFailed' => 'Kunne ikke laste ned undertekst',
'videoControls.searchLanguages' => 'Søk etter språk...',
'messages.markedAsWatched' => 'Merket som sett',
@@ -2633,9 +2635,9 @@ extension on TranslationsNb {
'messages.errorLoading' => ({required Object error}) => 'Feil: ${error}',
'messages.streamInterrupted' => 'Avspillingen ble avbrutt. Trykk på Spill av eller spol for å prøve på nytt.',
'messages.liveStreamInterrupted' => 'Direktesendingen ble avbrutt. Trykk på Spill av for å prøve på nytt.',
'messages.fileInfoNotAvailable' => 'Filinformasjon ikke tilgjengelig',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Filinformasjon ikke tilgjengelig',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Feil ved lasting av filinformasjon: ${error}',
'messages.errorLoadingSeries' => 'Feil ved lasting av serie',
'messages.musicNotSupported' => 'Musikkavspilling støttes ikke ennå',
@@ -3147,9 +3149,9 @@ extension on TranslationsNb {
'downloads.title' => 'Nedlastinger',
'downloads.manage' => 'Administrer',
'downloads.tvShows' => 'TV-serier',
'downloads.movies' => 'Filmer',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Filmer',
'downloads.music' => 'Musikk',
'downloads.tracksQueued' => ({required Object count}) => '${count} spor i nedlastingskø',
'downloads.noDownloads' => 'Ingen nedlastinger ennå',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsNl extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Origineel';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld';
@override String get subtitleUnavailableFallback => 'De geselecteerde ondertitels konden niet worden geladen — afspelen gaat door zonder ondertitels';
@override String get pipButton => 'Beeld-in-beeld modus';
@override String get aspectRatioButton => 'Beeldverhouding';
@override String get ambientLighting => 'Omgevingsverlichting';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsNl extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Ondertitels zoeken';
@override String get language => 'Taal';
@override String get noSubtitlesFound => 'Geen ondertitels gevonden';
@override String get downloadedSubtitle => 'Gedownload';
@override String get noSubtitlesAvailable => 'Geen ondertitels beschikbaar';
@override String get noAudioTracksAvailable => 'Geen audiotracks beschikbaar';
@override String get noTracksAvailable => 'Geen tracks beschikbaar';
@override String get subtitleDownloaded => 'Ondertitel gedownload';
@override String get subtitleDownloadedNotApplied => 'De ondertiteling is gedownload, maar kon niet worden geselecteerd';
@override String get subtitleDownloadFailed => 'Ondertitel downloaden mislukt';
@override String get searchLanguages => 'Talen zoeken...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsNl {
'videoControls.qualityOriginal' => 'Origineel',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcoderen niet beschikbaar — originele kwaliteit wordt afgespeeld',
'videoControls.subtitleUnavailableFallback' => 'De geselecteerde ondertitels konden niet worden geladen — afspelen gaat door zonder ondertitels',
'videoControls.pipButton' => 'Beeld-in-beeld modus',
'videoControls.aspectRatioButton' => 'Beeldverhouding',
'videoControls.ambientLighting' => 'Omgevingsverlichting',
@@ -2616,11 +2618,11 @@ extension on TranslationsNl {
'videoControls.searchSubtitles' => 'Ondertitels zoeken',
'videoControls.language' => 'Taal',
'videoControls.noSubtitlesFound' => 'Geen ondertitels gevonden',
'videoControls.downloadedSubtitle' => 'Gedownload',
'videoControls.noSubtitlesAvailable' => 'Geen ondertitels beschikbaar',
'videoControls.noAudioTracksAvailable' => 'Geen audiotracks beschikbaar',
'videoControls.noTracksAvailable' => 'Geen tracks beschikbaar',
'videoControls.subtitleDownloaded' => 'Ondertitel gedownload',
'videoControls.subtitleDownloadedNotApplied' => 'De ondertiteling is gedownload, maar kon niet worden geselecteerd',
'videoControls.subtitleDownloadFailed' => 'Ondertitel downloaden mislukt',
'videoControls.searchLanguages' => 'Talen zoeken...',
'messages.markedAsWatched' => 'Gemarkeerd als gekeken',
@@ -2633,9 +2635,9 @@ extension on TranslationsNl {
'messages.errorLoading' => ({required Object error}) => 'Fout: ${error}',
'messages.streamInterrupted' => 'De stream is onderbroken. Druk op afspelen of spoel om het opnieuw te proberen.',
'messages.liveStreamInterrupted' => 'De livestream is onderbroken. Druk op afspelen om het opnieuw te proberen.',
'messages.fileInfoNotAvailable' => 'Bestand informatie niet beschikbaar',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Bestand informatie niet beschikbaar',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fout bij laden bestand info: ${error}',
'messages.errorLoadingSeries' => 'Fout bij laden serie',
'messages.musicNotSupported' => 'Muziek afspelen wordt nog niet ondersteund',
@@ -3147,9 +3149,9 @@ extension on TranslationsNl {
'downloads.title' => 'Downloads',
'downloads.manage' => 'Beheren',
'downloads.tvShows' => 'Series',
'downloads.movies' => 'Films',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Films',
'downloads.music' => 'Muziek',
'downloads.tracksQueued' => ({required Object count}) => '${count} nummers in wachtrij voor download',
'downloads.noDownloads' => 'Nog geen downloads',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsPl extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Oryginalna';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości';
@override String get subtitleUnavailableFallback => 'Nie udało się wczytać wybranych napisów — odtwarzanie jest kontynuowane bez napisów';
@override String get pipButton => 'Tryb obraz w obrazie';
@override String get aspectRatioButton => 'Proporcje';
@override String get ambientLighting => 'Oświetlenie otoczenia';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsPl extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Szukaj napisów';
@override String get language => 'Język';
@override String get noSubtitlesFound => 'Nie znaleziono napisów';
@override String get downloadedSubtitle => 'Pobrano';
@override String get noSubtitlesAvailable => 'Brak dostępnych napisów';
@override String get noAudioTracksAvailable => 'Brak dostępnych ścieżek audio';
@override String get noTracksAvailable => 'Brak dostępnych ścieżek';
@override String get subtitleDownloaded => 'Napisy pobrane';
@override String get subtitleDownloadedNotApplied => 'Napisy zostały pobrane, ale nie można ich było wybrać';
@override String get subtitleDownloadFailed => 'Nie udało się pobrać napisów';
@override String get searchLanguages => 'Szukaj języków...';
}
@@ -2591,6 +2592,7 @@ extension on TranslationsPl {
'videoControls.qualityOriginal' => 'Oryginalna',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transkodowanie niedostępne — odtwarzanie w oryginalnej jakości',
'videoControls.subtitleUnavailableFallback' => 'Nie udało się wczytać wybranych napisów — odtwarzanie jest kontynuowane bez napisów',
'videoControls.pipButton' => 'Tryb obraz w obrazie',
'videoControls.aspectRatioButton' => 'Proporcje',
'videoControls.ambientLighting' => 'Oświetlenie otoczenia',
@@ -2622,11 +2624,11 @@ extension on TranslationsPl {
'videoControls.searchSubtitles' => 'Szukaj napisów',
'videoControls.language' => 'Język',
'videoControls.noSubtitlesFound' => 'Nie znaleziono napisów',
'videoControls.downloadedSubtitle' => 'Pobrano',
'videoControls.noSubtitlesAvailable' => 'Brak dostępnych napisów',
'videoControls.noAudioTracksAvailable' => 'Brak dostępnych ścieżek audio',
'videoControls.noTracksAvailable' => 'Brak dostępnych ścieżek',
'videoControls.subtitleDownloaded' => 'Napisy pobrane',
'videoControls.subtitleDownloadedNotApplied' => 'Napisy zostały pobrane, ale nie można ich było wybrać',
'videoControls.subtitleDownloadFailed' => 'Nie udało się pobrać napisów',
'videoControls.searchLanguages' => 'Szukaj języków...',
'messages.markedAsWatched' => 'Oznaczono jako obejrzane',
@@ -2639,9 +2641,9 @@ extension on TranslationsPl {
'messages.errorLoading' => ({required Object error}) => 'Błąd: ${error}',
'messages.streamInterrupted' => 'Strumień został przerwany. Naciśnij odtwarzanie lub przewiń, aby spróbować ponownie.',
'messages.liveStreamInterrupted' => 'Transmisja na żywo została przerwana. Naciśnij odtwarzanie, aby spróbować ponownie.',
'messages.fileInfoNotAvailable' => 'Informacje o pliku niedostępne',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Informacje o pliku niedostępne',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Błąd ładowania informacji o pliku: ${error}',
'messages.errorLoadingSeries' => 'Błąd ładowania serialu',
'messages.musicNotSupported' => 'Odtwarzanie muzyki nie jest jeszcze obsługiwane',
@@ -3153,9 +3155,9 @@ extension on TranslationsPl {
'downloads.title' => 'Pobrania',
'downloads.manage' => 'Zarządzaj',
'downloads.tvShows' => 'Seriale TV',
'downloads.movies' => 'Filmy',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Filmy',
'downloads.music' => 'Muzyka',
'downloads.tracksQueued' => ({required Object count}) => '${count} utworów w kolejce do pobrania',
'downloads.noDownloads' => 'Brak pobrań',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsPt extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transcodificação indisponível — reproduzindo qualidade original';
@override String get subtitleUnavailableFallback => 'Não foi possível carregar as legendas selecionadas — a reprodução continuará sem legendas';
@override String get pipButton => 'Modo Picture-in-Picture';
@override String get aspectRatioButton => 'Proporção';
@override String get ambientLighting => 'Iluminação ambiente';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsPt extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Pesquisar legendas';
@override String get language => 'Idioma';
@override String get noSubtitlesFound => 'Nenhuma legenda encontrada';
@override String get downloadedSubtitle => 'Baixado';
@override String get noSubtitlesAvailable => 'Nenhuma legenda disponível';
@override String get noAudioTracksAvailable => 'Nenhuma faixa de áudio disponível';
@override String get noTracksAvailable => 'Nenhuma faixa disponível';
@override String get subtitleDownloaded => 'Legenda baixada';
@override String get subtitleDownloadedNotApplied => 'A legenda foi transferida, mas não foi possível selecioná-la';
@override String get subtitleDownloadFailed => 'Falha ao baixar legenda';
@override String get searchLanguages => 'Pesquisar idiomas...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsPt {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transcodificação indisponível — reproduzindo qualidade original',
'videoControls.subtitleUnavailableFallback' => 'Não foi possível carregar as legendas selecionadas — a reprodução continuará sem legendas',
'videoControls.pipButton' => 'Modo Picture-in-Picture',
'videoControls.aspectRatioButton' => 'Proporção',
'videoControls.ambientLighting' => 'Iluminação ambiente',
@@ -2616,11 +2618,11 @@ extension on TranslationsPt {
'videoControls.searchSubtitles' => 'Pesquisar legendas',
'videoControls.language' => 'Idioma',
'videoControls.noSubtitlesFound' => 'Nenhuma legenda encontrada',
'videoControls.downloadedSubtitle' => 'Baixado',
'videoControls.noSubtitlesAvailable' => 'Nenhuma legenda disponível',
'videoControls.noAudioTracksAvailable' => 'Nenhuma faixa de áudio disponível',
'videoControls.noTracksAvailable' => 'Nenhuma faixa disponível',
'videoControls.subtitleDownloaded' => 'Legenda baixada',
'videoControls.subtitleDownloadedNotApplied' => 'A legenda foi transferida, mas não foi possível selecioná-la',
'videoControls.subtitleDownloadFailed' => 'Falha ao baixar legenda',
'videoControls.searchLanguages' => 'Pesquisar idiomas...',
'messages.markedAsWatched' => 'Marcado como assistido',
@@ -2633,9 +2635,9 @@ extension on TranslationsPt {
'messages.errorLoading' => ({required Object error}) => 'Erro: ${error}',
'messages.streamInterrupted' => 'A transmissão foi interrompida. Toque em reproduzir ou avance para tentar novamente.',
'messages.liveStreamInterrupted' => 'A transmissão ao vivo foi interrompida. Toque em reproduzir para tentar novamente.',
'messages.fileInfoNotAvailable' => 'Informações do arquivo não disponíveis',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Informações do arquivo não disponíveis',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Erro ao carregar info do arquivo: ${error}',
'messages.errorLoadingSeries' => 'Erro ao carregar série',
'messages.musicNotSupported' => 'Reprodução de música ainda não é suportada',
@@ -3147,9 +3149,9 @@ extension on TranslationsPt {
'downloads.title' => 'Downloads',
'downloads.manage' => 'Gerenciar',
'downloads.tvShows' => 'Séries de TV',
'downloads.movies' => 'Filmes',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Filmes',
'downloads.music' => 'Música',
'downloads.tracksQueued' => ({required Object count}) => '${count} faixas na fila para download',
'downloads.noDownloads' => 'Nenhum download ainda',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsRu extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Оригинал';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Транскодирование недоступно — воспроизведение в оригинальном качестве';
@override String get subtitleUnavailableFallback => 'Не удалось загрузить выбранные субтитры — воспроизведение продолжится без субтитров';
@override String get pipButton => 'Режим «картинка в картинке»';
@override String get aspectRatioButton => 'Соотношение сторон';
@override String get ambientLighting => 'Фоновая подсветка';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsRu extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Поиск субтитров';
@override String get language => 'Язык';
@override String get noSubtitlesFound => 'Субтитры не найдены';
@override String get downloadedSubtitle => 'Загружено';
@override String get noSubtitlesAvailable => 'Нет доступных субтитров';
@override String get noAudioTracksAvailable => 'Нет доступных аудиодорожек';
@override String get noTracksAvailable => 'Нет доступных дорожек';
@override String get subtitleDownloaded => 'Субтитры загружены';
@override String get subtitleDownloadedNotApplied => 'Субтитры загружены, но их не удалось выбрать';
@override String get subtitleDownloadFailed => 'Не удалось загрузить субтитры';
@override String get searchLanguages => 'Поиск языков...';
}
@@ -2591,6 +2592,7 @@ extension on TranslationsRu {
'videoControls.qualityOriginal' => 'Оригинал',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Транскодирование недоступно — воспроизведение в оригинальном качестве',
'videoControls.subtitleUnavailableFallback' => 'Не удалось загрузить выбранные субтитры — воспроизведение продолжится без субтитров',
'videoControls.pipButton' => 'Режим «картинка в картинке»',
'videoControls.aspectRatioButton' => 'Соотношение сторон',
'videoControls.ambientLighting' => 'Фоновая подсветка',
@@ -2622,11 +2624,11 @@ extension on TranslationsRu {
'videoControls.searchSubtitles' => 'Поиск субтитров',
'videoControls.language' => 'Язык',
'videoControls.noSubtitlesFound' => 'Субтитры не найдены',
'videoControls.downloadedSubtitle' => 'Загружено',
'videoControls.noSubtitlesAvailable' => 'Нет доступных субтитров',
'videoControls.noAudioTracksAvailable' => 'Нет доступных аудиодорожек',
'videoControls.noTracksAvailable' => 'Нет доступных дорожек',
'videoControls.subtitleDownloaded' => 'Субтитры загружены',
'videoControls.subtitleDownloadedNotApplied' => 'Субтитры загружены, но их не удалось выбрать',
'videoControls.subtitleDownloadFailed' => 'Не удалось загрузить субтитры',
'videoControls.searchLanguages' => 'Поиск языков...',
'messages.markedAsWatched' => 'Отмечено как просмотренное',
@@ -2639,9 +2641,9 @@ extension on TranslationsRu {
'messages.errorLoading' => ({required Object error}) => 'Ошибка: ${error}',
'messages.streamInterrupted' => 'Поток прервался. Нажмите «Воспроизвести» или перемотайте, чтобы повторить попытку.',
'messages.liveStreamInterrupted' => 'Прямая трансляция прервалась. Нажмите «Воспроизвести», чтобы повторить попытку.',
'messages.fileInfoNotAvailable' => 'Информация о файле недоступна',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Информация о файле недоступна',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Ошибка загрузки информации о файле: ${error}',
'messages.errorLoadingSeries' => 'Ошибка загрузки сериала',
'messages.musicNotSupported' => 'Воспроизведение музыки пока не поддерживается',
@@ -3153,9 +3155,9 @@ extension on TranslationsRu {
'downloads.title' => 'Загрузки',
'downloads.manage' => 'Управление',
'downloads.tvShows' => 'Сериалы',
'downloads.movies' => 'Фильмы',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Фильмы',
'downloads.music' => 'Музыка',
'downloads.tracksQueued' => ({required Object count}) => '${count} треков в очереди на загрузку',
'downloads.noDownloads' => 'Загрузок пока нет',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsSv extends TranslationsVideoControlsEn {
@override String get qualityOriginal => 'Original';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => 'Transkodning otillgänglig — spelar upp i originalkvalitet';
@override String get subtitleUnavailableFallback => 'De valda undertexterna kunde inte läsas in — uppspelningen fortsätter utan undertexter';
@override String get pipButton => 'Bild-i-bild läge';
@override String get aspectRatioButton => 'Bildförhållande';
@override String get ambientLighting => 'Ambientbelysning';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsSv extends TranslationsVideoControlsEn {
@override String get searchSubtitles => 'Sök undertexter';
@override String get language => 'Språk';
@override String get noSubtitlesFound => 'Inga undertexter hittades';
@override String get downloadedSubtitle => 'Nedladdad';
@override String get noSubtitlesAvailable => 'Inga undertexter tillgängliga';
@override String get noAudioTracksAvailable => 'Inga ljudspår tillgängliga';
@override String get noTracksAvailable => 'Inga spår tillgängliga';
@override String get subtitleDownloaded => 'Undertext nedladdad';
@override String get subtitleDownloadedNotApplied => 'Undertexten hämtades, men kunde inte väljas';
@override String get subtitleDownloadFailed => 'Kunde inte ladda ner undertext';
@override String get searchLanguages => 'Sök språk...';
}
@@ -2585,6 +2586,7 @@ extension on TranslationsSv {
'videoControls.qualityOriginal' => 'Original',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => 'Transkodning otillgänglig — spelar upp i originalkvalitet',
'videoControls.subtitleUnavailableFallback' => 'De valda undertexterna kunde inte läsas in — uppspelningen fortsätter utan undertexter',
'videoControls.pipButton' => 'Bild-i-bild läge',
'videoControls.aspectRatioButton' => 'Bildförhållande',
'videoControls.ambientLighting' => 'Ambientbelysning',
@@ -2616,11 +2618,11 @@ extension on TranslationsSv {
'videoControls.searchSubtitles' => 'Sök undertexter',
'videoControls.language' => 'Språk',
'videoControls.noSubtitlesFound' => 'Inga undertexter hittades',
'videoControls.downloadedSubtitle' => 'Nedladdad',
'videoControls.noSubtitlesAvailable' => 'Inga undertexter tillgängliga',
'videoControls.noAudioTracksAvailable' => 'Inga ljudspår tillgängliga',
'videoControls.noTracksAvailable' => 'Inga spår tillgängliga',
'videoControls.subtitleDownloaded' => 'Undertext nedladdad',
'videoControls.subtitleDownloadedNotApplied' => 'Undertexten hämtades, men kunde inte väljas',
'videoControls.subtitleDownloadFailed' => 'Kunde inte ladda ner undertext',
'videoControls.searchLanguages' => 'Sök språk...',
'messages.markedAsWatched' => 'Markerad som sedd',
@@ -2633,9 +2635,9 @@ extension on TranslationsSv {
'messages.errorLoading' => ({required Object error}) => 'Fel: ${error}',
'messages.streamInterrupted' => 'Uppspelningen avbröts. Tryck på play eller spola för att försöka igen.',
'messages.liveStreamInterrupted' => 'Livestreamen avbröts. Tryck på play för att försöka igen.',
'messages.fileInfoNotAvailable' => 'Filinformation inte tillgänglig',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => 'Filinformation inte tillgänglig',
'messages.errorLoadingFileInfo' => ({required Object error}) => 'Fel vid laddning av filinformation: ${error}',
'messages.errorLoadingSeries' => 'Fel vid laddning av serie',
'messages.musicNotSupported' => 'Musikuppspelning stöds inte ännu',
@@ -3147,9 +3149,9 @@ extension on TranslationsSv {
'downloads.title' => 'Nedladdningar',
'downloads.manage' => 'Hantera',
'downloads.tvShows' => 'TV-serier',
'downloads.movies' => 'Filmer',
_ => null,
} ?? switch (path) {
'downloads.movies' => 'Filmer',
'downloads.music' => 'Musik',
'downloads.tracksQueued' => ({required Object count}) => '${count} låtar i nedladdningskö',
'downloads.noDownloads' => 'Inga nedladdningar ännu',
+6 -4
View File
@@ -652,6 +652,7 @@ class _TranslationsVideoControlsZh extends TranslationsVideoControlsEn {
@override String get qualityOriginal => '原始';
@override String qualityPresetLabel({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps';
@override String get transcodeUnavailableFallback => '转码不可用 — 以原始画质播放';
@override String get subtitleUnavailableFallback => '无法加载所选字幕 — 将继续无字幕播放';
@override String get pipButton => '画中画模式';
@override String get aspectRatioButton => '宽高比';
@override String get ambientLighting => '氛围灯光';
@@ -677,11 +678,11 @@ class _TranslationsVideoControlsZh extends TranslationsVideoControlsEn {
@override String get searchSubtitles => '搜索字幕';
@override String get language => '语言';
@override String get noSubtitlesFound => '未找到字幕';
@override String get downloadedSubtitle => '已下载';
@override String get noSubtitlesAvailable => '没有可用字幕';
@override String get noAudioTracksAvailable => '没有可用音轨';
@override String get noTracksAvailable => '没有可用轨道';
@override String get subtitleDownloaded => '字幕已下载';
@override String get subtitleDownloadedNotApplied => '字幕已下载,但无法选择';
@override String get subtitleDownloadFailed => '字幕下载失败';
@override String get searchLanguages => '搜索语言...';
}
@@ -2582,6 +2583,7 @@ extension on TranslationsZh {
'videoControls.qualityOriginal' => '原始',
'videoControls.qualityPresetLabel' => ({required Object resolution, required Object bitrate}) => '${resolution}p ${bitrate} Mbps',
'videoControls.transcodeUnavailableFallback' => '转码不可用 — 以原始画质播放',
'videoControls.subtitleUnavailableFallback' => '无法加载所选字幕 — 将继续无字幕播放',
'videoControls.pipButton' => '画中画模式',
'videoControls.aspectRatioButton' => '宽高比',
'videoControls.ambientLighting' => '氛围灯光',
@@ -2613,11 +2615,11 @@ extension on TranslationsZh {
'videoControls.searchSubtitles' => '搜索字幕',
'videoControls.language' => '语言',
'videoControls.noSubtitlesFound' => '未找到字幕',
'videoControls.downloadedSubtitle' => '已下载',
'videoControls.noSubtitlesAvailable' => '没有可用字幕',
'videoControls.noAudioTracksAvailable' => '没有可用音轨',
'videoControls.noTracksAvailable' => '没有可用轨道',
'videoControls.subtitleDownloaded' => '字幕已下载',
'videoControls.subtitleDownloadedNotApplied' => '字幕已下载,但无法选择',
'videoControls.subtitleDownloadFailed' => '字幕下载失败',
'videoControls.searchLanguages' => '搜索语言...',
'messages.markedAsWatched' => '已标记为已观看',
@@ -2630,9 +2632,9 @@ extension on TranslationsZh {
'messages.errorLoading' => ({required Object error}) => '错误: ${error}',
'messages.streamInterrupted' => '视频流已中断。按播放键或拖动进度条重试。',
'messages.liveStreamInterrupted' => '直播流已中断。按播放键重试。',
'messages.fileInfoNotAvailable' => '文件信息不可用',
_ => null,
} ?? switch (path) {
'messages.fileInfoNotAvailable' => '文件信息不可用',
'messages.errorLoadingFileInfo' => ({required Object error}) => '加载文件信息时出错: ${error}',
'messages.errorLoadingSeries' => '加载系列时出错',
'messages.musicNotSupported' => '尚不支持播放音乐',
@@ -3144,9 +3146,9 @@ extension on TranslationsZh {
'downloads.title' => '下载',
'downloads.manage' => '管理',
'downloads.tvShows' => '电视剧',
'downloads.movies' => '电影',
_ => null,
} ?? switch (path) {
'downloads.movies' => '电影',
'downloads.music' => '音乐',
'downloads.tracksQueued' => ({required Object count}) => '${count} 首曲目已加入下载队列',
'downloads.noDownloads' => '暂无下载',
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "Original",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "Transkodning otillgänglig — spelar upp i originalkvalitet",
"subtitleUnavailableFallback": "De valda undertexterna kunde inte läsas in — uppspelningen fortsätter utan undertexter",
"pipButton": "Bild-i-bild läge",
"aspectRatioButton": "Bildförhållande",
"ambientLighting": "Ambientbelysning",
@@ -524,11 +525,11 @@
"searchSubtitles": "Sök undertexter",
"language": "Språk",
"noSubtitlesFound": "Inga undertexter hittades",
"downloadedSubtitle": "Nedladdad",
"noSubtitlesAvailable": "Inga undertexter tillgängliga",
"noAudioTracksAvailable": "Inga ljudspår tillgängliga",
"noTracksAvailable": "Inga spår tillgängliga",
"subtitleDownloaded": "Undertext nedladdad",
"subtitleDownloadedNotApplied": "Undertexten hämtades, men kunde inte väljas",
"subtitleDownloadFailed": "Kunde inte ladda ner undertext",
"searchLanguages": "Sök språk..."
},
+2 -1
View File
@@ -491,6 +491,7 @@
"qualityOriginal": "原始",
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
"transcodeUnavailableFallback": "转码不可用 — 以原始画质播放",
"subtitleUnavailableFallback": "无法加载所选字幕 — 将继续无字幕播放",
"pipButton": "画中画模式",
"aspectRatioButton": "宽高比",
"ambientLighting": "氛围灯光",
@@ -524,11 +525,11 @@
"searchSubtitles": "搜索字幕",
"language": "语言",
"noSubtitlesFound": "未找到字幕",
"downloadedSubtitle": "已下载",
"noSubtitlesAvailable": "没有可用字幕",
"noAudioTracksAvailable": "没有可用音轨",
"noTracksAvailable": "没有可用轨道",
"subtitleDownloaded": "字幕已下载",
"subtitleDownloadedNotApplied": "字幕已下载,但无法选择",
"subtitleDownloadFailed": "字幕下载失败",
"searchLanguages": "搜索语言..."
},