Files
MyTube/frontend/src/utils/locales/de.ts
2025-12-29 16:42:35 -05:00

592 lines
33 KiB
TypeScript

export const de = {
myTube: "MyTube",
manage: "Verwalten",
settings: "Einstellungen",
logout: "Abmelden",
pleaseEnterUrlOrSearchTerm:
"Bitte geben Sie eine Video-URL oder einen Suchbegriff ein",
unexpectedErrorOccurred:
"Ein unerwarteter Fehler ist aufgetreten. Bitte versuchen Sie es erneut.",
uploadVideo: "Video Hochladen",
enterUrlOrSearchTerm: "Video-URL oder Suchbegriff eingeben",
manageVideos: "Videos Verwalten",
instruction: "Anleitung",
pasteUrl: "Video- oder Sammlungs-URL einfügen",
download: "Herunterladen",
search: "Suchen",
recentDownloads: "Letzte Downloads",
noDownloads: "Noch keine Downloads",
downloadStarted: "Download gestartet",
downloadFailed: "Download fehlgeschlagen",
loadingVideos: "Videos werden geladen...",
searchResultsFor: "Suchergebnisse für",
fromYourLibrary: "Aus Ihrer Bibliothek",
noMatchingVideos: "Keine passenden Videos in Ihrer Bibliothek.",
fromYouTube: "Von YouTube",
loadingYouTubeResults: "YouTube-Ergebnisse werden geladen...",
noYouTubeResults: "Keine YouTube-Ergebnisse gefunden",
noVideosYet:
"Noch keine Videos. Reichen Sie eine Video-URL ein, um Ihr erstes herunterzuladen!",
views: "Aufrufe",
general: "Allgemein",
security: "Sicherheit",
videoDefaults: "Player-Standardeinstellungen",
downloadSettings: "Download-Einstellungen",
language: "Sprache",
websiteName: "Website-Name",
websiteNameHelper: "{current}/{max} Zeichen (Standard: {default})",
infiniteScroll: "Unendliches Scrollen",
infiniteScrollDisabled: "Deaktiviert, wenn unendliches Scrollen aktiviert ist",
maxVideoColumns: "Maximale Videospalten (Startseite)",
videoColumns: "Videospalten (Startseite)",
columnsCount: "{count} Spalten",
enableLogin: "Anmeldeschutz aktivieren",
password: "Passwort",
enterPassword: "Passwort eingeben",
togglePasswordVisibility: "Passwort sichtbar machen",
passwordHelper:
"Leer lassen, um das aktuelle Passwort beizubehalten, oder eingeben, um es zu ändern",
passwordSetHelper:
"Legen Sie ein Passwort für den Zugriff auf die Anwendung fest",
autoPlay: "Automatische Wiedergabe",
autoLoop: "Automatische Schleife",
maxConcurrent: "Max. gleichzeitige Downloads",
saveSettings: "Einstellungen Speichern",
saving: "Speichern...",
backToManage: "Zurück zu Verwalten",
settingsSaved: "Einstellungen erfolgreich gespeichert",
settingsFailed: "Fehler beim Speichern der Einstellungen",
debugMode: "Debug-Modus",
debugModeDescription:
"Konsolenmeldungen anzeigen oder ausblenden (erfordert Aktualisierung)",
pauseOnFocusLoss: "Pause bei Fokusverlust",
tagsManagement: "Tag-Verwaltung",
newTag: "Neues Tag",
tags: "Tags",
tagsManagementNote:
'Bitte denken Sie daran, nach dem Hinzufügen oder Entfernen von Tags auf "Einstellungen speichern" zu klicken, um die Änderungen zu übernehmen.',
database: "Datenbank",
migrateDataDescription:
"Daten von Legacy-JSON-Dateien zur neuen SQLite-Datenbank migrieren. Diese Aktion kann sicher mehrmals ausgeführt werden (Duplikate werden übersprungen).",
migrateDataButton: "Daten aus JSON migrieren",
scanFiles: "Dateien Scannen",
scanFilesSuccess: "Scan abgeschlossen. {count} neue Videos hinzugefügt.",
scanFilesDeleted: " {count} fehlende Dateien entfernt.",
scanFilesFailed: "Scan fehlgeschlagen",
scanFilesConfirmMessage:
"Das System scannt den Stammordner des Videopfads. Neue Dateien werden hinzugefügt und fehlende Videodateien werden aus dem System entfernt.",
scanning: "Scannen...",
migrateConfirmation:
"Sind Sie sicher, dass Sie Daten migrieren möchten? Dies kann einige Momente dauern.",
migrationResults: "Migrationsergebnisse",
migrationReport: "Migrationsbericht",
migrationSuccess: "Migration abgeschlossen. Details in der Warnung anzeigen.",
migrationNoData: "Migration abgeschlossen, aber keine Daten gefunden.",
migrationFailed: "Migration fehlgeschlagen",
migrationWarnings: "WARNUNGEN",
migrationErrors: "FEHLER",
itemsMigrated: "Elemente migriert",
fileNotFound: "Datei nicht gefunden unter",
noDataFilesFound:
"Keine Datendateien zum Migrieren gefunden. Bitte überprüfen Sie Ihre Volume-Zuordnungen.",
removeLegacyData: "Legacy-Daten Entfernen",
removeLegacyDataDescription:
"Löschen Sie die alten JSON-Dateien, um Speicherplatz freizugeben. Tun Sie dies nur, nachdem Sie überprüft haben, dass Ihre Daten erfolgreich migriert wurden.",
removeLegacyDataConfirmTitle: "Legacy-Daten löschen?",
removeLegacyDataConfirmMessage:
"Sind Sie sicher, dass Sie die Legacy-JSON-Datendateien löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.",
legacyDataDeleted: "Legacy-Daten erfolgreich gelöscht.",
formatLegacyFilenames: "Format Legacy Filenames",
formatLegacyFilenamesDescription:
"Batch rename all video files, thumbnails, and subtitles to the new standard format: Title-Author-YYYY. This operation will modify filenames on the disk and update the database logic.",
formatLegacyFilenamesButton: "Dateinamen formatieren",
formatFilenamesSuccess:
"Bearbeitet: {processed}\nUmbenannt: {renamed}\nFehler: {errors}",
formatFilenamesDetails: "Details:",
formatFilenamesMore: "...und {count} weitere",
formatFilenamesError: "Fehler beim Formatieren der Dateinamen: {error}",
deleteLegacyDataButton: "Veraltete Daten löschen",
cleanupTempFiles: "Temporäre Dateien bereinigen",
cleanupTempFilesDescription:
"Alle temporären Download-Dateien (.ytdl, .part) aus dem Upload-Verzeichnis entfernen. Dies hilft, Speicherplatz von unvollständigen oder abgebrochenen Downloads freizugeben.",
cleanupTempFilesConfirmTitle: "Temporäre Dateien bereinigen?",
itemsPerPage: "Elemente pro Seite",
itemsPerPageHelper: "Anzahl der Videos pro Seite (Standard: 12)",
showYoutubeSearch: "YouTube-Suchergebnisse anzeigen",
visitorMode: "Besuchermodus (Nur-Lesen)",
visitorModeReadOnly: "Besuchermodus: Nur-Lesen",
visitorModeDescription: "Nur-Lese-Modus. Ausgeblendete Videos sind für Besucher nicht sichtbar.",
visitorModePasswordPrompt: "Bitte geben Sie das Website-Passwort ein, um die Besuchermodus-Einstellungen zu ändern.",
cleanupTempFilesSuccess: "Erfolgreich {count} temporäre Datei(en) gelöscht.",
cleanupTempFilesFailed: "Fehler beim Bereinigen temporärer Dateien",
// Cookie Settings
cookieSettings: "Cookie-Einstellungen",
cookieUploadDescription:
'Laden Sie cookies.txt hoch, um YouTube-Bot-Prüfungen zu bestehen und Bilibili-Untertitel-Downloads zu aktivieren. Die Datei wird automatisch in cookies.txt umbenannt. (Beispiel: Verwenden Sie die Erweiterung "Get cookies.txt LOCALLY" zum Exportieren von Cookies)',
uploadCookies: "Cookies hochladen",
onlyTxtFilesAllowed: "Nur .txt-Dateien erlaubt",
cookiesUploadedSuccess: "Cookies erfolgreich hochgeladen",
cookiesUploadFailed: "Fehler beim Hochladen der Cookies",
cookiesFound: "cookies.txt gefunden",
cookiesNotFound: "cookies.txt nicht gefunden",
deleteCookies: "Cookies löschen",
confirmDeleteCookies:
"Sind Sie sicher, dass Sie die Cookie-Datei löschen möchten? Dies beeinträchtigt Ihre Fähigkeit, altersbeschränkte oder nur für Mitglieder zugängliche Videos herunterzuladen.",
cookiesDeletedSuccess: "Cookies erfolgreich gelöscht",
cookiesDeleteFailed: "Fehler beim Löschen der Cookies",
// Cloud Drive
cloudDriveSettings: "Cloud-Speicher (OpenList)",
cloudDriveDescription:
"Videos automatisch in den Cloud-Speicher (Alist) hochladen und nach neuen Dateien in der Cloud suchen. Lokale Dateien werden nach erfolgreichem Upload gelöscht.",
enableAutoSave: "Cloud-Synchronisierung aktivieren",
apiUrl: "API-URL",
apiUrlHelper: "z.B. https://your-alist-instance.com/api/fs/put",
token: "Token",
publicUrl: "Öffentliche URL",
publicUrlHelper: "Öffentliche Domain für den Dateizugriff (z.B. https://your-cloudflare-tunnel-domain.com). Wenn gesetzt, wird diese anstelle der API-URL für den Dateizugriff verwendet.",
uploadPath: "Upload-Pfad",
cloudDrivePathHelper:
"Verzeichnispfad im Cloud-Speicher, z.B. /mytube-uploads",
scanPaths: "Scan-Pfade",
scanPathsHelper: "Ein Pfad pro Zeile. Videos werden von diesen Pfaden gescannt. Wenn leer, wird der Upload-Pfad verwendet. Beispiel:\n/a/Filme\n/b/Dokumentationen",
cloudDriveNote:
"Nach Aktivierung dieser Funktion werden neu heruntergeladene Videos automatisch in den Cloud-Speicher hochgeladen und lokale Dateien werden gelöscht. Videos werden über einen Proxy aus dem Cloud-Speicher abgespielt.",
cloudScanAdded: "Aus Cloud hinzugefügt",
testing: "Teste...",
testConnection: "Verbindung testen",
sync: "Synchronisieren",
syncToCloud: "Zwei-Wege-Synchronisierung",
syncWarning: "Dieser Vorgang lädt lokale Videos in die Cloud hoch und sucht im Cloud-Speicher nach neuen Dateien. Lokale Dateien werden nach dem Upload gelöscht.",
syncing: "Synchronisiere...",
syncCompleted: "Synchronisation abgeschlossen",
syncFailed: "Synchronisation fehlgeschlagen",
syncReport: "Gesamt: {total} | Hochgeladen: {uploaded} | Fehlgeschlagen: {failed}",
syncErrors: "Fehler:",
fillApiUrlToken: "Bitte füllen Sie zuerst API-URL und Token aus",
connectionTestSuccess: "Verbindungstest erfolgreich! Einstellungen sind gültig.",
connectionFailedStatus: "Verbindung fehlgeschlagen: Server gab Status {status} zurück",
connectionFailedUrl: "Kann nicht mit Server verbinden. Bitte überprüfen Sie die API-URL.",
authFailed: "Authentifizierung fehlgeschlagen. Bitte überprüfen Sie Ihr Token.",
connectionTestFailed: "Verbindungstest fehlgeschlagen: {error}",
syncFailedMessage: "Synchronisierung fehlgeschlagen. Bitte versuchen Sie es erneut.",
foundVideosToSync: "{count} Videos mit lokalen Dateien zum Synchronisieren gefunden",
uploadingVideo: "Lade hoch: {title}",
clearThumbnailCache: "Clear Thumbnail Local Cache",
clearing: "Clearing...",
clearThumbnailCacheSuccess: "Thumbnail cache cleared successfully. Thumbnails will be regenerated when accessed next time.",
clearThumbnailCacheError: "Failed to clear thumbnail cache",
clearThumbnailCacheConfirmMessage: "This will clear all locally cached thumbnails for cloud videos. Thumbnails will be regenerated from cloud storage when accessed next time. Continue?",
manageContent: "Inhalte Verwalten",
videos: "Videos",
collections: "Sammlungen",
allVideos: "Alle Videos",
delete: "Löschen",
backToHome: "Zurück zur Startseite",
confirmDelete: "Sind Sie sicher, dass Sie dies löschen möchten?",
deleteSuccess: "Erfolgreich gelöscht",
deleteFailed: "Löschen fehlgeschlagen",
noVideos: "Keine Videos gefunden",
noCollectionsFound: "Keine Sammlungen gefunden",
noCollections: "Keine Sammlungen gefunden",
searchVideos: "Videos suchen...",
thumbnail: "Miniaturansicht",
title: "Titel",
author: "Autor",
authors: "Autoren",
created: "Erstellt",
name: "Name",
size: "Größe",
actions: "Aktionen",
deleteCollection: "Sammlung Löschen",
deleteVideo: "Video Löschen",
noVideosFoundMatching: "Keine Videos gefunden, die Ihrer Suche entsprechen.",
playing: "Abspielen",
paused: "Pause",
next: "Weiter",
previous: "Zurück",
loop: "Schleife",
autoPlayOn: "Automatische Wiedergabe Ein",
autoPlayOff: "Automatische Wiedergabe Aus",
autoPlayNext: "Nächstes automatisch abspielen",
videoNotFound: "Video nicht gefunden",
videoNotFoundOrLoaded:
"Video nicht gefunden oder konnte nicht geladen werden.",
deleting: "Löschen...",
addToCollection: "Zu Sammlung Hinzufügen",
originalLink: "Originallink",
source: "Quelle:",
addedDate: "Hinzugefügt am:",
latestComments: "Neueste Kommentare",
hideComments: "Kommentare ausblenden",
showComments: "Kommentare anzeigen",
noComments: "Keine Kommentare verfügbar.",
upNext: "Als Nächstes",
noOtherVideos: "Keine anderen Videos verfügbar",
currentlyIn: "Derzeit in:",
collectionWarning:
"Das Hinzufügen zu einer anderen Sammlung entfernt es aus der aktuellen.",
addToExistingCollection: "Zu bestehender Sammlung hinzufügen:",
selectCollection: "Sammlung auswählen",
add: "Hinzufügen",
createNewCollection: "Neue Sammlung erstellen:",
collectionName: "Sammlungsname",
create: "Erstellen",
removeFromCollection: "Aus Sammlung Entfernen",
confirmRemoveFromCollection:
"Sind Sie sicher, dass Sie dieses Video aus der Sammlung entfernen möchten?",
remove: "Entfernen",
loadingVideo: "Video wird geladen...",
current: "(Aktuell)",
rateThisVideo: "Dieses Video bewerten",
enterFullscreen: "Vollbild",
exitFullscreen: "Vollbild Verlassen",
share: "Teilen",
editTitle: "Titel Bearbeiten",
hideVideo: "Video für Besuchermodus ausblenden",
showVideo: "Video für Besuchermodus sichtbar machen",
toggleVisibility: "Sichtbarkeit Umschalten",
titleUpdated: "Titel erfolgreich aktualisiert",
titleUpdateFailed: "Fehler beim Aktualisieren des Titels",
refreshThumbnail: "Vorschaubild aktualisieren",
thumbnailRefreshed: "Vorschaubild erfolgreich aktualisiert",
thumbnailRefreshFailed: "Aktualisierung des Vorschaubilds fehlgeschlagen",
videoUpdated: "Video erfolgreich aktualisiert",
videoUpdateFailed: "Videoaktualisierung fehlgeschlagen",
failedToLoadVideos:
"Videos konnten nicht geladen werden. Bitte versuchen Sie es später erneut.",
videoRemovedSuccessfully: "Video erfolgreich entfernt",
failedToDeleteVideo: "Löschen des Videos fehlgeschlagen",
pleaseEnterSearchTerm: "Bitte geben Sie einen Suchbegriff ein",
failedToSearch: "Suche fehlgeschlagen. Bitte versuchen Sie es erneut.",
searchCancelled: "Suche abgebrochen",
openInExternalPlayer: "In externem Player öffnen",
playWith: "Abspielen mit...",
deleteAllFilteredVideos: "Alle gefilterten Videos löschen",
confirmDeleteFilteredVideos: "Sind Sie sicher, dass Sie {count} Videos löschen möchten, die nach den ausgewählten Tags gefiltert wurden?",
deleteFilteredVideosSuccess: "Erfolgreich {count} Videos gelöscht.",
deletingVideos: "Videos werden gelöscht...",
signIn: "Anmelden",
verifying: "Überprüfen...",
incorrectPassword: "Falsches Passwort",
loginFailed: "Fehler beim Überprüfen des Passworts",
defaultPasswordHint: "Standardpasswort: 123",
checkingConnection: "Verbindung wird überprüft...",
connectionError: "Verbindungsfehler",
backendConnectionFailed:
"Verbindung zum Server nicht möglich. Bitte überprüfen Sie, ob das Backend läuft und der Port geöffnet ist, und versuchen Sie es erneut.",
retry: "Wiederholen",
resetPassword: "Passwort zurücksetzen",
resetPasswordTitle: "Passwort zurücksetzen",
resetPasswordMessage:
"Sind Sie sicher, dass Sie das Passwort zurücksetzen möchten? Das aktuelle Passwort wird auf eine zufällige 8-stellige Zeichenfolge zurückgesetzt und im Backend-Protokoll angezeigt.",
resetPasswordConfirm: "Zurücksetzen",
resetPasswordSuccess:
"Das Passwort wurde zurückgesetzt. Überprüfen Sie die Backend-Protokolle für das neue Passwort.",
waitTimeMessage: "Bitte warten Sie {time}, bevor Sie es erneut versuchen.",
tooManyAttempts: "Zu viele fehlgeschlagene Versuche.",
linkCopied: "Link in die Zwischenablage kopiert",
copyFailed: "Link konnte nicht kopiert werden",
loadingCollection: "Sammlung wird geladen...",
collectionNotFound: "Sammlung nicht gefunden",
noVideosInCollection: "Keine Videos in dieser Sammlung.",
back: "Zurück",
loadVideosError:
"Fehler beim Laden der Videos. Bitte versuchen Sie es später erneut.",
unknownAuthor: "Unbekannt",
noVideosForAuthor: "Keine Videos für diesen Autor gefunden.",
deleteAuthor: "Autor löschen",
deleteAuthorConfirmation: "Sind Sie sicher, dass Sie den Autor {author} löschen möchten? Dies löscht alle Videos dieses Autors.",
authorDeletedSuccessfully: "Autor erfolgreich gelöscht",
failedToDeleteAuthor: "Fehler beim Löschen des Autors",
deleteCollectionTitle: "Sammlung Löschen",
deleteCollectionConfirmation:
"Sind Sie sicher, dass Sie die Sammlung löschen möchten",
collectionContains: "Diese Sammlung enthält",
deleteCollectionOnly: "Nur Sammlung Löschen",
deleteCollectionAndVideos: "Sammlung und Alle Videos Löschen",
loading: "Laden...",
error: "Fehler",
success: "Erfolg",
cancel: "Abbrechen",
close: "Schließen",
ok: "OK",
confirm: "Bestätigen",
save: "Speichern",
note: "Hinweis",
on: "Ein",
off: "Aus",
continue: "Weiter",
expand: "Erweitern",
collapse: "Einklappen",
unknownDate: "Unbekanntes Datum",
part: "Teil",
collection: "Sammlung",
selectVideoFile: "Videodatei Auswählen",
pleaseSelectVideo: "Bitte wählen Sie eine Videodatei aus",
uploadFailed: "Upload fehlgeschlagen",
failedToUpload: "Fehler beim Hochladen des Videos",
uploading: "Hochladen...",
upload: "Hochladen",
bilibiliCollectionDetected: "Bilibili-Sammlung Erkannt",
bilibiliSeriesDetected: "Bilibili-Serie Erkannt",
multiPartVideoDetected: "Mehrteiliges Video Erkannt",
authorOrPlaylist: "Autor / Wiedergabeliste",
playlistDetected: "Wiedergabeliste erkannt",
playlistHasVideos: "Diese Wiedergabeliste hat {count} Videos.",
downloadPlaylistAndCreateCollection: "Videos der Wiedergabeliste herunterladen und eine Sammlung dafür erstellen?",
collectionHasVideos: "Diese Bilibili-Sammlung hat {count} Videos.",
seriesHasVideos: "Diese Bilibili-Serie hat {count} Videos.",
videoHasParts: "Dieses Bilibili-Video hat {count} Teile.",
downloadAllVideos: "Alle {count} Videos Herunterladen",
downloadAllParts: "Alle {count} Teile Herunterladen",
downloadThisVideoOnly: "Nur Dieses Video Herunterladen",
downloadCurrentPartOnly: "Nur Aktuellen Teil Herunterladen",
processing: "Verarbeiten...",
wouldYouLikeToDownloadAllParts: "Möchten Sie alle Teile herunterladen?",
wouldYouLikeToDownloadAllVideos: "Möchten Sie alle Videos herunterladen?",
allPartsAddedToCollection: "Alle Teile werden dieser Sammlung hinzugefügt",
allVideosAddedToCollection: "Alle Videos werden dieser Sammlung hinzugefügt",
queued: "In Warteschlange",
waitingInQueue: "Warten in Warteschlange",
// Downloads
downloads: "Downloads",
activeDownloads: "Aktive Downloads",
manageDownloads: "Downloads Verwalten",
queuedDownloads: "Warteschlange",
downloadHistory: "Download-Verlauf",
clearQueue: "Warteschlange Leeren",
clearHistory: "Verlauf Löschen",
noActiveDownloads: "Keine aktiven Downloads",
noQueuedDownloads: "Keine Downloads in der Warteschlange",
noDownloadHistory: "Kein Download-Verlauf",
downloadCancelled: "Download abgebrochen",
queueCleared: "Warteschlange geleert",
historyCleared: "Verlauf gelöscht",
removedFromQueue: "Aus der Warteschlange entfernt",
removedFromHistory: "Aus dem Verlauf entfernt",
previouslyDeletedVideo: "Zuvor gelöschtes Video",
previouslyDeleted: "Zuvor gelöscht",
videoWasDeleted: "Dieses Video wurde bereits heruntergeladen, aber gelöscht.",
downloadStartedSuccessfully: "Download erfolgreich gestartet",
collectionCreatedSuccessfully: "Sammlung erfolgreich erstellt",
videoAddedToCollection: "Video zur Sammlung hinzugefügt",
videoRemovedFromCollection: "Video aus der Sammlung entfernt",
collectionDeletedSuccessfully: "Sammlung erfolgreich gelöscht",
failedToDeleteCollection: "Fehler beim Löschen der Sammlung",
progress: "Fortschritt",
speed: "Geschwindigkeit",
finishedAt: "Beendet am",
failed: "Fehlgeschlagen",
// Batch Download
batchDownload: "Stapel-Download",
batchDownloadDescription: "Fügen Sie unten mehrere URLs ein, eine pro Zeile.",
urls: "URLs",
addToQueue: "Zur Warteschlange hinzufügen",
batchTasksAdded: "{count} Aufgaben hinzugefügt",
addBatchTasks: "Stapelaufgaben hinzufügen",
// Subscriptions
subscribeToAuthor: "Autor abonnieren",
subscribeConfirmationMessage: "Möchten Sie {author} abonnieren?",
subscribeDescription:
"Das System prüft automatisch auf neue Videos dieses Autors und lädt sie herunter.",
checkIntervalMinutes: "Prüfintervall (Minuten)",
subscribe: "Abonnieren",
subscriptions: "Abonnements",
interval: "Intervall",
lastCheck: "Letzte Prüfung",
platform: "Plattform",
unsubscribe: "Deabonnieren",
confirmUnsubscribe:
"Sind Sie sicher, dass Sie {author} deabonnieren möchten?",
subscribedSuccessfully: "Erfolgreich abonniert",
unsubscribedSuccessfully: "Erfolgreich deabonniert",
subscriptionAlreadyExists: "Sie haben diesen Autor bereits abonniert.",
minutes: "Minuten",
never: "Nie",
downloadAllPreviousVideos: "Alle vorherigen Videos dieses Autors herunterladen",
downloadAllPreviousWarning:
"Warnung: Dies lädt alle vorherigen Videos dieses Autors herunter. Dies kann erheblichen Speicherplatz verbrauchen und könnte Bot-Erkennungsmechanismen auslösen, die zu temporären oder dauerhaften Sperren der Plattform führen können. Verwenden Sie auf eigenes Risiko.",
continuousDownloadTasks: "Kontinuierliche Download-Aufgaben",
taskStatusActive: "Aktiv",
taskStatusPaused: "Pausiert",
taskStatusCompleted: "Abgeschlossen",
taskStatusCancelled: "Abgebrochen",
downloaded: "Heruntergeladen",
cancelTask: "Aufgabe abbrechen",
confirmCancelTask: "Sind Sie sicher, dass Sie die Download-Aufgabe für {author} abbrechen möchten?",
taskCancelled: "Aufgabe erfolgreich abgebrochen",
deleteTask: "Aufgabe löschen",
confirmDeleteTask: "Sind Sie sicher, dass Sie den Aufgaben-Datensatz für {author} löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.",
taskDeleted: "Aufgabe erfolgreich gelöscht",
clearFinishedTasks: "Beendete Aufgaben löschen",
tasksCleared: "Beendete Aufgaben erfolgreich gelöscht",
confirmClearFinishedTasks: "Sind Sie sicher, dass Sie alle beendeten Aufgaben (abgeschlossen, abgebrochen) löschen möchten? Dies entfernt sie aus der Liste, löscht aber keine heruntergeladenen Dateien.",
clear: "Löschen",
// Instruction Page
instructionSection1Title: "1. Download & Aufgabenverwaltung",
instructionSection1Desc:
"Dieses Modul umfasst Videoerfassung, Batch-Aufgaben und Dateiimportfunktionen.",
instructionSection1Sub1: "Link-Download:",
instructionSection1Item1Label: "Basis-Download:",
instructionSection1Item1Text:
"Fügen Sie Links von verschiedenen Videoseiten in das Eingabefeld ein, um direkt herunterzuladen.",
instructionSection1Item2Label: "Berechtigungen:",
instructionSection1Item2Text:
"Für Seiten, die eine Mitgliedschaft oder Anmeldung erfordern, melden Sie sich bitte zuerst in einem neuen Browser-Tab im entsprechenden Konto an, um Download-Berechtigungen zu erhalten.",
instructionSection1Sub2: "Intelligente Erkennung:",
instructionSection1Item3Label: "YouTube-Autoren-Abonnement:",
instructionSection1Item3Text:
"Wenn der eingefügte Link der Kanal eines Autors ist, fragt das System, ob Sie abonnieren möchten. Nach dem Abonnieren kann das System automatisch nach Updates des Autors in festgelegten Intervallen suchen und diese herunterladen.",
instructionSection1Item4Label: "Bilibili-Sammlungs-Download:",
instructionSection1Item4Text:
"Wenn der eingefügte Link ein Bilibili-Favorit/Sammlung ist, fragt das System, ob Sie den gesamten Inhalt der Sammlung herunterladen möchten.",
instructionSection1Sub3: "Erweiterte Tools (Download-Verwaltungsseite):",
instructionSection1Item5Label: "Batch-Aufgaben hinzufügen:",
instructionSection1Item5Text:
"Unterstützt das Einfügen mehrerer Download-Links auf einmal (einer pro Zeile) für das Batch-Hinzufügen.",
instructionSection1Item6Label: "Dateien scannen:",
instructionSection1Item6Text:
"Sucht automatisch nach allen Dateien im Videospeicher-Stammverzeichnis und Ordnern der ersten Ebene. Diese Funktion eignet sich zum Synchronisieren von Dateien mit dem System, nachdem Administratoren sie manuell im Server-Backend abgelegt haben.",
instructionSection1Item7Label: "Video hochladen:",
instructionSection1Item7Text:
"Unterstützt das Hochladen lokaler Videodateien direkt vom Client auf den Server.",
instructionSection2Title: "2. Videobibliotheksverwaltung",
instructionSection2Desc:
"Verwalten und bearbeiten Sie heruntergeladene oder importierte Videoressourcen.",
instructionSection2Sub1: "Sammlungs-/Video-Löschung:",
instructionSection2Text1:
"Beim Löschen einer Sammlung auf der Verwaltungsseite bietet das System zwei Optionen: nur das Sammlungslistenelement löschen (Dateien behalten) oder die physischen Dateien innerhalb der Sammlung vollständig löschen.",
instructionSection2Sub2: "Thumbnail-Reparatur:",
instructionSection2Text2:
"Wenn ein Video nach dem Herunterladen kein Cover hat, klicken Sie auf die Aktualisieren-Schaltfläche auf dem Video-Thumbnail, und das System erfasst den ersten Frame des Videos erneut als neues Thumbnail.",
instructionSection3Title: "3. Systemeinstellungen",
instructionSection3Desc:
"Systemparameter konfigurieren, Daten verwalten und Funktionen erweitern.",
instructionSection3Sub1: "Sicherheitseinstellungen:",
instructionSection3Text1:
"Legen Sie das System-Login-Passwort fest (das Standard-Initialpasswort ist 123, es wird empfohlen, es nach dem ersten Login zu ändern).",
instructionSection3Sub2: "Tag-Verwaltung:",
instructionSection3Text2:
'Unterstützt das Hinzufügen oder Löschen von Videoklassifizierungs-Tags. Hinweis: Sie müssen auf die Schaltfläche "Speichern" unten auf der Seite klicken, damit Änderungen wirksam werden.',
instructionSection3Sub3: "Systemwartung:",
instructionSection3Item1Label: "Temporäre Dateien bereinigen:",
instructionSection3Item1Text:
"Wird verwendet, um restliche temporäre Download-Dateien zu löschen, die durch gelegentliche Backend-Fehler verursacht wurden, um Speicherplatz freizugeben.",
instructionSection3Item2Label: "Datenbankmigration:",
instructionSection3Item2Text:
"Entwickelt für Benutzer früherer Versionen. Verwenden Sie diese Funktion, um Daten von JSON in die neue SQLite-Datenbank zu migrieren. Klicken Sie nach erfolgreicher Migration auf die Löschen-Schaltfläche, um alte Verlaufsdaten zu bereinigen.",
instructionSection3Sub4: "Erweiterte Dienste:",
instructionSection3Item3Label: "OpenList Cloud Drive:",
instructionSection3Item3Text:
"(In Entwicklung) Unterstützt die Verbindung zu benutzerbereitgestellten OpenList-Diensten. Fügen Sie hier eine Konfiguration hinzu, um die Cloud-Laufwerksintegration zu aktivieren.",
history: "Verlauf",
downloading: "Herunterladen...",
poweredBy: "Bereitgestellt von MyTube",
existingVideoDetected: "Vorhandenes Video erkannt",
videoAlreadyDownloaded: "Dieses Video wurde bereits heruntergeladen.",
viewVideo: "Video ansehen",
downloadAgain: "Erneut herunterladen",
downloadedOn: "Heruntergeladen am",
deletedOn: "Gelöscht am",
existingVideo: "Vorhandenes Video",
skipped: "Übersprungen",
videoSkippedExists: "Video existiert bereits, Download übersprungen",
videoSkippedDeleted: "Video wurde zuvor gelöscht, Download übersprungen",
// Sorting
sort: "Sortieren",
sortBy: "Sortieren nach",
dateDesc: "Hinzugefügt (Neueste)",
dateAsc: "Hinzugefügt (Älteste)",
viewsDesc: "Aufrufe (Absteigend)",
viewsAsc: "Aufrufe (Aufsteigend)",
nameAsc: "Name (A-Z)",
random: "Zufallswiedergabe",
// yt-dlp Configuration
ytDlpConfiguration: "yt-dlp Konfiguration",
ytDlpConfigurationDescription:
"Konfigurieren Sie yt-dlp Download-Optionen. Siehe",
ytDlpConfigurationDocs: "Dokumentation",
ytDlpConfigurationDescriptionEnd: "für weitere Informationen.",
customize: "Anpassen",
hide: "Ausblenden",
reset: "Zurücksetzen",
more: "Mehr",
proxyOnlyApplyToYoutube: "Proxy nur auf Youtube anwenden",
moveSubtitlesToVideoFolder: "Untertitel-Speicherort",
moveSubtitlesToVideoFolderOn: "Zusammen mit Video",
moveSubtitlesToVideoFolderOff: "Im isolierten Untertitel-Ordner",
moveSubtitlesToVideoFolderDescription:
"Wenn aktiviert, werden Untertiteldateien in denselben Ordner wie die Videodatei verschoben. Wenn deaktiviert, werden sie in den isolierten Untertitelordner verschoben.",
moveThumbnailsToVideoFolder: "Thumbnail-Speicherort",
moveThumbnailsToVideoFolderOn: "Zusammen mit Video",
moveThumbnailsToVideoFolderOff: "In isoliertem Bilderordner",
moveThumbnailsToVideoFolderDescription:
"Wenn aktiviert, werden Thumbnail-Dateien in denselben Ordner wie die Videodatei verschoben. Wenn deaktiviert, werden sie in den isolierten Bilderordner verschoben.",
// Database Export/Import
exportImportDatabase: "Datenbank Exportieren/Importieren",
exportImportDatabaseDescription:
"Exportieren Sie Ihre Datenbank als Backup-Datei oder importieren Sie ein zuvor exportiertes Backup. Der Import überschreibt vorhandene Daten mit den Backup-Daten.",
exportDatabase: "Datenbank Exportieren",
importDatabase: "Datenbank Importieren",
onlyDbFilesAllowed: "Nur .db-Dateien erlaubt",
importDatabaseWarning:
"Warnung: Das Importieren einer Datenbank überschreibt alle vorhandenen Daten. Stellen Sie sicher, dass Sie zuerst Ihre aktuelle Datenbank als Backup exportieren.",
selectDatabaseFile: "Datenbankdatei Auswählen",
databaseExportedSuccess: "Datenbank erfolgreich exportiert",
databaseExportFailed: "Fehler beim Exportieren der Datenbank",
databaseImportedSuccess:
"Datenbank erfolgreich importiert. Vorhandene Daten wurden mit den Backup-Daten überschrieben.",
databaseImportFailed: "Fehler beim Importieren der Datenbank",
cleanupBackupDatabases: "Backup-Datenbanken Bereinigen",
cleanupBackupDatabasesWarning:
"Warnung: Dies löscht dauerhaft alle Backup-Datenbankdateien (mytube-backup-*.db.backup), die bei vorherigen Importen erstellt wurden. Diese Aktion kann nicht rückgängig gemacht werden. Sind Sie sicher, dass Sie fortfahren möchten?",
backupDatabasesCleanedUp: "Backup-Datenbanken erfolgreich bereinigt",
backupDatabasesCleanupFailed: "Fehler beim Bereinigen der Backup-Datenbanken",
restoreFromLastBackup: "Von Letztem Backup Wiederherstellen",
restoreFromLastBackupWarning:
"Warnung: Dies stellt die Datenbank aus der letzten automatischen Backup-Datei wieder her. Alle aktuellen Daten werden durch die Backup-Daten überschrieben. Diese Aktion kann nicht rückgängig gemacht werden. Sind Sie sicher, dass Sie fortfahren möchten?",
restoreFromLastBackupSuccess:
"Datenbank erfolgreich aus Backup wiederhergestellt",
restoreFromLastBackupFailed: "Fehler beim Wiederherstellen aus Backup",
lastBackupDate: "Datum des letzten Backups",
noBackupAvailable: "Kein Backup verfügbar",
// Cloudflare Tunnel
cloudflaredTunnel: "Cloudflare Tunnel",
enableCloudflaredTunnel: "Enable Cloudflare Tunnel",
cloudflaredToken: "Tunnel Token (Optional)",
cloudflaredTokenHelper: "Paste your tunnel token here, or leave empty to use a random Quick Tunnel.",
waitingForUrl: "Waiting for Quick Tunnel URL...",
running: "Running",
stopped: "Stopped",
tunnelId: "Tunnel ID",
accountTag: "Account Tag",
copied: "Copied!",
clickToCopy: "Click to copy",
quickTunnelWarning: "Quick Tunnel URLs change every time the tunnel restarts.",
managedInDashboard: "Public hostname is managed in your Cloudflare Zero Trust Dashboard.",
failedToDownloadVideo: "Fehler beim Herunterladen des Videos. Bitte versuchen Sie es erneut.",
failedToDownload: "Fehler beim Herunterladen. Bitte versuchen Sie es erneut.",
playlistDownloadStarted: "Playlist-Download gestartet",
cleanupTempFilesConfirmMessage: "Dadurch werden alle .ytdl- und .part-Dateien im Upload-Verzeichnis dauerhaft gelöscht. Stellen Sie sicher, dass keine Downloads aktiv sind, bevor Sie fortfahren.",
cleanupTempFilesActiveDownloads: "Temporäre Dateien können nicht bereinigt werden, während Downloads aktiv sind. Bitte warten Sie, bis alle Downloads abgeschlossen sind, oder brechen Sie sie zuerst ab.",
status: "Status",
videoDownloading: "Video wird heruntergeladen",
copyUrl: "URL kopieren",
new: "NEU",
disclaimerTitle: "Haftungsausschluss",
disclaimerText: "1. Zweck und Einschränkungen\nDiese Software (einschließlich Code und Dokumentation) ist ausschließlich für persönliches Lernen, Forschung und technischen Austausch bestimmt. Es ist strengstens untersagt, diese Software für kommerzielle Zwecke oder illegale Aktivitäten zu verwenden, die gegen lokale Gesetze und Vorschriften verstoßen.\n\n2. Haftung\nDer Entwickler hat keine Kontrolle darüber, wie Benutzer diese Software verwenden. Jegliche rechtliche Haftung, Streitigkeiten oder Schäden, die aus der illegalen oder unsachgemäßen Verwendung dieser Software entstehen (einschließlich, aber nicht beschränkt auf Urheberrechtsverletzungen), liegen allein beim Benutzer. Der Entwickler übernimmt keine direkte, indirekte oder gesamtschuldnerische Haftung.\n\n3. Änderungen und Verbreitung\nDieses Projekt ist Open Source. Jede Einzelperson oder Organisation, die diesen Code ändert oder forkt, muss die Open-Source-Lizenz einhalten. Wichtig: Wenn Dritte den Code ändern, um die ursprünglichen Benutzerauthentifizierungs-/Sicherheitsmechanismen zu umgehen oder zu entfernen, und solche Versionen verbreiten, trägt der Modifikator/Verteiler die volle Verantwortung für alle Konsequenzen. Wir raten dringend davon ab, Sicherheitsüberprüfungsmechanismen zu umgehen oder zu manipulieren.\n\n4. Gemeinnützige Erklärung\nDies ist ein komplett kostenloses Open-Source-Projekt. Der Entwickler akzeptiert keine Spenden und hat nie Spendenseiten veröffentlicht. Die Software selbst erlaubt keine Gebühren und bietet keine kostenpflichtigen Dienste an. Bitte seien Sie wachsam und hüten Sie sich vor Betrug oder irreführenden Informationen, die behaupten, Gebühren im Namen dieses Projekts zu erheben.",
};