Files
Flaro/Flixy/Resources/Localizable.xcstrings
T
GuidoandClaude Opus 5 62158303a2 Phase 3: Download-Engine und Offline-Wiedergabe
Engine
- Hintergrund-URLSession: läuft weiter, wenn die App zu ist. Der ganze
  Zustand liegt in SwiftData, weil es nach einem Neustart kein anderes
  Gedächtnis gibt.
- Pausieren über cancel(byProducingResumeData:) — nur so lässt sich
  weiterladen statt neu zu beginnen. Bei 40 GB der Unterschied
  zwischen brauchbar und unbrauchbar.
- Zwei Übertragungen gleichzeitig, Folgen in Staffel-/Folgenreihenfolge.
  Alles parallel zu laden hieße: keine Folge wird fertig.
- Speicherlimit und Geräteplatz werden vor dem Annehmen geprüft, ein
  Gigabyte bleibt als Puffer frei.
- Verwaiste Dateien werden beim Start entfernt; sie entstehen, wenn die
  App genau beim Abschluss beendet wird.
- Downloads liegen in Application Support, nicht in Caches (iOS räumt
  den eigenmächtig leer) und sind von der iCloud-Sicherung ausgenommen.

Oberfläche
- Download-Knopf auf Detailseiten mit vier Zuständen in einem Knopf.
- „Alle Folgen laden" für Staffel und Serie; ein abgelehnter Titel
  stoppt den Stapel nicht.
- Downloads-Ansicht mit Belegung, WLAN-Schalter, Pausieren, Fortsetzen,
  Löschen — nach Serie gruppiert.

Offline
- Der Player bevorzugt die lokale Datei, auch ohne erreichbaren Server.
- Beim Herunterladen wird ein Abzug der Serverangaben mitgesichert:
  offline lässt sich nichts nachfragen, und der PlaybackDecider braucht
  Container und Codecs.

Ein Fehler, den die Tests aufgedeckt haben: der Koordinator hielt nur
den ModelContext, nicht den ModelContainer. Ein ModelContext hält seinen
Container nicht am Leben — wird der anderswo freigegeben, stürzt jeder
Zugriff auf einen Eintrag ab, und die Meldung zeigt auf ModelContext.reset
statt auf die Ursache. Jetzt liegt die Zuständigkeit beim Koordinator.

102 Tests.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 17:34:57 +02:00

2584 lines
57 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"sourceLanguage": "en",
"strings": {
"4K": {
"comment": "A label for a 4K video.",
"isCommentAutoGenerated": true
},
"720p": {
"comment": "A label for a 720p video.",
"isCommentAutoGenerated": true
},
"1080p": {
"comment": "A label for a 1080p video.",
"isCommentAutoGenerated": true
},
"action.apply": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Übernehmen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Apply"
}
}
}
},
"action.cancel": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abbrechen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Cancel"
}
}
}
},
"action.close": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Schließen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Close"
}
}
}
},
"action.retry": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Erneut versuchen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Try again"
}
}
}
},
"action.signOut": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abmelden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Sign out"
}
}
}
},
"connecting.searching": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Server werden gesucht …"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Looking for servers…"
}
}
}
},
"connecting.to %@": {
"comment": "Platzhalter: Servername",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Verbinde mit %@ …"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Connecting to %@…"
}
}
}
},
"detail.cast": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Besetzung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Cast"
}
}
}
},
"detail.episodeCount %lld": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld Folgen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "%lld episodes"
}
}
}
},
"detail.episodes": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Folgen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Episodes"
}
}
}
},
"detail.playFromStart": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Von vorn abspielen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Play from start"
}
}
}
},
"detail.seasons": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Staffeln"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Seasons"
}
}
}
},
"detail.unwatchedCount %lld": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld ungesehen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "%lld unwatched"
}
}
}
},
"detail.versions": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Fassung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Version"
}
}
}
},
"episode.short %lld %lld": {
"comment": "Staffel- und Folgennummer",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "S%lld E%lld"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "S%lld E%lld"
}
}
}
},
"error.noServers": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "An deinem Plex-Konto hängt kein Server."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "There's no server on your Plex account."
}
}
}
},
"error.notFound": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Dieser Titel ist auf dem Server nicht mehr vorhanden."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "This title is no longer on the server."
}
}
}
},
"error.server %lld": {
"comment": "Platzhalter: HTTP-Statuscode",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Der Server hat mit Fehler %lld geantwortet."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The server responded with error %lld."
}
}
}
},
"error.serverUnreachable": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Der Server ist nicht erreichbar. Prüfe, ob er läuft und ob du im selben Netzwerk bist."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The server can't be reached. Check that it's running and that you're on the same network."
}
}
}
},
"error.title": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Das hat nicht geklappt"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Something went wrong"
}
}
}
},
"error.unauthorized": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Die Anmeldung ist abgelaufen. Melde dich erneut an."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Your sign-in has expired. Please sign in again."
}
}
}
},
"error.unexpectedResponse": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Die Antwort des Servers war unerwartet. Möglicherweise ist eine neuere Plex-Version installiert."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The server's response was unexpected. It may be running a newer version of Plex."
}
}
}
},
"filter.any": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Alle"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Any"
}
}
}
},
"filter.filters": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Filter"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Filters"
}
}
}
},
"filter.genre": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Genre"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Genre"
}
}
}
},
"filter.reset": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zurücksetzen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Reset"
}
}
}
},
"filter.resolution": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Auflösung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Resolution"
}
}
}
},
"filter.sort": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Sortierung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Sort by"
}
}
}
},
"filter.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Filter"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Filters"
}
}
}
},
"filter.unwatchedOnly": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nur Ungesehene"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Unwatched only"
}
}
}
},
"hero.details": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Details"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Details"
}
}
}
},
"hero.play": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abspielen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Play"
}
}
}
},
"hero.resume": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Weiterschauen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Resume"
}
}
}
},
"home.empty.description": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Sobald dein Server Mediatheken enthält, erscheinen sie hier."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Once your server has libraries, they'll show up here."
}
}
}
},
"home.empty.title": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Noch nichts da"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Nothing here yet"
}
}
}
},
"item.watched": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Gesehen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Watched"
}
}
}
},
"library.clearFilters": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Filter zurücksetzen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Clear filters"
}
}
}
},
"library.empty.description": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mit den aktuellen Filtern bleibt nichts übrig."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Nothing matches the current filters."
}
}
}
},
"library.empty.title": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Keine Titel"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "No titles"
}
}
}
},
"library.filters": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Filter"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Filters"
}
}
}
},
"library.toggleLayout": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Ansicht wechseln"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Switch layout"
}
}
}
},
"placeholder.description": {
"comment": "Platzhalter-Bildschirme",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Dieser Bereich entsteht in einer späteren Phase."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "This area is coming in a later phase."
}
}
}
},
"player.back10": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "10 Sekunden zurück"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Back 10 seconds"
}
}
}
},
"player.close": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Player schließen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Close player"
}
}
}
},
"player.forward10": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "10 Sekunden vor"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Forward 10 seconds"
}
}
}
},
"player.loadFailed": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Die Datei ließ sich nicht öffnen."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The file couldn't be opened."
}
}
}
},
"player.noPlayableFile": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zu diesem Titel gibt es keine abspielbare Datei auf dem Server."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "There's no playable file for this title on the server."
}
}
}
},
"player.pause": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Pause"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Pause"
}
}
}
},
"player.play": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abspielen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Play"
}
}
}
},
"player.playbackFailed": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Die Wiedergabe wurde unterbrochen."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Playback was interrupted."
}
}
}
},
"runtime.hoursMinutes %lld %lld": {
"comment": "Laufzeit mit Stunden",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld Std %lld Min"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "%lldh %lldm"
}
}
}
},
"runtime.minutes %lld": {
"comment": "Laufzeit unter einer Stunde",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld Min"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "%lldm"
}
}
}
},
"SD": {
"comment": "A label for a 720p movie.",
"isCommentAutoGenerated": true
},
"search.hint": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Suche nach Filmen, Serien, Folgen und Personen."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Search for movies, shows, episodes and people."
}
}
}
},
"search.recent": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zuletzt gesucht"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Recent searches"
}
}
}
},
"search.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Suche"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Search"
}
}
}
},
"serverPicker.owned": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Eigener Server"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Your server"
}
}
}
},
"serverPicker.shared": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Geteilt"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Shared"
}
}
}
},
"serverPicker.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Server wählen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Choose a server"
}
}
}
},
"settings.address": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Adresse"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Address"
}
}
}
},
"settings.app": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "App"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "App"
}
}
}
},
"settings.connection": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Verbindung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Connection"
}
}
}
},
"settings.connectionLocal": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Lokal"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Local"
}
}
}
},
"settings.connectionRelay": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Über Plex-Vermittlung (gedrosselt)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Via Plex relay (throttled)"
}
}
}
},
"settings.connectionRemote": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Direkt von außen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Direct remote"
}
}
}
},
"settings.libraries": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mediatheken"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Libraries"
}
}
}
},
"settings.server": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Server"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Server"
}
}
}
},
"settings.serverName": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Name"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Name"
}
}
}
},
"settings.signOutConfirm": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wirklich abmelden?"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Sign out?"
}
}
}
},
"settings.signOutExplanation": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Das Token wird vom Gerät entfernt. Heruntergeladene Titel bleiben erhalten."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The token will be removed from this device. Downloaded titles are kept."
}
}
}
},
"settings.version": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Version"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Version"
}
}
}
},
"sidebar.close": {
"comment": "Barrierefreiheit: abgedunkelte Fläche",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Seitenleiste schließen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Close sidebar"
}
}
}
},
"sidebar.downloads": {
"comment": "Eintrag in der Seitenleiste",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Downloads"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Downloads"
}
}
}
},
"sidebar.home": {
"comment": "Eintrag der Startseite in der Seitenleiste",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Start"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Home"
}
}
}
},
"sidebar.libraries": {
"comment": "Überschrift über der Liste der Mediatheken",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mediatheken"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Libraries"
}
}
}
},
"sidebar.liveTV": {
"comment": "Eintrag in der Seitenleiste",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Live-TV"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Live TV"
}
}
}
},
"sidebar.more": {
"comment": "Überschrift über Live-TV, Downloads und Einstellungen",
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mehr"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "More"
}
}
}
},
"sidebar.open": {
"comment": "Barrierefreiheit: Hamburger-Knopf",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Seitenleiste öffnen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Open sidebar"
}
}
}
},
"sidebar.settings": {
"comment": "Eintrag in der Seitenleiste",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Einstellungen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Settings"
}
}
}
},
"signIn.action": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mit Plex anmelden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Sign in with Plex"
}
}
}
},
"signIn.codeHint": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Öffne plex.tv/link im Browser und gib diesen Code ein:"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Open plex.tv/link in your browser and enter this code:"
}
}
}
},
"signIn.openBrowser": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Im Browser öffnen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Open in browser"
}
}
}
},
"signIn.tagline": {
"comment": "Untertitel auf dem Anmeldebildschirm",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Deine Plex-Mediathek, schöner."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Your Plex library, nicer."
}
}
}
},
"signIn.waiting": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Warte auf Bestätigung …"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Waiting for confirmation…"
}
}
}
},
"sort.lastViewed": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zuletzt gesehen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Last watched"
}
}
}
},
"sort.rating": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Bewertung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Rating"
}
}
}
},
"sort.recentlyAdded": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zuletzt hinzugefügt"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Recently added"
}
}
}
},
"sort.releaseDate": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Erscheinungsjahr"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Release date"
}
}
}
},
"sort.titleAscending": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Titel (A–Z)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Title (A–Z)"
}
}
}
},
"sort.titleDescending": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Titel (Z–A)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Title (Z–A)"
}
}
}
},
"technical.audio": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Tonspur"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Audio"
}
}
}
},
"technical.bitrate": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Bitrate"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Bitrate"
}
}
}
},
"technical.container": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Container"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Container"
}
}
}
},
"technical.directPlayNative": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Direkt (Systemplayer)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Direct (system player)"
}
}
}
},
"technical.directPlayVLC": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Direkt (VLC)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Direct (VLC)"
}
}
}
},
"technical.file": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Datei auf dem Server"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "File on server"
}
}
}
},
"technical.playbackMethod": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wiedergabe"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Playback"
}
}
}
},
"technical.reason": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Grund"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Reason"
}
}
}
},
"technical.reason.audioCodec %@": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "iOS kann %@-Ton nicht wiedergeben."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "iOS can't play %@ audio."
}
}
}
},
"technical.reason.container %@": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "iOS öffnet den Container %@ nicht."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "iOS can't open the %@ container."
}
}
}
},
"technical.reason.unanalyzed": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Der Server hat diese Datei noch nicht analysiert."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The server hasn't analyzed this file yet."
}
}
}
},
"technical.reason.videoCodec %@": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "iOS kann %@ nicht dekodieren."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "iOS can't decode %@."
}
}
}
},
"technical.resolution": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Auflösung"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Resolution"
}
}
}
},
"technical.size": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Dateigröße"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "File size"
}
}
}
},
"technical.subtitle": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Untertitel"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Subtitle"
}
}
}
},
"technical.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Technische Angaben"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Technical details"
}
}
}
},
"technical.transcode": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Umgerechnet vom Server"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Transcoded by server"
}
}
}
},
"technical.videoCodec": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Bildcodec"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Video codec"
}
}
}
},
"player.preparing": {
"comment": "Hinweis, während der Player die Datei öffnet",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wird vorbereitet …"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Preparing…"
}
}
}
},
"player.tracks": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Ton und Untertitel"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Audio and subtitles"
}
}
}
},
"player.audioTracks": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Tonspur"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Audio"
}
}
}
},
"player.subtitleTracks": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Untertitel"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Subtitles"
}
}
}
},
"player.subtitlesOff": {
"comment": "Eintrag, der die Untertitel abschaltet",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Aus"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Off"
}
}
}
},
"player.skipIntro": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Intro überspringen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Skip intro"
}
}
}
},
"player.skipCredits": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abspann überspringen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Skip credits"
}
}
}
},
"player.nextEpisode": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nächste Folge"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Next episode"
}
}
}
},
"player.transcodeRefused": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Der Server hat die Wiedergabe abgelehnt."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "The server refused playback."
}
}
}
},
"settings.quality": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Qualität"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Quality"
}
}
}
},
"settings.qualityWifi": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Im WLAN"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "On Wi-Fi"
}
}
}
},
"settings.qualityCellular": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Über Mobilfunk"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "On cellular"
}
}
}
},
"settings.qualityExplanation": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wird eine Datei größer als die eingestellte Grenze, rechnet der Server sie unterwegs herunter und passt die Bitrate laufend an die Verbindung an."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "If a file exceeds the limit, the server transcodes it on the fly and adapts the bitrate to your connection."
}
}
}
},
"settings.playback": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wiedergabe"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Playback"
}
}
}
},
"settings.autoSkipIntro": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Intro automatisch überspringen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Skip intros automatically"
}
}
}
},
"settings.autoSkipCredits": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Abspann automatisch überspringen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Skip credits automatically"
}
}
}
},
"settings.autoPlayNext": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nächste Folge automatisch"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Play next episode automatically"
}
}
}
},
"quality.original": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Original"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Original"
}
}
}
},
"quality.high": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Hoch (12 Mbit/s)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "High (12 Mbps)"
}
}
}
},
"quality.medium": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Mittel (8 Mbit/s)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Medium (8 Mbps)"
}
}
}
},
"quality.low": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Niedrig (4 Mbit/s)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Low (4 Mbps)"
}
}
}
},
"quality.minimal": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Sparsam (2 Mbit/s)"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Data saver (2 Mbps)"
}
}
}
},
"downloads.empty.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nichts offline"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Nothing offline"
}
}
}
},
"downloads.empty.description": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Lade Filme und Folgen herunter, um sie ohne Verbindung anzusehen."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download movies and episodes to watch them without a connection."
}
}
}
},
"downloads.active": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Läuft gerade"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "In progress"
}
}
}
},
"downloads.movies": {
"comment": "Überschrift für heruntergeladene Filme",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Filme"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Movies"
}
}
}
},
"downloads.used": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Belegt"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Used"
}
}
}
},
"downloads.wifiOnly": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nur über WLAN laden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download over Wi-Fi only"
}
}
}
},
"downloads.pause": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Anhalten"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Pause"
}
}
}
},
"downloads.resume": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Fortsetzen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Resume"
}
}
}
},
"downloads.cancel": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Download abbrechen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Cancel download"
}
}
}
},
"downloads.download": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Herunterladen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download"
}
}
}
},
"downloads.available": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Offline verfügbar"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Available offline"
}
}
}
},
"downloads.queued": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Wartet"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Queued"
}
}
}
},
"downloads.paused": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Angehalten"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Paused"
}
}
}
},
"downloads.failed": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Fehlgeschlagen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Failed"
}
}
}
},
"downloads.removeConfirm": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Download entfernen?"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Remove download?"
}
}
}
},
"downloads.allEpisodes": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Alle Folgen laden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download all episodes"
}
}
}
},
"downloads.season": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Staffel laden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download season"
}
}
}
},
"downloads.batch.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Downloads"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Downloads"
}
}
}
},
"downloads.batch.queued %lld": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld Folgen in die Warteschlange gelegt."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Queued %lld episodes."
}
}
}
},
"downloads.batch.unavailable %lld": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "%lld Folgen haben keine abspielbare Datei auf dem Server."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "%lld episodes have no playable file on the server."
}
}
}
},
"downloads.refused.title": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Download nicht möglich"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Can't download"
}
}
}
},
"downloads.refused.exists": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Dieser Titel steht bereits in der Warteschlange."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "This title is already queued."
}
}
}
},
"downloads.refused.limit %@ %@": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Das Speicherlimit ist erreicht: %@ von %@ belegt."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Storage limit reached: %@ of %@ used."
}
}
}
},
"downloads.refused.space %@ %@": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Zu wenig Platz auf dem Gerät: %@ nötig, %@ frei."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Not enough space on this device: %@ needed, %@ free."
}
}
}
},
"action.delete": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Löschen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Delete"
}
}
}
}
},
"version": "1.1"
}