export const nlTranslation = { sidebar: { library: 'Bibliotheek', mainstage: 'Hoofdpodium', newReleases: 'Nieuw', allAlbums: 'Alle albums', randomAlbums: 'Willekeurige albums', randomPicker: 'Mix samenstellen', artists: 'Artiesten', composers: 'Componisten', randomMix: 'Willekeurige mix', favorites: 'Favorieten', nowPlaying: 'Nu bezig', system: 'Systeem', statistics: 'Statistieken', settings: 'Instellingen', help: 'Help', expand: 'Zijbalk uitklappen', collapse: 'Zijbalk inklappen', downloadingTracks: '{{n}} nummers worden gecached…', syncingTracks: 'Synchroniseren {{done}}/{{total}}…', cancelDownload: 'Download annuleren', offlineLibrary: 'Offline bibliotheek', genres: 'Genres', tracks: 'Nummers', playlists: 'Playlists', mostPlayed: 'Meest gespeeld', losslessAlbums: 'Lossless', radio: 'Internetradio', folderBrowser: 'Mappenverkenner', deviceSync: 'Apparaatsync', libraryScope: 'Bibliotheekbereik', allLibraries: 'Alle bibliotheken', expandPlaylists: 'Afspeellijsten uitklappen', collapsePlaylists: 'Afspeellijsten inklappen', more: 'Meer', feelingLucky: 'Geluksmix', }, home: { hero: 'Uitgelicht', starred: 'Persoonlijke favorieten', recent: 'Recent toegevoegd', mostPlayed: 'Meest gespeeld', recentlyPlayed: 'Recent afgespeeld', losslessAlbums: 'Lossless-albums', discover: 'Ontdekken', discoverSongs: 'Nummers ontdekken', loadMore: 'Meer laden', discoverMore: 'Meer ontdekken', discoverArtists: 'Artiesten ontdekken', discoverArtistsMore: 'Alle artiesten', becauseYouLike: 'Omdat je hebt geluisterd…', becauseYouLikeFor: 'Omdat je naar {{artist}} hebt geluisterd', similarTo: 'Lijkt op {{artist}}', becauseYouLikeTracks_one: '{{count}} nummer', becauseYouLikeTracks_other: '{{count}} nummers' }, hero: { eyebrow: 'Uitgelicht album', playAlbum: 'Album afspelen', enqueue: 'In wachtrij', enqueueTooltip: 'Volledig album aan wachtrij toevoegen', }, search: { placeholder: 'Zoek naar artiest, album of nummer…', noResults: 'Geen resultaten voor "{{query}}"', artists: 'Artiesten', albums: 'Albums', songs: 'Nummers', clearLabel: 'Zoekopdracht wissen', addedToQueueToast: '"{{title}}" toegevoegd aan de wachtrij', title: 'Zoeken', resultsFor: 'Resultaten voor "{{query}}"', album: 'Album', advanced: 'Geavanceerd zoeken', advancedSearchTerm: 'Zoekterm', advancedSearchPlaceholder: 'Titel, album, artiest…', advancedGenre: 'Genre', advancedAllGenres: 'Alle genres', advancedYear: 'Jaar', advancedYearFrom: 'van', advancedYearTo: 'tot', advancedAll: 'Alle', advancedSearch: 'Zoeken', advancedEmpty: 'Voer een zoekterm in of selecteer een filter.', advancedNoResults: 'Geen resultaten gevonden.', advancedGenreNote: 'Nummers worden willekeurig uit dit genre geselecteerd.', recentSearches: 'Recente zoekopdrachten', browse: 'Bladeren', emptyHint: 'Wat wil je horen?', genres: 'Genres', }, nowPlaying: { tooltip: 'Wie luistert er?', title: 'Wie luistert er?', loading: 'Laden…', nobody: 'Er luistert momenteel niemand.', minutesAgo: '{{n}} min geleden', nothingPlaying: 'Nog niets bezig. Start een nummer!', aboutArtist: 'Over de artiest', fromAlbum: 'Van dit album', viewAlbum: 'Album openen', goToArtist: 'Naar artiest', readMore: 'Meer lezen', showLess: 'Minder tonen', genreInfo: 'Genre', trackInfo: 'Trackinfo', topSongs: 'Meest afgespeeld van deze artiest', topSongsCredit: 'Topnummers van {{name}}', trackPosition: 'Track {{pos}}', playsCount_one: '{{count}} keer afgespeeld', playsCount_other: '{{count}} keer afgespeeld', releasedYearsAgo_one: '{{count}} jaar geleden', releasedYearsAgo_other: '{{count}} jaar geleden', discography: 'Discografie', lastfmStats: 'Last.fm-statistieken', thisTrack: 'Dit nummer', thisArtist: 'Deze artiest', listeners: 'luisteraars', scrobbles: 'scrobbles', yourScrobbles: 'door jou', listenersN: '{{n}} luisteraars', scrobblesN: '{{n}} scrobbles', playsByYouN: '{{n}}× door jou afgespeeld', openTrackOnLastfm: 'Nummer op Last.fm', openArtistOnLastfm: 'Artiest op Last.fm', rgTrackTooltip: 'ReplayGain (track)', rgAlbumTooltip: 'ReplayGain (album)', rgAutoTooltip: 'ReplayGain (auto)', showMoreTracks: '{{count}} meer tonen', showLessTracks: 'Minder tonen', hideCard: 'Kaart verbergen', layoutMenu: 'Lay-out', visibleCards: 'Zichtbare kaarten', hiddenCards: 'Verborgen kaarten', noHiddenCards: 'Geen verborgen kaarten', resetLayout: 'Lay-out resetten', emptyColumn: 'Sleep kaarten hier', }, contextMenu: { playNow: 'Nu afspelen', playNext: 'Volgende afspelen', addToQueue: 'Aan wachtrij toevoegen', enqueueAlbum: 'Album in wachtrij', enqueueAlbums_one: '{{count}} album in wachtrij', enqueueAlbums_other: '{{count}} albums in wachtrij', startRadio: 'Radio starten', instantMix: 'Instant Mix', instantMixFailed: 'Instant Mix mislukt — server- of pluginfout.', cliMixNeedsTrack: 'Er speelt niets — start eerst afspelen en voer het mix-commando opnieuw uit.', lfmLove: 'Liken op Last.fm', lfmUnlove: 'Niet meer liken op Last.fm', favorite: 'Favoriet', favoriteArtist: 'Favoriete artiest', favoriteAlbum: 'Favoriet album', unfavorite: 'Verwijderen uit favorieten', unfavoriteArtist: 'Artiest uit favorieten verwijderen', unfavoriteAlbum: 'Album uit favorieten verwijderen', removeFromQueue: 'Uit wachtrij verwijderen', openAlbum: 'Album openen', goToArtist: 'Naar artiest', download: 'Downloaden (ZIP)', addToPlaylist: 'Toevoegen aan playlist', selectedPlaylists: '{{count}} playlists geselecteerd', selectedAlbums: '{{count}} albums geselecteerd', selectedArtists: '{{count}} artiesten geselecteerd', songInfo: 'Nummerinfo', shareLink: 'Deellink kopiëren', shareCopied: 'Deellink gekopieerd naar het klembord.', shareCopyFailed: 'Kopiëren naar het klembord is mislukt.', }, sharePaste: { notLoggedIn: 'Log in en voeg de server toe voordat je een deellink plakt.', noMatchingServer: 'Geen opgeslagen server komt overeen met deze link. Voeg een server toe met dit adres: {{url}}', trackUnavailable: 'Dit nummer is niet op de server gevonden.', albumUnavailable: 'Dit album is niet op de server gevonden.', artistUnavailable: 'Deze artiest is niet op de server gevonden.', composerUnavailable: 'Deze componist is niet op de server gevonden.', openedTrack: 'Gedeeld nummer wordt afgespeeld.', openedAlbum: 'Gedeeld album wordt geopend.', openedArtist: 'Gedeelde artiest wordt geopend.', openedComposer: 'Gedeelde componist wordt geopend.', openedQueue_one: '{{count}} nummer van deellink wordt afgespeeld.', openedQueue_other: '{{count}} nummers van deellink worden afgespeeld.', openedQueuePartial: '{{played}} van {{total}} nummers uit de link worden afgespeeld ({{skipped}} niet gevonden op deze server).', queueAllUnavailable: 'Geen enkel nummer uit deze link is op de server gevonden.', genericError: 'De deellink kon niet worden geopend.', }, albumDetail: { back: 'Terug', orbitDoubleClickHint: 'Dubbelklik om dit nummer aan de Orbit-wachtrij toe te voegen', playAll: 'Alles afspelen', shareAlbum: 'Album delen', enqueue: 'In wachtrij', enqueueTooltip: 'Volledig album aan wachtrij toevoegen', artistBio: 'Artiest biografie', download: 'Downloaden (ZIP)', downloading: 'Laden…', cacheOffline: 'Offline beschikbaar maken', offlineCached: 'Offline beschikbaar', offlineDownloading: 'Wordt gecached… ({{n}}/{{total}})', removeOffline: 'Offline cache verwijderen', offlineStorageFull: 'Offline opslag vol (limiet: {{mb}} MB). Verwijder een album uit je offline bibliotheek of verhoog de limiet in de instellingen.', offlineStorageGoToSettings: 'Instellingen', offlineStorageGoToLibrary: 'Offline bibliotheek', favoriteAdd: 'Aan favorieten toevoegen', favoriteRemove: 'Uit favorieten verwijderen', favorite: 'Favoriet', noBio: 'Geen biografie beschikbaar.', moreByArtist: 'Meer van {{artist}}', tracksCount: '{{n}} nummers', goToArtist: 'Naar {{artist}}', moreLabelAlbums: 'Meer albums op {{label}}', trackTitle: 'Titel', trackAlbum: 'Album', trackArtist: 'Artiest', trackGenre: 'Genre', trackFormat: 'Formaat', trackFavorite: 'Favoriet', trackRating: 'Beoordeling', trackDuration: 'Duur', trackTotal: 'Totaal', columns: 'Kolommen', resetColumns: 'Standaard herstellen', notFound: 'Album niet gevonden.', bioModal: 'Artiest biografie', bioClose: 'Sluiten', ratingLabel: 'Beoordeling', enlargeCover: 'Vergroten', filterSongs: 'Filteren…', sortNatural: 'Natuurlijk', sortByTitle: 'A–Z (Titel)', sortByArtist: 'A–Z (Artiest)', sortByAlbum: 'A–Z (Album)', }, entityRating: { albumShort: 'Albumbeoordeling', artistShort: 'Artiestbeoordeling', albumAriaLabel: 'Albumbeoordeling', artistAriaLabel: 'Artiestbeoordeling', selectedArtistsRatingAriaLabel: 'Sterrenbeoordeling voor {{count}} geselecteerde artiesten', selectedAlbumsRatingAriaLabel: 'Sterrenbeoordeling voor {{count}} geselecteerde albums', saveFailed: 'Beoordeling opslaan mislukt.', }, artistDetail: { back: 'Terug', albums: 'Albums', album: 'Album', playAll: 'Alles afspelen', shareArtist: 'Artiest delen', shuffle: 'Willekeurig', radio: 'Radio', loading: 'Laden…', noRadio: 'Geen vergelijkbare nummers gevonden voor deze artiest.', notFound: 'Artiest niet gevonden.', albumsBy: 'Albums van {{name}}', topTracks: 'Populaire nummers', noAlbums: 'Geen albums gevonden.', trackTitle: 'Titel', trackAlbum: 'Album', trackDuration: 'Duur', favoriteAdd: 'Aan favorieten toevoegen', favoriteRemove: 'Uit favorieten verwijderen', favorite: 'Favoriet', albumCount_one: '{{count}} album', albumCount_other: '{{count}} albums', openedInBrowser: 'Geopend in browser', featuredOn: 'Ook te vinden op', similarArtists: 'Vergelijkbare artiesten', cacheOffline: 'Discografie offline opslaan', offlineCached: 'Discografie gecached', offlineDownloading: 'Cachen… ({{done}}/{{total}} albums)', uploadImage: 'Artiestafbeelding uploaden', uploadImageError: 'Uploaden van afbeelding mislukt', releaseTypes: { album: 'Album', ep: 'EP', single: 'Single', compilation: 'Compilatie', live: 'Live', soundtrack: 'Soundtrack', remix: 'Remix', other: 'Overig', }, }, favorites: { title: 'Favorieten', empty: 'Je hebt nog geen favorieten opgeslagen.', artists: 'Artiesten', albums: 'Albums', songs: 'Nummers', enqueueAll: 'Alles aan wachtrij toevoegen', playAll: 'Alles afspelen', removeSong: 'Verwijderen uit favorieten', stations: 'Radiostations', showingFiltered: 'Toont {{filtered}} van {{total}} ({{artist}})', showingCount: 'Toont {{filtered}} van {{total}}', clearArtistFilter: 'Artiestfilter wissen', noFilterResults: 'Geen resultaten met de geselecteerde filters.', allArtists: 'Alle artiesten', topArtists: 'Top-artiesten op favorieten', topArtistsSongCount_one: '{{count}} nummer', topArtistsSongCount_other: '{{count}} nummers', }, randomLanding: { title: 'Mix samenstellen', mixByTracks: 'Mix op nummers', mixByTracksDesc: 'Willekeurige selectie uit je volledige mediatheek', mixByAlbums: 'Mix op albums', mixByAlbumsDesc: 'Willekeurige albums voor nieuwe ontdekkingen', mixByLucky: 'Geluksmix', mixByLuckyDesc: 'Slimme Instant Mix op basis van topartiesten, albums en hoge beoordelingen', }, randomAlbums: { title: 'Willekeurige albums', refresh: 'Vernieuwen', }, genres: { title: 'Genres', genreCount: 'genres', albumCount_one: '{{count}} album', albumCount_other: '{{count}} albums', loading: 'Genres laden…', empty: 'Geen genres gevonden.', albumsLoading: 'Albums laden…', albumsEmpty: 'Geen albums gevonden voor dit genre.', loadMore: 'Meer laden', back: 'Terug', }, randomMix: { title: 'Willekeurige mix', remix: 'Opnieuw mixen', remixTooltip: 'Nieuwe willekeurige nummers laden', remixGenre: '{{genre}} mixen', remixTooltipGenre: 'Nieuwe {{genre}}-nummers laden', playAll: 'Alles afspelen', trackTitle: 'Titel', trackArtist: 'Artiest', trackAlbum: 'Album', trackFavorite: 'Favoriet', trackDuration: 'Duur', favoriteAdd: 'Aan favorieten toevoegen', favoriteRemove: 'Uit favorieten verwijderen', play: 'Afspelen', trackGenre: 'Genre', mixSettingsHeader: 'Mixinstellingen', exclusionsHeader: 'Uitsluitingen', filterPanelInexactSizeNote: 'De mixgrootte is een doel — grote verzoeken kunnen minder unieke nummers opleveren als de willekeurige pool van de server opraakt.', mixSize: 'Lijstgrootte', excludeAudiobooks: 'Luisterboeken en hoorspelen uitsluiten', excludeAudiobooksDesc: 'Vergelijkt trefwoorden met genre, titel, album en artiest — bijv. Hörbuch, Audiobook, Spoken Word, …', genreBlocked: 'Trefwoord geblokkeerd', genreAddedToBlacklist: 'Aan filterlijst toegevoegd', genreAlreadyBlocked: 'Al geblokkeerd', artistBlocked: 'Artiest geblokkeerd', artistAddedToBlacklist: 'Artiest aan filterlijst toegevoegd', artistClickHint: 'Klik om deze artiest te blokkeren', blacklistToggle: 'Trefwoordfilter', genreMixTitle: 'Genremix', genreMixDesc: 'Top 20 genres op aantal nummers — klik voor een willekeurige mix', genreMixAll: 'Alle nummers', genreMixLoadMore: '10 meer laden', genreMixNoGenres: 'Geen genres gevonden op server.', shuffleGenres: 'Andere genres tonen', filterPanelTitle: 'Filters', filterPanelDesc: 'Klik op een genre-tag of artiestennaam in de lijst om deze uit toekomstige mixes te weren.', genreClickHint: 'Klik op een genre-tag om het\ntoe te voegen als filtertrefwoord.\nVergelijkt genre, titel, album & artiest.', }, luckyMix: { done: 'Geluksmix klaar: {{count}} nummers', failed: 'Kon de Geluksmix niet maken. Probeer opnieuw.', unavailable: 'Geluksmix is niet beschikbaar voor deze server.', cancelTooltip: 'Geluksmix-opbouw annuleren', }, albums: { title: 'Alle albums', sortByName: 'A–Z (Album)', sortByArtist: 'A–Z (Artiest)', sortNewest: 'Nieuwste eerst', sortRandom: 'Willekeurig', yearFrom: 'Van', yearTo: 'Tot', yearFilterClear: 'Jaarfilter wissen', yearFilterLabel: 'Jaar', compilationLabel: 'Compilaties', compilationOnly: 'Alleen compilaties', compilationHide: 'Compilaties verbergen', compilationTooltipAll: 'Alle albums · klik: alleen compilaties', compilationTooltipOnly: 'Alleen compilaties · klik: compilaties verbergen', compilationTooltipHide: 'Compilaties verborgen · klik: toon alles', select: 'Meervoudige selectie', startSelect: 'Meervoudige selectie inschakelen', cancelSelect: 'Annuleren', selectionCount: '{{count}} geselecteerd', downloadZips: 'ZIPs downloaden', addOffline: 'Offline toevoegen', enqueueSelected_one: 'In wachtrij ({{count}})', enqueueSelected_other: 'In wachtrij ({{count}})', enqueueQueued_one: '{{count}} album toegevoegd aan wachtrij', enqueueQueued_other: '{{count}} albums toegevoegd aan wachtrij', downloadingZip: 'Downloaden {{current}}/{{total}}: {{name}}', downloadZipDone: '{{count}} ZIP(s) gedownload', downloadZipFailed: 'Downloaden van {{name}} mislukt', offlineQueuing: '{{count}} album(s) in wachtrij voor offline…', offlineFailed: 'Toevoegen van {{name}} offline mislukt', }, tracks: { title: 'Nummers', subtitle: 'Bladeren. Zoeken. Ontdekken.', heroEyebrow: 'Nummer van het moment', heroReroll: 'Een ander kiezen', playSong: 'Afspelen', enqueueSong: 'Aan wachtrij toevoegen', railRandom: 'Willekeurige selectie', railHighlyRated: 'Hoog beoordeeld', browseTitle: 'Alle nummers doorbladeren', browseUnsupported: 'Deze server toont niet de hele bibliotheek in één keer. Gebruik de zoekbalk hierboven om specifieke nummers te vinden.', searchPlaceholder: 'Zoek op titel, artiest of album…', count_one: '{{count}} nummer', count_other: '{{count}} nummers', }, artists: { title: 'Artiesten', search: 'Zoeken…', all: 'Alle', gridView: 'Rasterweergave', listView: 'Lijstweergave', imagesOn: 'Artiestafbeeldingen aan — kan netwerk- en systeembelasting verhogen', imagesOff: 'Artiestafbeeldingen uit — toont alleen initialen', loadMore: 'Meer laden', notFound: 'Geen artiesten gevonden.', albumCount_one: '{{count}} album', albumCount_other: '{{count}} albums', selectionCount: '{{count}} geselecteerd', select: 'Meervoudige selectie', startSelect: 'Meervoudige selectie inschakelen', cancelSelect: 'Annuleren', addToPlaylist: 'Toevoegen aan playlist', }, composers: { title: 'Componisten', search: 'Zoeken…', notFound: 'Geen componisten gevonden.', unsupported: 'Bladeren op componist vereist Navidrome 0.55 of nieuwer.', loadFailed: 'Kan componisten niet laden.', retry: 'Opnieuw proberen', involvedIn_one: 'Betrokken bij {{count}} album', involvedIn_other: 'Betrokken bij {{count}} albums', }, composerDetail: { back: 'Terug', notFound: 'Componist niet gevonden.', about: 'Over deze componist', works: 'Werken', noWorks: 'Geen werken gevonden.', workCount_one: '{{count}} werk', workCount_other: '{{count}} werken', shareComposer: 'Componist delen', unknownComposer: 'Componist', }, login: { subtitle: 'Jouw Navidrome-desktopspeler', serverName: 'Servernaam (optioneel)', serverNamePlaceholder: 'Mijn Navidrome', serverUrl: 'Server-URL', serverUrlPlaceholder: '192.168.1.100:4533 of https://music.voorbeeld.nl', username: 'Gebruikersnaam', usernamePlaceholder: 'admin', password: 'Wachtwoord', showPassword: 'Wachtwoord tonen', hidePassword: 'Wachtwoord verbergen', connect: 'Verbinden', connecting: 'Verbinden…', connected: 'Verbonden!', error: 'Verbinding mislukt — controleer je gegevens.', urlRequired: 'Voer een server-URL in.', savedServers: 'Opgeslagen servers', addNew: 'Of een nieuwe server toevoegen', orMagicString: 'Of magic string', magicStringPlaceholder: 'Plak een deelstring (psysonic1-…)', magicStringInvalid: 'Ongeldige of onleesbare magic string.', }, connection: { connected: 'Verbonden', connectedTo: 'Verbonden met {{server}}', disconnected: 'Verbroken', disconnectedFrom: 'Kan {{server}} niet bereiken — klik om instellingen te controleren', checking: 'Verbinden…', extern: 'Extern', offlineTitle: 'Geen serververbinding', offlineSubtitle: 'Kan {{server}} niet bereiken. Controleer je netwerk of server.', offlineModeBanner: 'Offline modus — afspelen vanuit lokale cache', offlineNoCacheBanner: 'Geen serververbinding — {{server}} niet bereikbaar', offlineLibraryTitle: 'Offline bibliotheek', offlineLibraryEmpty: 'Nog geen albums gecached. Ga online, open een album en klik op "Offline beschikbaar maken".', offlineAlbumCount: '{{n}} album', offlineAlbumCount_plural: '{{n}} albums', offlineFilterAll: 'Alles', offlineFilterAlbums: 'Albums', offlineFilterPlaylists: 'Afspeellijsten', offlineFilterArtists: 'Discografieën', retry: 'Opnieuw proberen', serverSettings: 'Serverinstellingen', switchServerTitle: 'Server wisselen', switchServerHint: 'Klik om een andere opgeslagen server te kiezen.', manageServers: 'Servers beheren…', switchFailed: 'Wisselen mislukt — server niet bereikbaar.', lastfmConnected: 'Last.fm verbonden als @{{user}}', lastfmSessionInvalid: 'Sessie ongeldig — klik om opnieuw te verbinden', }, common: { albums: 'Albums', album: 'Album', loading: 'Laden…', loadingMore: 'Laden…', loadingPlaylists: 'Afspeellijsten laden…', noAlbums: 'Geen albums gevonden.', downloading: 'Downloaden…', downloadZip: 'Downloaden (ZIP)', back: 'Terug', cancel: 'Annuleren', save: 'Opslaan', delete: 'Verwijderen', use: 'Gebruiken', add: 'Toevoegen', new: 'Nieuw', active: 'Actief', download: 'Downloaden', chooseDownloadFolder: 'Downloadmap kiezen', noFolderSelected: 'Geen map geselecteerd', rememberDownloadFolder: 'Deze map onthouden', filterGenre: 'Genre-filter', filterSearchGenres: 'Genres zoeken…', filterNoGenres: 'Geen genres gevonden', filterClear: 'Wissen', favorites: 'Favorieten', favoritesTooltipOff: 'Alleen favorieten tonen', favoritesTooltipOn: 'Alles tonen', play: 'Afspelen', bulkSelected: '{{count}} geselecteerd', clearSelection: 'Selectie wissen', bulkAddToPlaylist: 'Toevoegen aan afspeellijst', bulkRemoveFromPlaylist: 'Verwijderen uit afspeellijst', bulkClear: 'Selectie wissen', updaterAvailable: 'Update beschikbaar', updaterVersion: 'v{{version}} beschikbaar', updaterWebsite: 'Website', updaterModalTitle: 'Nieuwe versie beschikbaar', updaterChangelog: 'Wat is er nieuw', updaterDownloadBtn: 'Nu downloaden', updaterSkipBtn: 'Deze versie overslaan', updaterRemindBtn: 'Later herinneren', updaterDone: 'Download voltooid', updaterShowFolder: 'Tonen in map', updaterInstallHint: 'Sluit Psysonic en voer het installatieprogramma handmatig uit.', updaterAurHint: 'Update installeren via AUR:', updaterErrorMsg: 'Downloaden mislukt', updaterRetryBtn: 'Opnieuw proberen', durationHoursMinutes: '{{hours}} u {{minutes}} min', durationMinutesOnly: '{{minutes}} min', updaterOpenGitHub: 'Openen op GitHub', filters: 'Filters', more: 'meer', yearRange: 'Jaarbereik', clearAll: 'Alles wissen', }, settings: { title: 'Instellingen', language: 'Taal', languageEn: 'English', languageDe: 'Deutsch', languageEs: 'Español', languageFr: 'Français', languageNl: 'Nederlands', languageNb: 'Norsk', languageRu: 'Русский', languageZh: '中文', font: 'Lettertype', fontHintOpenDyslexic: 'Dyslexie-vriendelijk · geen Chinese ondersteuning', theme: 'Thema', appearance: 'Weergave', servers: 'Servers', serverName: 'Servernaam', serverUrl: 'Server-URL', serverUrlPlaceholder: '192.168.1.100:4533 of https://music.voorbeeld.nl', serverUsername: 'Gebruikersnaam', serverPassword: 'Wachtwoord', addServer: 'Server toevoegen', addServerTitle: 'Nieuwe server toevoegen', useServer: 'Gebruiken', deleteServer: 'Verwijderen', noServers: 'Geen servers opgeslagen.', serverActive: 'Actief', confirmDeleteServer: 'Server "{{name}}" verwijderen?', serverConnecting: 'Verbinden…', serverConnected: 'Verbonden!', serverFailed: 'Verbinding mislukt.', testBtn: 'Verbinding testen', testingBtn: 'Testen…', serverCompatible: 'Gemaakt voor Navidrome. Andere Subsonic-compatibele servers (Gonic, Airsonic, …) kunnen met beperkte functionaliteit werken, omdat Psysonic veel Navidrome-specifieke API-endpoints gebruikt.', userMgmtTitle: 'Gebruikersbeheer', userMgmtDesc: 'Beheer gebruikers op deze server. Vereist admin-rechten.', userMgmtNoAdmin: 'Je hebt admin-rechten nodig om gebruikers op deze server te beheren.', userMgmtLoadError: 'Kon gebruikers niet laden.', userMgmtLoadFriendly: 'Server antwoordde niet — meestal eenmalig.', userMgmtRetry: 'Opnieuw proberen', userMgmtEmpty: 'Geen gebruikers gevonden.', userMgmtYouBadge: 'Jij', userMgmtAdminBadge: 'Admin', userMgmtAddUser: 'Gebruiker toevoegen', userMgmtAddUserTitle: 'Nieuwe gebruiker', userMgmtEditUserTitle: 'Gebruiker bewerken', userMgmtUsername: 'Gebruikersnaam', userMgmtName: 'Weergavenaam', userMgmtEmail: 'E-mail', userMgmtPassword: 'Wachtwoord', userMgmtPasswordEditHint: 'Voer een nieuw wachtwoord in om het bij te werken.', userMgmtRoleAdmin: 'Admin', userMgmtLibraries: 'Bibliotheken', userMgmtLibrariesAdminHint: 'Beheerders hebben automatisch toegang tot alle bibliotheken.', userMgmtLibrariesEmpty: 'Geen bibliotheken beschikbaar op deze server.', userMgmtLibrariesValidation: 'Selecteer ten minste één bibliotheek.', userMgmtLibrariesUpdateError: 'Gebruiker opgeslagen, maar bibliotheektoewijzing mislukt', userMgmtNoLibraries: 'Geen bibliotheken toegewezen', userMgmtNeverSeen: 'Nooit', userMgmtSave: 'Opslaan', userMgmtCancel: 'Annuleren', userMgmtDelete: 'Verwijderen', userMgmtEdit: 'Bewerken', userMgmtConfirmDelete: 'Gebruiker "{{username}}" verwijderen? Dit kan niet ongedaan worden gemaakt.', userMgmtCreateError: 'Aanmaken van gebruiker mislukt.', userMgmtUpdateError: 'Bijwerken van gebruiker mislukt.', userMgmtDeleteError: 'Verwijderen van gebruiker mislukt.', userMgmtCreated: 'Gebruiker aangemaakt.', userMgmtUpdated: 'Gebruiker bijgewerkt.', userMgmtDeleted: 'Gebruiker verwijderd.', userMgmtValidationMissing: 'Gebruikersnaam, weergavenaam en wachtwoord zijn vereist.', userMgmtValidationMissingIdentity: 'Gebruikersnaam en weergavenaam zijn vereist.', userMgmtMagicStringGenerate: 'Magic string genereren', userMgmtSaveAndMagicString: 'Opslaan en magic string kopiëren', userMgmtMagicStringPasswordNavHint: 'Navidrome slaat dit wachtwoord voor de gebruiker op. Als het afwijkt van het huidige wachtwoord, wordt het inlogwachtwoord op de server bijgewerkt.', userMgmtMagicStringPlaintextWarning: 'Wees voorzichtig met delen: de magic string bevat een onversleuteld wachtwoord (codering is geen encryptie). Wie de volledige string heeft, kan als deze gebruiker inloggen.', userMgmtMagicStringCopied: 'Magic string naar het klembord gekopieerd.', userMgmtMagicStringCopyFailed: 'Kopiëren naar het klembord is mislukt.', userMgmtMagicStringLoginFailed: 'Wachtwoordcontrole mislukt — aanmeldgegevens konden niet worden geverifieerd.', userMgmtMagicStringModalTitle: 'Magic string genereren', userMgmtMagicStringModalDesc: 'Voer het Subsonic-wachtwoord voor „{{username}}" in. Het wordt opgenomen in de gekopieerde magic string.', userMgmtMagicStringModalConfirm: 'String kopiëren', audiomuseTitle: 'AudioMuse-AI (Navidrome)', audiomuseDesc: 'Zet aan als deze server de AudioMuse-AI Navidrome-plugin gebruikt. Schakelt Instant Mix per nummer in en toont vergelijkbare artiesten van de server i.p.v. Last.fm op artiestpagina’s.', audiomuseIssueHint: 'Instant Mix is onlangs mislukt — controleer de Navidrome-plugin en AudioMuse API. Zonder serverresultaten worden vergelijkbare artiesten via Last.fm geladen.', connected: 'Verbonden', failed: 'Mislukt', eqTitle: 'Equalizer', eqEnabled: 'Equalizer inschakelen', eqPreset: 'Voorinstelling', eqPresetCustom: 'Aangepast', eqPresetBuiltin: 'Ingebouwde voorinstellingen', eqPresetCustomGroup: 'Mijn voorinstellingen', eqSavePreset: 'Opslaan als voorinstelling', eqPresetName: 'Naam voorinstelling…', eqDeletePreset: 'Voorinstelling verwijderen', eqResetBands: 'Terugzetten naar vlak', eqPreGain: 'Voorversterking', eqResetPreGain: 'Voorversterking resetten', eqAutoEqTitle: 'AutoEQ Hoofdtelefoon Zoeken', eqAutoEqPlaceholder: 'Zoek hoofdtelefoon / IEM model…', eqAutoEqSearching: 'Zoeken…', eqAutoEqNoResults: 'Geen resultaten gevonden', eqAutoEqError: 'Zoeken mislukt', eqAutoEqRateLimit: 'GitHub limiet bereikt — probeer over een minuut opnieuw', eqAutoEqFetchError: 'EQ-profiel kon niet worden geladen', lfmTitle: 'Last.fm', lfmConnect: 'Verbinden met Last.fm', lfmConnecting: 'Wachten op autorisatie…', lfmConfirm: 'Ik heb de app geautoriseerd', lfmConnected: 'Verbonden als', lfmDisconnect: 'Verbinding verbreken', lfmConnectDesc: 'Verbind je Last.fm-account om scrobbling en Nu bezig-updates rechtstreeks vanuit Psysonic in te schakelen — geen Navidrome-configuratie vereist.', lfmOpenBrowser: 'Er opent een browservenster. Autoriseer Psysonic op Last.fm en klik daarna op de knop hieronder.', lfmScrobbles: '{{n}} scrobbles', lfmMemberSince: 'Lid sinds {{year}}', scrobbleEnabled: 'Scrobbling ingeschakeld', scrobbleDesc: 'Nummers naar Last.fm sturen na 50% afspeeltijd', behavior: 'App-gedrag', cacheTitle: 'Max. opslaggrootte', cacheDesc: 'Albumhoezen en artiestafbeeldingen. Als de cache vol is, worden de oudste items automatisch verwijderd. Offline albums worden niet automatisch verwijderd, maar wel bij handmatig leegmaken.', cacheUsedImages: 'Afbeeldingen:', cacheUsedOffline: 'Offline nummers:', cacheUsedHot: 'Schijfgebruik:', hotCacheTrackCount: 'Nummers in cache:', cacheMaxLabel: 'Max. grootte', cacheClearBtn: 'Cache wissen', cacheClearWarning: 'Dit verwijdert ook alle offline albums uit de bibliotheek.', cacheClearConfirm: 'Alles wissen', cacheClearCancel: 'Annuleren', offlineDirTitle: 'Offline-bibliotheek (In-app)', offlineDirDesc: 'Opslaglocatie voor nummers die je offline beschikbaar maakt in Psysonic.', offlineDirDefault: 'Standaard (app-gegevens)', offlineDirChange: 'Map wijzigen', offlineDirClear: 'Terugzetten naar standaard', offlineDirHint: 'Nieuwe downloads worden op deze locatie opgeslagen. Bestaande downloads blijven op hun oorspronkelijke locatie.', hotCacheTitle: 'Warme afspeelcache', hotCacheDisclaimer: 'Laadt aankomende wachtrijtracks voor en bewaart eerdere. Indien ingeschakeld: schijfruimte en netwerk.', hotCacheDirDefault: 'Standaard (app-gegevens)', hotCacheDirChange: 'Map wijzigen', hotCacheDirClear: 'Terugzetten naar standaard', hotCacheDirHint: 'Een andere map kiest: de index in de app wordt gereset; oude bestanden blijven staan tot je ze verwijdert.', hotCacheEnabled: 'Warme afspeelcache inschakelen', hotCacheMaxMb: 'Maximale cachegrootte', hotCacheDebounce: 'Uitstel bij wachtrijwijziging', hotCacheDebounceImmediate: 'Direct', hotCacheDebounceSeconds: '{{n}} s', hotCacheClearBtn: 'Warme cache wissen', audioOutputDevice: 'Audio-uitvoerapparaat', audioOutputDeviceDesc: 'Kies via welk audioapparaat Psysonic afspeelt. Wijzigingen worden direct toegepast en starten het huidige nummer opnieuw.', audioOutputDeviceDefault: 'Systeemstandaard', audioOutputDeviceRefresh: 'Apparatenlijst vernieuwen', audioOutputDeviceOsDefaultNow: 'huidige systeemuitvoer', audioOutputDeviceListError: 'De lijst met audio-apparaten kon niet worden geladen.', audioOutputDeviceNotInCurrentList: 'staat niet in de huidige lijst', audioOutputDeviceMacNotice: 'Op macOS volgt de weergave om technische redenen altijd het standaard-uitvoerapparaat van het systeem. Wijzig het doel via Systeeminstellingen → Geluid of via het luidsprekerpictogram in de menubalk. Achtergrond: CoreAudio vraagt bij het openen van een niet-standaard stream om microfoontoestemming — dat vermijden we door altijd de systeemstandaard te gebruiken.', hiResTitle: 'Natieve hi-res-weergave', hiResEnabled: 'Natieve hi-res-weergave inschakelen', hiResDesc: "Beperkt de uitvoer standaard tot 44,1 kHz voor maximale stabiliteit. Alleen inschakelen als hardware en netwerk hoge samplerates (88,2 kHz+) ondersteunen.", showArtistImages: 'Artiestafbeeldingen weergeven', showArtistImagesDesc: 'Laadt en toont artiestafbeeldingen in het artiestenoverzicht. Standaard uitgeschakeld om server-I/O en netwerkbelasting bij grote bibliotheken te beperken.', showOrbitTrigger: '"Orbit" in de kop tonen', showOrbitTriggerDesc: 'De knop in de kop voor starten of deelnemen aan een gedeelde luistersessie. Verberg hem als je Orbit niet gebruikt — je kunt hem hier weer aanzetten.', showTrayIcon: 'Tray-pictogram weergeven', showTrayIconDesc: 'Toont het Psysonic-pictogram in het systeemvak / de menubalk.', minimizeToTray: 'Minimaliseren naar systeemvak', minimizeToTrayDesc: 'Bij het sluiten van het venster blijft Psysonic actief in het systeemvak in plaats van af te sluiten.', preloadMiniPlayer: 'Mini-speler vooraf laden', preloadMiniPlayerDesc: 'Bouwt het venster van de mini-speler op de achtergrond bij het opstarten van de app, zodat het bij de eerste opening direct inhoud toont. Gebruikt iets meer geheugen.', linuxWebkitSmoothScroll: 'Vloeiend muiswiel (Linux)', linuxWebkitSmoothScrollDesc: 'Aan: traag naloop. Uit: regel voor regel, GTK-stijl.', discordRichPresence: 'Discord Rich Presence', discordRichPresenceDesc: 'Toont het huidige nummer op je Discord-profiel. Discord moet daarvoor geopend zijn.', discordCoverSource: 'Hoesbron', discordCoverSourceDesc: 'Waar de albumhoes voor je Discord-profiel vandaan komt.', discordCoverNone: 'Geen (alleen app-icoon)', discordCoverServer: 'Server (via albuminfo)', discordCoverApple: 'Apple Music', discordOptions: 'Geavanceerde Discord-opties', discordTemplates: 'Aangepaste tekstsjablonen', discordTemplatesDesc: 'Pas aan welke informatie wordt weergegeven op je Discord-profiel. Variabelen: {title}, {artist}, {album}', discordTemplateDetails: 'Primaire regel (details)', discordTemplateState: 'Secundaire regel (state)', discordTemplateLargeText: 'Album-tooltip (largeText)', nowPlayingEnabled: 'Weergeven in live-venster', nowPlayingEnabledDesc: 'Stuurt het huidige nummer naar de live-luisteraarsweergave van de server. Uitschakelen om geen afspeelgegevens te verzenden.', enableBandsintown: 'Bandsintown-tourdata', enableBandsintownDesc: 'Toon aankomende concerten van de huidige artiest in het Info-tabblad. Gegevens komen van de openbare Bandsintown-API.', lyricsServerFirst: 'Server-songtekst voorrang geven', lyricsServerFirstDesc: 'Controleer eerst door de server geleverde songteksten (ingebedde tags, sidecar-bestanden) vóór LRCLIB. Uitschakelen om LRCLIB eerst te gebruiken.', enableNeteaselyrics: 'Netease Cloud Music songteksten', enableNeteaselyricsDesc: 'Gebruik Netease Cloud Music als laatste bron wanneer server en LRCLIB niets opleveren. Beste dekking voor Aziatische en internationale muziek.', lyricsSourcesTitle: 'Songtekstbronnen', lyricsSourcesDesc: 'Kies welke bronnen worden geraadpleegd en in welke volgorde. Sleep om te sorteren. Uitgeschakelde bronnen worden overgeslagen.', lyricsSourceServer: 'Server', lyricsSourceLrclib: 'LRCLIB', lyricsSourceNetease: 'Netease Cloud Music', lyricsModeStandard: 'Standaard', lyricsModeStandardDesc: 'Drie bronnen in een vrij te ordenen lijst: server-tags, LRCLIB, Netease.', lyricsModeLyricsplus: 'YouLyPlus (Karaoke)', lyricsModeLyricsplusDesc: 'Woord-voor-woord-synchronisatie uit Apple Music, Spotify, Musixmatch en QQ (community-backend). Valt stil terug op de standaardbronnen als er niets wordt gevonden.', lyricsStaticOnly: 'Alleen statische tekst weergeven', lyricsStaticOnlyDesc: 'Gesynchroniseerde songteksten worden zonder auto-scroll en zonder woordmarkering als statische tekst weergegeven.', downloadsTitle: 'ZIP-export & Archivering', downloadsFolderDesc: 'Doelmap voor albums die je als ZIP-bestand naar je computer downloadt.', downloadsDefault: 'Standaard downloadmap', pickFolder: 'Selecteren', pickFolderTitle: 'Downloadmap selecteren', clearFolder: 'Map wissen', logout: 'Uitloggen', aboutTitle: 'Over Psysonic', aboutDesc: 'Een moderne desktopmuziekspeler gebouwd voor Navidrome. Gebruikt de Subsonic-API plus Navidrome-specifieke extensies. Gebouwd op Tauri v2 met een native Rust audio-engine — licht en snel, maar boordevol functies: golfvorm-zoekbalk, gesynchroniseerde songteksten, Last.fm-integratie, 10-bands equalizer, crossfade, naadloos afspelen, Replay Gain, genres en een uitgebreide themabibliotheek.', aboutLicense: 'Licentie', aboutLicenseText: 'GNU GPL v3 — vrij te gebruiken, wijzigen en verspreiden onder dezelfde licentie.', aboutRepo: 'Broncode op GitHub', aboutVersion: 'Versie', aboutBuiltWith: 'Gebouwd met Tauri · React · TypeScript · Rust/rodio', aboutReleaseNotesLabel: 'Release-notities', aboutReleaseNotesLink: 'Nieuws van deze versie openen', aboutContributorsLabel: 'Bijdragers', showChangelogOnUpdate: "'Wat is nieuw' tonen bij update", showChangelogOnUpdateDesc: 'Toont een discrete changelog-banner boven Now Playing na een update. Klik opent de release-notities; X verbergt hem.', randomMixTitle: 'Willekeurige mix-blacklist', luckyMixMenuTitle: 'Toon Geluksmix in menu', luckyMixMenuDesc: 'Schakelt Geluksmix in bij "Mix samenstellen" en als apart menu-item bij gesplitste navigatie. Alleen zichtbaar wanneer AudioMuse actief is op de huidige server.', randomMixBlacklistTitle: 'Aangepaste filtertrefwoorden', randomMixBlacklistDesc: 'Nummers worden uitgesloten als een trefwoord overeenkomt met hun genre, titel, album of artiest (actief wanneer het selectievakje hierboven is aangevinkt).', randomMixBlacklistPlaceholder: 'Trefwoord toevoegen…', randomMixBlacklistAdd: 'Toevoegen', randomMixBlacklistEmpty: 'Nog geen aangepaste trefwoorden toegevoegd.', randomMixHardcodedTitle: 'Ingebouwde trefwoorden (actief wanneer selectievakje is aangevinkt)', tabAudio: 'Audio', tabStorage: 'Offline & Cache', tabAppearance: 'Weergave', tabLibrary: 'Bibliotheek', tabServers: 'Servers', tabLyrics: 'Songteksten', tabPersonalisation: 'Personalisatie', tabIntegrations: 'Integraties', inputKeybindingsTitle: 'Sneltoetsen', aboutContributorsCount_one: '{{count}} bijdrage', aboutContributorsCount_other: '{{count}} bijdragen', searchPlaceholder: 'Instellingen zoeken…', searchNoResults: 'Geen instellingen komen overeen met je zoekopdracht.', aboutMaintainersLabel: 'Beheerders', integrationsPrivacyTitle: 'Privacyverklaring', integrationsPrivacyBody: 'Alle integraties op dit tabblad zijn opt-in en sturen, eenmaal ingeschakeld, gegevens naar externe diensten of naar je Navidrome-server. Last.fm ontvangt je luistergeschiedenis, Discord toont het nu spelende nummer in je profiel, Bandsintown wordt per artiest bevraagd voor tourdatums, en de "Nu aan het afspelen"-deling publiceert je huidige nummer bij andere gebruikers van je Navidrome-server. Wil je dit niet, laat dan de bijbehorende sectie gewoon uitgeschakeld.', homeCustomizerTitle: 'Startpagina', sidebarTitle: 'Zijbalk', sidebarReset: 'Standaard herstellen', artistLayoutTitle: 'Secties artiestenpagina', artistLayoutDesc: 'Versleep om te herschikken, schakel om individuele secties van de artiestenpagina te verbergen. Secties zonder gegevens worden automatisch overgeslagen.', artistLayoutReset: 'Standaard herstellen', artistLayoutBio: 'Biografie van de artiest', artistLayoutTopTracks: 'Populaire nummers', artistLayoutSimilar: 'Soortgelijke artiesten', artistLayoutAlbums: 'Albums', artistLayoutFeatured: 'Ook te horen op', sidebarDrag: 'Slepen om te herordenen', sidebarFixed: 'Altijd zichtbaar', randomNavSplitTitle: 'Mix-navigatie splitsen', randomNavSplitDesc: 'Toon "Willekeurige mix", "Willekeurige albums" en "Geluksmix" als afzonderlijke zijbalkitems in plaats van de "Mix samenstellen"-hub.', tabInput: 'Invoer', tabUsers: 'Gebruikers', shortcutsReset: 'Standaard herstellen', shortcutListening: 'Druk op een toets…', shortcutUnbound: '—', shortcutClear: 'Wissen', globalShortcutsTitle: 'Globale sneltoetsen', globalShortcutsNote: 'Werken systeembreed, ook als Psysonic op de achtergrond draait. Vereist Ctrl, Alt of Super als modifier.', shortcutPlayPause: 'Afspelen / Pauzeren', shortcutNext: 'Volgend nummer', shortcutPrev: 'Vorig nummer', shortcutVolumeUp: 'Volume omhoog', shortcutVolumeDown: 'Volume omlaag', shortcutSeekForward: '10s vooruitspoelen', shortcutSeekBackward: '10s terugspoelen', shortcutToggleQueue: 'Wachtrij tonen/verbergen', shortcutOpenFolderBrowser: '{{folderBrowser}} openen', shortcutFullscreenPlayer: 'Volledigschermspeler', shortcutNativeFullscreen: 'Systeemvolledig scherm', shortcutOpenMiniPlayer: 'Mini-speler openen', shortcutStartSearch: 'Zoekopdracht starten', shortcutStartAdvancedSearch: 'Geavanceerde zoekopdracht starten', shortcutToggleSidebar: 'Zijbalk in-/uitschakelen', shortcutMuteSound: 'Geluid dempen', shortcutToggleEqualizer: 'Equalizer openen / schakelen', shortcutToggleRepeat: 'Herhaling schakelen', shortcutOpenNowPlaying: '"Nu speelt" openen', shortcutShowLyrics: 'Songtekst tonen', shortcutFavoriteCurrentTrack: 'Huidig nummer aan favorieten toevoegen', shortcutOpenHelp: 'Help', tabSystem: 'Systeem', loggingTitle: 'Logboek', loggingModeDesc: 'Bepaalt de uitgebreidheid van backendlogs in de terminal.', loggingModeOff: 'Uit', loggingModeNormal: 'Normaal', loggingModeDebug: 'Debug', loggingExport: 'Logs exporteren', loggingExportSuccess: 'Logs geëxporteerd ({{count}} regels).', loggingExportError: 'Kon logs niet exporteren.', ratingsSectionTitle: 'Beoordelingen', ratingsSkipStarTitle: 'Overslaan voor 1 ster', ratingsSkipStarDesc: 'Na meerdere overslagen op rij: nummer op 1 ster zetten. Alleen voor nummers die nog niet beoordeeld waren.', ratingsSkipStarThresholdLabel: 'Overslagen', ratingsMixFilterTitle: 'Filter op beoordeling', ratingsMixFilterDesc: 'Content met lage beoordeling filteren in {{mix}} en {{albums}}. Klik opnieuw op de gekozen ster om de drempel uit te zetten.', ratingsMixMinSong: 'Nummers', ratingsMixMinAlbum: 'Albums', ratingsMixMinArtist: 'Artiesten', ratingsMixMinThresholdAria: 'Minimum sterren: {{label}}', backupTitle: 'Back-up & Herstel', backupExport: 'Instellingen exporteren', backupExportDesc: 'Slaat alle instellingen, serverprofielen, Last.fm-configuratie, thema, EQ en sneltoetsen op in een .psybkp-bestand. Wachtwoorden worden opgeslagen als leesbare tekst — bewaar het bestand veilig.', backupImport: 'Instellingen importeren', backupImportDesc: 'Herstelt instellingen vanuit een .psybkp-bestand. De app wordt herladen na het importeren.', backupImportConfirm: 'Alle huidige instellingen worden overschreven. Doorgaan?', backupSuccess: 'Back-up opgeslagen', backupImportSuccess: 'Instellingen hersteld — herladen…', backupImportError: 'Ongeldig of beschadigd back-upbestand.', playbackTitle: 'Afspelen', replayGain: 'Replay Gain', replayGainDesc: 'Nummervolume normaliseren met ReplayGain-metadata', replayGainMode: 'Modus', replayGainAuto: 'Auto', replayGainAutoDesc: 'Kiest album-gain wanneer aangrenzende nummers in de wachtrij van hetzelfde album zijn, anders nummer-gain.', replayGainTrack: 'Nummer', replayGainAlbum: 'Album', replayGainPreGain: 'Pre-Gain (getagde bestanden)', replayGainPreGainDesc: 'Universele boost bovenop elke ReplayGain-berekening. Handig als je bibliotheek over het geheel te zacht aanvoelt.', replayGainFallback: 'Terugval (zonder tags / radio)', replayGainFallbackDesc: 'Toegepast op nummers (en radiostreams) zonder ReplayGain-tags, zodat ongetagde inhoud er niet harder uitspringt dan de rest.', normalization: 'Normalisatie', normalizationDesc: 'Egaliseer de waargenomen luidheid tussen nummers, albums en radio.', normalizationOff: 'Uit', normalizationReplayGain: 'ReplayGain', normalizationLufs: 'LUFS', loudnessTargetLufs: 'Doel-LUFS', loudnessTargetLufsDesc: 'Referentie-luidheid waarop alle nummers worden afgestemd. Lagere waarde = luidere uitvoer. Streamingdiensten zitten meestal rond -14 LUFS.', loudnessPreAnalysisAttenuation: 'Demping vóór meting', loudnessPreAnalysisAttenuationDesc: 'Extra zachter tot de loudness van het nummer is opgeslagen. Streamen gebruikt daarna grove schattingen, geen volledige meting. 0 dB = uit; negatiever = zachter. Rechts staat de effectieve dB voor het huidige doel.', loudnessPreAnalysisAttenuationRef: 'Effectief {{eff}} dB bij doel {{tgt}} LUFS.', loudnessPreAnalysisAttenuationReset: 'Standaard', loudnessFirstPlayNote: 'Bij de eerste keer afspelen van een nieuw nummer kan het volume even fluctueren terwijl er gemeten wordt. De volgende keer gebruikt de speler de opgeslagen meting en blijft alles rotsvast. Komende nummers in de wachtrij worden meestal al tijdens het vorige nummer geanalyseerd, dus dit komt in de praktijk zelden voor.', crossfade: 'Overgang', crossfadeDesc: 'Fade tussen nummers', crossfadeSecs: '{{n}} s', notWithGapless: 'Niet beschikbaar als naadloos afspelen actief is', notWithCrossfade: 'Niet beschikbaar als overgang actief is', gapless: 'Naadloos afspelen', gaplessDesc: 'Volgend nummer vooraf bufferen om stiltes tussen nummers te elimineren', preservePlayNextOrder: '"Volgende afspelen"-volgorde behouden', preservePlayNextOrderDesc: 'Nieuwe "Volgende afspelen"-items komen achter bestaande te staan in plaats van ervoor.', trackPreviewsTitle: 'Track-voorvertoning', trackPreviewsToggle: 'Track-voorvertoning inschakelen', trackPreviewsDesc: 'Inline Play- en Voorvertoning-knoppen in trackslijsten tonen voor een korte sample midden in het nummer.', trackPreviewStart: 'Startpositie', trackPreviewStartDesc: 'Hoever in de track de voorvertoning start (% van de duur).', trackPreviewDuration: 'Duur', trackPreviewDurationDesc: 'Hoe lang elke voorvertoning speelt voordat hij stopt.', trackPreviewDurationSecs: '{{n}} s', trackPreviewLocationsTitle: 'Waar voorvertoningen verschijnen', trackPreviewLocationsDesc: 'Kies in welke lijsten de voorvertoning-knoppen worden weergegeven.', trackPreviewLocation_suggestions: 'In playlist-suggesties', trackPreviewLocation_albums: 'In albumlijsten', trackPreviewLocation_playlists: 'In playlists', trackPreviewLocation_favorites: 'In favorieten', trackPreviewLocation_artist: 'In top-tracks van artiest', trackPreviewLocation_randomMix: 'In Random Mix', preloadMode: 'Volgend nummer vooraf laden', preloadModeDesc: 'Wanneer met het bufferen van het volgende nummer wordt begonnen', nextTrackBufferingTitle: 'Buffering', preloadHotCacheMutualExclusive: 'Preload en Hot Cache dienen hetzelfde doel — slechts één kan tegelijk actief zijn. Het inschakelen van de ene schakelt de andere automatisch uit.', preloadOff: 'Uit', preloadBalanced: 'Gebalanceerd (30 s voor einde)', preloadEarly: 'Vroeg (na 5 s afspelen)', preloadCustom: 'Aangepast', preloadCustomSeconds: 'Seconden voor einde: {{n}}', infiniteQueue: 'Oneindige wachtrij', infiniteQueueDesc: 'Automatisch willekeurige nummers toevoegen als de wachtrij leeg raakt', experimental: 'Experimenteel', fsPlayerSection: 'Volledig scherm speler', fsShowArtistPortrait: 'Artiestfoto tonen', fsShowArtistPortraitDesc: 'Artiestfoto (of albumhoes) weergeven aan de rechterkant van de volledigschermspeler.', fsPortraitDim: 'Verduistering foto', fsLyricsStyle: 'Tekststijl', fsLyricsStyleRail: 'Rail', fsLyricsStyleRailDesc: 'Klassieke 5-regels schuifrail.', fsLyricsStyleApple: 'Scrollen', fsLyricsStyleAppleDesc: 'Volledig scherm scrolllijst.', sidebarLyricsStyle: 'Scrollstijl voor tekst', sidebarLyricsStyleClassic: 'Klassiek', sidebarLyricsStyleClassicDesc: 'Actieve regel wordt gecentreerd.', sidebarLyricsStyleApple: 'Apple Music-like', sidebarLyricsStyleAppleDesc: 'Actieve regel verankerd bovenaan met vloeiende animatie.', seekbarStyle: 'Zoekbalkstijl', seekbarStyleDesc: 'Kies het uiterlijk van de afspeelbalk', seekbarTruewave: 'Echte golfvorm', seekbarPseudowave: 'Pseudo-golfvorm', seekbarLinedot: 'Lijn & punt', seekbarBar: 'Balk', seekbarThick: 'Dikke balk', seekbarSegmented: 'Gesegmenteerd', seekbarNeon: 'Neon', seekbarPulsewave: 'Pulsgolf', seekbarParticletrail: 'Deeltjesspoor', seekbarLiquidfill: 'Vloeistofbuis', seekbarRetrotape: 'Retrotape', themeSchedulerTitle: 'Thema-planner', themeSchedulerEnable: 'Thema-planner inschakelen', themeSchedulerEnableSub: 'Schakelt automatisch tussen twee thema\'s op basis van de tijd', themeSchedulerDayTheme: 'Dagthema', themeSchedulerDayStart: 'Dag begint om', themeSchedulerNightTheme: 'Nachtthema', themeSchedulerNightStart: 'Nacht begint om', themeSchedulerActiveHint: "Thema-planner is actief - thema's worden automatisch gewisseld.", visualOptionsTitle: 'Visuele Opties', coverArtBackground: 'Cover Achtergrond', coverArtBackgroundSub: 'Toon vervaagde cover als achtergrond in album/playlist headers', playlistCoverPhoto: 'Playlist Coverfoto', playlistCoverPhotoSub: 'Toon coverfoto raster in playlist detailweergave', showBitrate: 'Toon Bitrate', showBitrateSub: 'Toon audio bitrate in tracklijsten', floatingPlayerBar: 'Zwevende Spelerbalk', floatingPlayerBarSub: 'Houd de spelerbalk zwevend boven de inhoud', uiScaleTitle: 'Interface schaal', uiScaleLabel: 'Zoom', }, changelog: { modalTitle: 'Wat is nieuw', dontShowAgain: 'Niet meer weergeven', close: 'Begrepen', }, whatsNew: { title: 'Wat is nieuw', empty: 'Nog geen changelog-item voor deze versie.', bannerTitle: 'Changelog', bannerCollapsed: 'Nieuw in v{{version}}', dismiss: 'Verbergen', close: 'Sluiten', }, help: { title: 'Help', searchPlaceholder: 'Help doorzoeken…', noResults: 'Geen overeenkomende onderwerpen. Probeer een andere zoekterm.', s1: 'Aan de slag', q1: 'Welke servers zijn compatibel?', a1: 'Psysonic is in de eerste plaats voor Navidrome gebouwd en volledig Subsonic-compatibel — Gonic, Airsonic, LMS en andere Subsonic-API-servers werken ook. Sommige geavanceerde functies (beoordelingen, smart playlists, Magic-String-delen, gebruikersbeheer) vereisen Navidrome.', q2: 'Hoe voeg ik een server toe?', a2: 'Instellingen → Servers → Server toevoegen. Voer de URL in (bijv. http://192.168.1.100:4533), gebruikersnaam en wachtwoord. Psysonic test de verbinding voor het opslaan — bij een fout wordt niets opgeslagen. U kunt zoveel servers toevoegen als u wilt en in de header tussen ze schakelen; er is altijd maar één actief.', q3: 'Snelle UI-rondleiding?', a3: 'Zijbalk (links) voor navigatie, Mainstage / pagina\'s in het midden, speelbalk onderaan, wachtrijpaneel rechts (te openen via het pictogram rechtsboven naast de Now-Playing-indicator). De zoekbalk bovenaan doorzoekt de hele bibliotheek; "Now Playing" toont wat andere gebruikers op dezelfde Navidrome-server momenteel luisteren.', s2: 'Afspelen & Wachtrij', q4: 'Hoe gebruik ik de wachtrij?', a4: 'Open het wachtrijpaneel via de header rechtsboven. Sleep rijen om te herordenen, sleep ze naar buiten om te verwijderen, of gebruik de werkbalk om te shuffelen, de wachtrij als afspeellijst op te slaan of naar een nummer te springen. Sleep rijen uit het paneel om ze elders als overdracht te plaatsen.', q5: 'Gapless versus Crossfade — wat is het verschil?', a5: 'Gapless buffert het volgende nummer vooraf zodat er nul stilte tussen de nummers zit (ideaal voor live-albums en DJ-mixen). Crossfade vervaagt het huidige nummer terwijl het volgende invaagt over 1–10 s (ideaal voor gemixte mixen). Ze zijn wederzijds uitsluitend — een inschakelen schakelt de andere uit. Configureer in Instellingen → Audio.', q6: 'Wat is de Infinite Queue?', a6: 'Wanneer de wachtrij leegloopt en Herhalen uit staat, voegt Psysonic stilletjes vergelijkbare/willekeurige nummers uit uw bibliotheek toe zodat het afspelen nooit stopt. Auto-toegevoegde nummers verschijnen onder een "— Automatisch toegevoegd —" scheidingslijn. Schakelen via het oneindigheidspictogram in de wachtrij-header; in Instellingen → Wachtrij beperken tot een genre.', q7: 'Meervoudige selectie en Shift-klik bereik?', a7: 'Activeer "Selecteren" op Albums / Nieuwe releases / Random Albums / Afspeellijsten. Klik een item om het te toggelen, houd dan Shift en klik een ander item — alles ertussen in de zichtbare volgorde wordt geselecteerd. Shift-klikken breiden uit vanuit het laatst aangeklikte ankerpunt. De werkbalk biedt bulkacties (wachtrij, downloaden, verwijderen, etc.).', q8: 'Sneltoetsen en globale hotkeys?', a8: 'Standaard in-app-toetsen: Spatie = Afspelen / Pauzeren, Esc = sluit volledig scherm / modals, F1 = sneltoetsenoverzicht. Instellingen → Invoer laat u elke in-app-actie opnieuw toewijzen (ook akkoorden zoals Ctrl+Shift+P) en systeembrede globale snelkoppelingen instellen die ook werken wanneer Psysonic op de achtergrond draait. Mediatoetsen (Afspelen/Pauzeren, Volgende, Vorige) werken op alle platforms.', s3: 'Audiotools', q9: 'Replay Gain modi?', a9: 'Instellingen → Audio → Replay Gain. Track-modus normaliseert elk nummer naar een doelniveau. Album-modus behoudt de luidheidscurve binnen een album. Auto-modus kiest Track of Album op basis van of de wachtrij van een enkel album komt. Nummers zonder Replay Gain-tags vallen terug op een configureerbare voorversterker.', q10: 'Wat is Smart Loudness Normalization (LUFS)?', a10: 'Een modern alternatief voor Replay Gain in Instellingen → Audio. Psysonic analyseert elk nummer naar LUFS / EBU R128 en slaat het resultaat op, zodat het volume consistent is over uw hele bibliotheek — ook nummers zonder Replay Gain-tags. Cold-cache-analyse loopt op de achtergrond en gebruikt 35–40% CPU gedurende ~1 minuut, daarna 0. Stel uw doel-luidheid (standaard −10 LUFS) één keer in.', q11: 'EQ en AutoEQ?', a11: 'Een 10-bands parametrische EQ in Instellingen → Audio → Equalizer met handmatige banden en presets. AutoEQ ernaast haalt een gemeten correctieprofiel voor uw hoofdtelefoonmodel op uit de AutoEQ-database en past het automatisch toe op de banden — kies uw hoofdtelefoon, de EQ klikt op de juiste curve.', q12: 'Hoe wissel ik het audio-uitvoerapparaat?', a12: 'Instellingen → Audio → Uitvoerapparaat. Psysonic toont alle beschikbare uitgangen en wisselt onmiddellijk wanneer u kiest. De vernieuwen-knop scant naar apparaten die na het opstarten zijn aangesloten. Linux ALSA-namen zoals "sysdefault" worden voor leesbaarheid automatisch opgeschoond.', q13: 'Wat is de Hot Cache?', a13: 'Hot Cache laadt het huidige nummer plus de volgende vooraf in RAM en op schijf zodat het afspelen zonder buffervertraging start — vooral nuttig op trage / externe servers. Eviction treedt in werking wanneer de groottelimiet wordt bereikt. Configureer grootte en de debounce-vertraging (zodat snelle skips niet over-fetchen) in Instellingen → Audio.', s4: 'Bibliotheek & Ontdekking', q14: 'Hoe werken beoordelingen en Skip-to-1★?', a14: 'Psysonic ondersteunt 1–5 sterren-beoordelingen via OpenSubsonic (Navidrome ≥ 0.53). Beoordeel nummers in tracklijsten, in het rechtsklikmenu, of in de speelbalk onder de artiestnaam; albums op de albumpagina; artiesten op de artiestpagina. Skip-to-1★ (Instellingen → Bibliotheek → Beoordelingen) wijst automatisch 1 ster toe na een configureerbaar aantal opeenvolgende skips. Hetzelfde paneel laat u een minimum-beoordeling instellen voor gegenereerde mixen.', q15: 'Hoe blader ik — Mappen, Genres, Tracks?', a15: 'De mappenbrowser (zijbalk) loopt door de muziekmap van uw server in een Miller-kolomlay-out — klik op een map om in te duiken, klik op een nummer of het play-pictogram van een map om af te spelen / toe te voegen. Genres gebruikt een tag-cloud-weergave geschaald op aantal nummers; klik op een genre om het te openen. Tracks is een platte bibliotheekhub met kolomgesorteerde virtuele lijst en live zoeken.', q16: 'Zoeken en geavanceerd zoeken?', a16: 'De headerzoekbalk voert een snelle live zoekopdracht uit terwijl u typt over artiesten, albums en nummers. Open Geavanceerd zoeken (zijbalk) voor een rijkere weergave: filter op jaar, genre, beoordeling, formaat, kanalen, samplerate, BPM, stemming en combineer criteria. Rechtsklik op elk resultaat opent hetzelfde contextmenu als elders.', q17: 'Wat zijn de Mixes (Random / Genre / Super Genre / Lucky)?', a17: 'Random Mix bouwt een afspeellijst van willekeurige nummers uit uw bibliotheek; het Trefwoordfilter sluit audioboeken, comedy etc. uit op basis van genre / titel / album-substrings. Super Genre Mix groepeert uw bibliotheek in brede stijlen (Rock, Metal, Electronic, Jazz, Klassiek …) en bouwt een gefocuste mix uit één. Lucky Mix gebruikt uw luistergeschiedenis, beoordelingen en AudioMuse-AI vergelijkbare nummers om met één klik een directe afspeellijst samen te stellen.', q18: 'Statistiekenpagina?', a18: 'Statistieken (zijbalk) toont topartiesten, topalbums, topnummers, genre-uitsplitsing, luistertijd over tijd en per-bibliotheek-bereik wanneer u meer dan één muziekmap hebt geconfigureerd. Verschillende weergaven zijn exporteerbaar als deelbare kaartafbeelding.', q19: 'Hoe download ik een album als ZIP?', a19: 'Albumpagina → "Downloaden (ZIP)". De server comprimeert het album eerst — voor grote of verliesloze albums (FLAC / WAV) verschijnt de voortgangsbalk pas zodra het zippen is voltooid en de overdracht begint. Dit is normaal.', s5: 'Songteksten', q20: 'Waar komen de songteksten vandaan?', a20: 'Drie bronnen, configureerbaar in Instellingen → Songteksten: uw Navidrome-server (ingebedde / OpenSubsonic-songteksten), LRCLIB (community-bijgedragen gesynchroniseerde songteksten) en NetEase Cloud Music (grote Aziatische + internationale catalogus). Elke bron kan worden in-/uitgeschakeld en op volgorde gesleept.', q21: 'Hoe bekijk ik songteksten tijdens het afspelen?', a21: 'Klik op het microfoonpictogram in de speelbalk om het Songteksten-tabblad in het wachtrijpaneel te openen. Gesynchroniseerde songteksten scrollen automatisch en ondersteunen klik-om-te-spoelen; pure tekst scrolt als een statisch blok. Schakel de volledig-scherm-speler in via de speelbalk-cover voor een meeslepende songteksten-weergave met mesh-blob-achtergrond.', s6: 'Delen & Sociaal', q22: 'Wat zijn Magic Strings?', a22: 'Magic Strings zijn korte kopieer-plak-tokens die dingen tussen Psysonic-gebruikers delen zonder enige derde server. Server-Invite-strings laten een vriend met één plak op uw Navidrome onboarden; Album / Artiest / Wachtrij Magic Strings openen hetzelfde album / artiest / wachtrij bij de ontvanger. Genereer ze via het deel-menu, plak ze in de zoekbalk om te consumeren.', q23: 'Wat is Orbit?', a23: 'Orbit is gesynchroniseerd samen-luisteren: een host speelt een nummer, elke gast hoort het synchroon, en gasten kunnen nummers voorstellen die de host kan accepteren in de wachtrij. Start een sessie via de Orbit-knop in de header, deel de uitnodigingslink, en anderen kunnen vanuit elke Psysonic-installatie meedoen. De host beheert het afspelen (skippen, spoelen, wachtrij) — gasten krijgen een real-time weergave en een suggestiebox. Sessies zijn kortstondig en eindigen wanneer de host ze sluit.', q24: 'Wat is de Now Playing-dropdown?', a24: 'Het uitzendpictogram rechtsboven toont wat andere gebruikers op uw Navidrome-server momenteel luisteren, ververst elke 10 seconden. Uw eigen vermelding verdwijnt op het moment dat u pauzeert. Per-server, dus gebruikers op een andere actieve server worden niet getoond.', s7: 'Personalisatie', q25: 'Thema\'s en de Theme Scheduler?', a25: 'Instellingen → Weergave → Thema kiest uit 60+ thema\'s in 8 groepen (Psysonic, Mediaplayer, Besturingssystemen, Spellen, Films, Series, Sociale media, Open Source Classics — Catppuccin / Nord / Gruvbox / Nightfox / Dracula). Auto-Switch Theme laat u een dag-thema + nacht-thema instellen met starttijden zodat Psysonic automatisch wisselt.', q26: 'Kan ik de Zijbalk, Home en Artiestpagina aanpassen?', a26: 'Ja — Instellingen → Personalisatie. De zijbalk-customizer laat u nav-items in de gewenste volgorde slepen en items die u niet gebruikt verbergen. De Home-customizer schakelt elke Mainstage-rail (Hero, Recent, Ontdekken, Recent afgespeeld, Met ster …) in/uit. De Artiestpagina-customizer herschikt de secties (Topnummers, Albums, Singles, Compilaties, Vergelijkbare artiesten, etc.) en laat u die u nooit bekijkt verbergen.', q27: 'Wat is de Mini Player?', a27: 'Een klein zwevend venster met cover, transportbedieningen en een compacte wachtrij. Open het via het mini-player-pictogram in de speelbalk of met zijn toetsenbordsneltoets. Het venster onthoudt zijn positie en grootte tussen sessies. Op Windows wordt de mini-webview bij het opstarten vooraf aangemaakt zodat openen direct is; Linux / macOS schakelen optioneel in via Instellingen → Weergave → Mini player vooraf laden.', q28: 'Wat is de Floating Player Bar?', a28: 'Een optionele speelbalk-stijl (Instellingen → Weergave) die loskomt van de onderste rand met een themed achtergrond, accentrand, afgeronde albumhoes en een gecentreerde volumesectie. Handig op hoge monitoren of compacte thema\'s.', q29: 'Track preview op hover?', a29: 'Hover over een tracknummer-rij, klik op de kleine voorbeeldknop op de cover, of activeer het voorbeeld vanuit het rechtsklikmenu — Psysonic streamt de eerste ~15 s door dezelfde Rust-audio-engine zodat luidheidsnormalisatie van toepassing is. Handig om door een album te bladeren dat u nog niet gehoord hebt.', q30: 'Sleep timer?', a30: 'Klik op het maan-pictogram in de speelbalk om de sleep timer te openen. Kies een duur (of "einde van het huidige nummer") en Psysonic vervaagt en pauzeert aan het einde. De knop toont een ronde ring en een ingebouwde aftelling terwijl de timer loopt.', q31: 'UI-schaal, lettertype, seekbar-stijl?', a31: 'Instellingen → Weergave — Interface-schaal (80–125% zonder de systeemlettergrootte te beïnvloeden), Lettertype (10 UI-fonts waaronder IBM Plex Mono, Fira Code, Geist, Golos Text…), Seekbar-stijl (Waveform geanalyseerd / pseudowave deterministisch / Lijn & Punt / Balk / Dikke balk / Gesegmenteerd / Neonlicht / Pulsgolf / Deeltjespoor / Vloeibare vulling / Retro Tape).', s8: 'Power User', q32: 'CLI player-bediening?', a32: 'De Psysonic-binary doet ook dienst als afstandsbediening. Voorbeelden: psysonic --player play / pause / next / prev, --player volume 75, --player seek 15, --player shuffle, --player repeat off|all|one, --player rating 1-5. Wissel servers, audio-apparaten, bibliotheken; trigger Instant Mix; zoek artiesten / albums / nummers. Volledige lijst met psysonic --player --help. Shell-aanvulling voor bash en zsh via psysonic completions.', q33: 'Smart Playlists (Navidrome)?', a33: 'Smart Playlists zijn server-side dynamische afspeellijsten gedefinieerd door regels (genre = Rock EN jaar > 2020, etc.). De Afspeellijsten-pagina in Psysonic laat u ze maken, bewerken en verwijderen met een visuele regeleditor — Psysonic gebruikt daarvoor de Navidrome native API. Ze gedragen zich als normale afspeellijsten in de rest van de app en updaten automatisch wanneer uw bibliotheek verandert.', q34: 'Instellingen back-uppen en herstellen?', a34: 'Instellingen → Opslag → Back-up & Herstel exporteert serverprofielen, thema\'s, sneltoetsen en andere instellingen naar een enkel JSON-bestand. Importeer het op een andere machine of na een herinstallatie om alles in één keer te herstellen. Server-wachtwoorden zijn inbegrepen — bewaar het bestand privé.', q35: 'Waar zie ik alle open-source-licenties?', a35: 'Instellingen → Systeem → Open Source Licenties. De volledige afhankelijkheidslijst (cargo crates en npm-pakketten) wordt met gebundelde licentieteksten meegeleverd. Klik op een item voor de volledige tekst; het hoogtepuntblok bovenaan benadrukt de gebruikersbekende bibliotheken (Tauri, React, rodio, symphonia, etc.).', s9: 'Offline & Sync', q36: 'Offline modus — albums en afspeellijsten cachen?', a36: 'Open een album of afspeellijst en klik op het downloadpictogram in de header — Psysonic cacht elk nummer lokaal zodat het van schijf afspeelt zonder netwerkoproep. De Offline Bibliotheek-pagina (zijbalk) toont alles wat is gecached, toont voortgang van lopende downloads, en laat u items verwijderen met het prullenbak-pictogram (dat verschijnt zodra een download is voltooid).', q37: 'Offline opslaglimiet?', a37: 'Instellingen → Bibliotheek → Offline laat u een maximale cachegrootte instellen. Wanneer de limiet wordt bereikt, toont de albumpagina-downloadknop een waarschuwingsbanner. Maak ruimte vrij door albums of afspeellijsten te verwijderen vanuit de Offline Bibliotheek-pagina.', q38: 'Device Sync — muziek naar USB / SD?', a38: 'Device Sync (zijbalk) kopieert albums, afspeellijsten of hele artiesten naar een externe schijf voor offline luisteren op andere apparaten. Kies een doelmap, kies bronnen uit de browsertabbladen, klik "Naar apparaat overzetten". Psysonic schrijft een manifest (psysonic-sync.json) zodat het weet welke bestanden er al zijn, ook als u Device Sync op een ander OS opent met een ander bestandsnaamsjabloon. Sjablonen ondersteunen {artist} / {album} / {title} / {track_number} / {disc_number} / {year}-tokens met / als mapscheidingsteken.', s10: 'Integraties & Probleemoplossing', q39: 'Last.fm scrobbling?', a39: 'Instellingen → Integraties → Last.fm. Verbind uw account één keer en Psysonic scrobbled direct naar Last.fm — geen Navidrome-configuratie nodig. Een scrobble wordt verzonden nadat u 50% van een nummer heeft beluisterd. Now-playing pings worden bij het begin verzonden.', q40: 'Discord Rich Presence?', a40: 'Instellingen → Integraties → Discord toont uw huidige nummer op uw Discord-profiel. Kies tussen het app-pictogram, de hoezen van uw server (via getAlbumInfo2 — vereist een publiek bereikbare server) of Apple Music-hoezen. Pas de weergavestrings (details, status, tooltip) aan met token-templates.', q41: 'Bandsintown tour data?', a41: 'Opt-in onder Instellingen → Integraties → Now-Playing Info. Het Now Playing-tabblad op de Now Playing-pagina toont dan komende tour data voor de spelende artiest via de Bandsintown widget API. Standaard uit — er worden geen verzoeken gedaan totdat u inschakelt.', q42: 'Internet Radio — live-streams afspelen?', a42: 'Internet Radio (zijbalk) speelt elke live-stream die op uw Navidrome-server is opgeslagen (voeg stations toe via de Navidrome admin UI). Het afspelen loopt door de browser HTML5-audio-engine — de meeste EQ / Replay Gain / Loudness-instellingen zijn niet van toepassing op radio, maar ICY-metadata (huidige songnaam) wordt wel weergegeven. Ondersteunt MP3, AAC, OGG Vorbis en de meeste HLS-streams; codec-ondersteuning hangt af van het platform.', q43: 'De verbindingstest mislukt — wat nu?', a43: 'Controleer de URL inclusief poort dubbel (bijv. http://192.168.1.100:4533). Op een lokaal netwerk werkt http:// vaak waar https:// niet werkt (geen certificaat). Zorg ervoor dat geen firewall de poort blokkeert en dat de gebruikersnaam en wachtwoord correct zijn. Als uw server achter een reverse proxy zit, probeer dan eerst de directe URL om de oorzaak te isoleren.', q44: 'Hoezen en artiestafbeeldingen laden traag.', a44: 'Afbeeldingen worden bij de eerste weergave van uw server gehaald en vervolgens 30 dagen lokaal gecached. Als de opslag van uw server traag is, kan het eerste bezoek aan een pagina even duren; volgende bezoeken zijn onmiddellijk. De Hot Cache helpt ook voor nummers, maar de afbeeldingscache is onafhankelijk.', q45: 'Linux-problemen — zwart scherm of geen geluid?', a45: 'Zwart scherm is meestal een GPU / EGL-stuurprogrammakwestie in WebKitGTK — start met GDK_BACKEND=x11 WEBKIT_DISABLE_COMPOSITING_MODE=1 WEBKIT_DISABLE_DMABUF_RENDERER=1 (de AUR / .deb / .rpm-installers stellen deze automatisch in). Voor audio, zorg ervoor dat PipeWire of PulseAudio draait. Audio-uitval na slaap / wakker worden wordt nu automatisch afgehandeld door de post-sleep recovery hook.', }, queue: { title: 'Wachtrij', savePlaylist: 'Afspeellijst opslaan', updatePlaylist: 'Afspeellijst bijwerken', filterPlaylists: 'Afspeellijsten filteren…', playlistName: 'Naam afspeellijst', cancel: 'Annuleren', save: 'Opslaan', loadPlaylist: 'Afspeellijst laden', loading: 'Laden…', noPlaylists: 'Geen afspeellijsten gevonden.', load: 'Wachtrij vervangen & afspelen', appendToQueue: 'Toevoegen aan wachtrij', delete: 'Verwijderen', deleteConfirm: 'Afspeellijst "{{name}}" verwijderen?', clear: 'Leegmaken', shuffle: 'Wachtrij shufflen', gapless: 'Naadloos', crossfade: 'Overgang', infiniteQueue: 'Oneindige wachtrij', autoAdded: '— Automatisch toegevoegd —', radioAdded: '— Radio —', hide: 'Verbergen', hideNowPlaying: 'Now playing info verbergen', showNowPlaying: 'Now playing info weergeven', close: 'Sluiten', nextTracks: 'Volgende nummers', shareQueue: 'Wachtrij-deellink kopiëren', shareQueueEmpty: 'De wachtrij is leeg — niets om te delen.', emptyQueue: 'De wachtrij is leeg.', trackSingular: 'nummer', trackPlural: 'nummers', showRemaining: 'Resterende tijd tonen', showTotal: 'Totale tijd tonen', showEta: 'Geschatte eindtijd tonen', replayGain: 'ReplayGain', rgTrack: 'T {{db}} dB', rgAlbum: 'A {{db}} dB', rgPeak: 'Piek {{pk}}', sourceOffline: 'Afspelen vanuit offlinebibliotheek', sourceHot: 'Afspelen vanuit cache', sourceStream: 'Afspelen vanuit netwerkstream', }, miniPlayer: { showQueue: 'Wachtrij tonen', hideQueue: 'Wachtrij verbergen', pinOnTop: 'Altijd boven', pinOff: 'Losmaken', openMainWindow: 'Hoofdvenster openen', close: 'Sluiten', emptyQueue: 'Wachtrij is leeg', }, statistics: { title: 'Statistieken', recentlyPlayed: 'Recent afgespeeld', mostPlayed: 'Meest gespeelde albums', highestRated: 'Best beoordeelde albums', genreDistribution: 'Genreverdeling (Top 20)', loadMore: 'Meer laden', statArtists: 'Artiesten', statArtistsTooltip: 'Alleen albumartiesten — artiesten die enkel als trackartiest voorkomen (featuring, gast, enz.) zonder eigen album worden niet meegeteld.', statAlbums: 'Albums', statSongs: 'Nummers', statGenres: 'Genres', statPlaytime: 'Totale speelduur', genreInsights: 'Genre-inzichten', formatDistribution: 'Formaatdistributie', formatSample: 'Steekproef van {{n}} nummers', computing: 'Berekenen…', genreSongs: '{{count}} nummers', genreAlbums: '{{count}} albums', recentlyAdded: 'Recent toegevoegd', decadeDistribution: 'Albums per decennium', decadeAlbums_one: '{{count}} album', decadeAlbums_other: '{{count}} albums', decadeUnknown: 'Onbekend', lfmTitle: 'Last.fm-statistieken', lfmTopArtists: 'Topartiesten', lfmTopAlbums: 'Topalbums', lfmTopTracks: 'Topnummers', lfmPlays: '{{count}} keer gespeeld', lfmPeriodOverall: 'Alle tijd', lfmPeriod7day: '7 dagen', lfmPeriod1month: '1 maand', lfmPeriod3month: '3 maanden', lfmPeriod6month: '6 maanden', lfmPeriod12month: '12 maanden', lfmNotConnected: 'Verbind Last.fm in Instellingen om je statistieken te zien.', lfmRecentTracks: 'Recente scrobbles', lfmNowPlaying: 'Nu bezig', lfmJustNow: 'zojuist', lfmMinutesAgo: '{{n}} min geleden', lfmHoursAgo: '{{n}} uur geleden', lfmDaysAgo: '{{n}} dagen geleden', topRatedSongs: 'Best beoordeelde nummers', topRatedArtists: 'Best beoordeelde artiesten', noRatedSongs: 'Nog geen beoordeelde nummers. Beoordeel nummers in album- of afspeellijstweergave.', noRatedArtists: 'Nog geen beoordeelde artiesten.', }, player: { regionLabel: 'Muziekspeler', openFullscreen: 'Volledig-schermspeler openen', fullscreen: 'Volledig-schermspeler', closeFullscreen: 'Volledig scherm sluiten', closeTooltip: 'Sluiten (Escape)', noTitle: 'Geen titel', stop: 'Stoppen', prev: 'Vorig nummer', play: 'Afspelen', pause: 'Pauzeren', previewActive: 'Voorbeeld speelt af', previewLabel: 'Voorbeeld', delayModalTitle: 'Timer', delayPauseSection: 'Pauzeren na', delayStartSection: 'Starten na', delayPreviewPause: 'Pauze om', delayPreviewStart: 'Start om', delaySchedulePause: 'Pauze plannen', delayScheduleStart: 'Start plannen', delayCancelPause: 'Pauze-timer annuleren', delayCancelStart: 'Start-timer annuleren', delayInactivePause: 'Alleen beschikbaar tijdens afspelen.', delayInactiveStart: 'Alleen in pauze met een geladen nummer of radio.', delayCustomMinutes: 'Aangepaste vertraging (minuten)', delayCustomPlaceholder: 'bijv. 2,5', closeDelayModal: 'Sluiten', delayIn: 'over', delayFmtSec: '{{n}} s', delayFmtMin: '{{n}} min', delayFmtHr: '{{n}} u', delayCancel: 'Annuleren', delayApply: 'Toepassen', next: 'Volgend nummer', repeat: 'Herhalen', repeatOff: 'Uit', repeatAll: 'Alles', repeatOne: 'Één', progress: 'Nummervoortgang', volume: 'Volume', toggleQueue: 'Wachtrij in-/uitschakelen', collapseQueueResize: 'Wachtrij inklappen, breedte wijzigen', moreOptions: 'Meer opties', equalizer: 'Equalizer', miniPlayer: 'Minispeler', lyrics: 'Songtekst', fsLyricsToggle: 'Songtekst in volledig scherm', lyricsLoading: 'Songtekst laden…', lyricsNotFound: 'Geen songtekst gevonden voor dit nummer', lyricsSourceServer: 'Bron: Server', lyricsSourceLrclib: 'Bron: LRCLIB', lyricsSourceNetease: 'Bron: Netease', lyricsSourceLyricsplus: 'Bron: YouLyPlus', showDuration: 'Toon duur', showRemainingTime: 'Toon resterende tijd', }, nowPlayingInfo: { tab: 'Info', empty: 'Speel iets af om informatie te zien', artist: 'Artiest', songInfo: 'Nummer-info', onTour: 'Op tour', noTourEvents: 'Geen aankomende concerten', tourLoading: 'Laden…', poweredByBandsintown: 'Tourdata via Bandsintown', bioReadMore: 'Meer tonen', bioReadLess: 'Minder tonen', showMoreTours_one: '{{count}} meer tonen', showMoreTours_other: '{{count}} meer tonen', showLessTours: 'Minder tonen', enableBandsintownPrompt: 'Aankomende tourdata tonen?', enableBandsintownPromptDesc: 'Optioneel. Laadt concerten van de huidige artiest via de openbare Bandsintown-API.', enableBandsintownPrivacy: 'Bij inschakelen wordt de naam van de huidige artiest naar de Bandsintown-API gestuurd om tourdata op te halen. Er worden geen account- of persoonlijke gegevens verzonden.', enableBandsintownAction: 'Inschakelen', role: { artist: 'Artiest', albumArtist: 'Albumartiest', composer: 'Componist', }, }, songInfo: { title: 'Nummerinfo', songTitle: 'Titel', artist: 'Artiest', album: 'Album', albumArtist: 'Albumartiest', year: 'Jaar', genre: 'Genre', duration: 'Duur', track: 'Track', format: 'Formaat', bitrate: 'Bitrate', sampleRate: 'Samplefrequentie', bitDepth: 'Bitdiepte', channels: 'Kanalen', fileSize: 'Bestandsgrootte', path: 'Locatie', replayGainTrack: 'RG Track Gain', replayGainAlbum: 'RG Album Gain', replayGainPeak: 'RG Track Peak', mono: 'Mono', stereo: 'Stereo', }, playlists: { title: 'Playlists', newPlaylist: 'Nieuwe playlist', unnamed: 'Naamloze playlist', createName: 'Playlistnaam…', create: 'Aanmaken', cancel: 'Annuleren', empty: 'Nog geen playlists.', emptyPlaylist: 'Deze playlist is leeg.', addFirstSong: 'Voeg je eerste nummer toe', notFound: 'Playlist niet gevonden.', songs: '{{n}} nummers', playAll: 'Alles afspelen', shuffle: 'Willekeurig', addToQueue: 'Aan wachtrij toevoegen', back: 'Terug naar playlists', deletePlaylist: 'Verwijderen', confirmDelete: 'Nogmaals klikken om te bevestigen', removeSong: 'Uit playlist verwijderen', addSongs: 'Nummers toevoegen', searchPlaceholder: 'Doorzoek bibliotheek…', noResults: 'Geen resultaten.', suggestions: 'Aanbevolen nummers', noSuggestions: 'Geen suggesties beschikbaar.', titleBadge: 'Playlist', refreshSuggestions: 'Nieuwe suggesties', addSong: 'Toevoegen aan playlist', preview: 'Voorbeeld (30 s)', previewStop: 'Voorbeeld stoppen', playNextSuggestion: 'Hierna afspelen', suggestionsHint: 'Dubbelklik op een rij om hem aan de afspeellijst toe te voegen', addSelected: 'Geselecteerde toevoegen', cacheOffline: 'Playlist offline opslaan', offlineCached: 'Playlist gecached', removeOffline: 'Verwijder uit offline cache', offlineDownloading: 'Cachen… ({{done}}/{{total}} albums)', publicLabel: 'Openbaar', privateLabel: 'Privé', editMeta: 'Playlist bewerken', editNamePlaceholder: 'Playlistnaam…', editCommentPlaceholder: 'Beschrijving toevoegen…', editPublic: 'Openbare playlist', editSave: 'Opslaan', editCancel: 'Annuleren', changeCover: 'Omslagafbeelding wijzigen', changeCoverLabel: 'Foto wijzigen', removeCover: 'Foto verwijderen', coverUpdated: 'Omslag bijgewerkt', metaSaved: 'Playlist bijgewerkt', downloadZip: 'Downloaden (ZIP)', // Toast notifications for multi-select addSuccess: '{{count}} nummers toegevoegd aan {{playlist}}', addPartial: '{{added}} toegevoegd, {{skipped}} overgeslagen (duplicaten)', addAllSkipped: 'Alles overgeslagen ({{count}} duplicaten)', addedAsDuplicates: '{{count}} nummers toegevoegd aan {{playlist}} (als duplicaten)', duplicateConfirmTitle: 'Al in afspeellijst', duplicateConfirmMessage: 'Alle {{count}} nummers staan al in "{{playlist}}". Toch als duplicaten toevoegen?', duplicateConfirmAction: 'Toch toevoegen', addError: 'Fout bij toevoegen van nummers', createAndAddSuccess: 'Playlist "{{playlist}}" aangemaakt met {{count}} nummers', createError: 'Fout bij aanmaken van playlist', deleteSuccess: '{{count}} playlists verwijderd', deleteFailed: 'Fout bij verwijderen van {{name}}', deleteSelected: 'Geselecteerde verwijderen', deleteSelectedPartial: 'Slechts {{n}} van de {{total}} geselecteerde playlists kunnen worden verwijderd (de andere zijn van iemand anders).', mergeSuccess: '{{count}} nummers samengevoegd in {{playlist}}', mergeNoNewSongs: 'Geen nieuwe nummers om toe te voegen', mergeError: 'Fout bij samenvoegen van playlists', mergeInto: 'Samenvoegen in', selectionCount: '{{count}} geselecteerd', select: 'Selecteren', startSelect: 'Selectie inschakelen', cancelSelect: 'Annuleren', loadingAlbums: '{{count}} albums oplossen…', loadingArtists: '{{count}} artiesten oplossen…', myPlaylists: 'Mijn playlists', noOtherPlaylists: 'Geen andere playlists beschikbaar', addToPlaylistSuccess: '{{count}} nummers toegevoegd aan {{playlist}}', addToPlaylistNoNew: 'Geen nieuwe nummers voor {{playlist}}', addToPlaylistError: 'Fout bij toevoegen aan playlist', removeSuccess: 'Nummer verwijderd van playlist', removeError: 'Fout bij verwijderen uit playlist', importCSV: 'CSV Importeren', importCSVTooltip: 'Importeren vanuit Spotify CSV', csvImportReport: 'CSV-importrapport', csvImportTotal: 'Totaal', csvImportAdded: 'Toegevoegd', csvImportDuplicates: 'Duplicaten', csvImportNotFound: 'Niet Gevonden', csvImportNetworkErrors: 'Netwerkfouten', csvImportDuplicatesTitle: 'Dubbele nummers (al in playlist):', csvImportNotFoundTitle: 'Niet gevonden nummers:', csvImportNetworkErrorsTitle: 'Netwerkfouten (import kan opnieuw proberen):', csvImportDownloadReport: 'Rapport downloaden', csvImportClose: 'Sluiten', csvImportNoValidTracks: 'Geen geldige nummers gevonden in CSV-bestand', csvImportFailed: 'CSV-import mislukt', csvImportToast: '{{added}} toegevoegd, {{notFound}} niet gevonden, {{duplicates}} duplicaten', csvImportDownloadSuccess: 'Rapport succesvol gedownload', csvImportDownloadError: 'Rapport downloaden mislukt', }, smartPlaylists: { sectionBasic: '1. Basis', sectionGenres: '2. Genres', sectionYearsAndFilters: '3. Jaren en filters', genreMode: 'Genre-modus', genreModeInclude: 'Genres opnemen', genreModeExclude: 'Genres uitsluiten', genreSearchPlaceholder: 'Genres filteren...', availableGenres: 'Beschikbaar', selectedGenres: 'Geselecteerd', yearMode: 'Jaarmodus', yearModeInclude: 'Bereik opnemen', yearModeExclude: 'Bereik uitsluiten', name: 'Naam (zonder prefix)', limit: 'Limiet', limitHint: 'Hoeveel nummers in de playlist moeten komen (1-{{max}}, meestal 50).', artistContains: 'Artiest bevat…', albumContains: 'Album bevat…', titleContains: 'Titel bevat…', minRating: 'Minimale beoordeling', minRatingAria: 'Minimale beoordeling voor smart playlist', minRatingHint: '0 schakelt de minimumdrempel uit; 1-5 behoudt nummers met een beoordeling boven de gekozen waarde.', fromYear: 'Vanaf jaar', toYear: 'Tot jaar', excludeUnrated: 'Nummers zonder beoordeling uitsluiten', compilationOnly: 'Alleen compilaties', create: 'Nieuwe Smart Playlist', save: 'Smart Playlist opslaan', created: '{{name}} aangemaakt', updated: '{{name}} bijgewerkt', createFailed: 'Smart playlist kon niet worden aangemaakt.', updateFailed: 'Smart playlist kon niet worden bijgewerkt.', navidromeOnly: 'Smart playlists kunnen alleen op Navidrome-servers worden aangemaakt.', loadFailed: 'Smart playlists konden niet vanuit Navidrome worden geladen.', sortRandom: 'Sorteren: willekeurig', sortTitleAsc: 'Sorteren: titel A-Z', sortTitleDesc: 'Sorteren: titel Z-A', sortYearDesc: 'Sorteren: jaar aflopend', sortYearAsc: 'Sorteren: jaar oplopend', sortPlayCountDesc: 'Sorteren: afspeeltelling aflopend', }, mostPlayed: { title: 'Meest gespeeld', topArtists: 'Topkunstenaars', topAlbums: 'Topalbums', plays: '{{n}} keer gespeeld', sortMost: 'Meest gespeeld eerst', sortLeast: 'Minst gespeeld eerst', loadMore: 'Meer albums laden', noData: 'Nog geen afspeelgegevens. Begin met luisteren!', noArtists: 'Alle artiesten gefilterd.', filterCompilations: 'Compilatie-artiesten verbergen (Various Artists, Soundtracks, etc.)', filterCompilationsShort: 'Compilaties verbergen', }, losslessAlbums: { empty: 'Nog geen lossless-albums in deze bibliotheek.', unsupported: 'Deze server biedt geen metadata om lossless-albums te vinden.', slowFetchHint: 'Laadt langzamer dan andere albumpagina\'s — Psysonic doorloopt de volledige songcatalogus op kwaliteit.', }, radio: { title: 'Internetradio', empty: 'Geen radiostations geconfigureerd.', addStation: 'Station toevoegen', editStation: 'Bewerken', deleteStation: 'Station verwijderen', confirmDelete: 'Klik opnieuw om te bevestigen', stationName: 'Stationsnaam…', streamUrl: 'Stream-URL…', homepageUrl: 'Homepage-URL (optioneel)', save: 'Opslaan', cancel: 'Annuleren', live: 'LIVE', liveStream: 'Internetradio', openHomepage: 'Homepage openen', changeCoverLabel: 'Cover wijzigen', removeCover: 'Cover verwijderen', browseDirectory: 'Gids doorzoeken', directoryPlaceholder: 'Stations zoeken…', noResults: 'Geen stations gevonden.', stationAdded: 'Station toegevoegd', filterAll: 'Alle', filterFavorites: 'Favorieten', sortManual: 'Handmatig', sortAZ: 'A → Z', sortZA: 'Z → A', sortNewest: 'Nieuwste', favorite: 'Toevoegen aan favorieten', unfavorite: 'Verwijderen uit favorieten', noFavorites: 'Geen favoriete stations.', listenerCount_one: '{{count}} luisteraar', listenerCount_other: '{{count}} luisteraars', recentlyPlayed: 'Recent gespeeld', upNext: 'Volgende', }, folderBrowser: { empty: 'Lege map', error: 'Laden mislukt', }, deviceSync: { title: 'Apparaatsync', targetFolder: 'Doelmap', noFolderChosen: 'Geen map gekozen', selectDrive: 'Selecteer een schijf…', refreshDrives: 'Schijven vernieuwen', noDrivesDetected: 'Geen verwijderbare schijven gedetecteerd', browseManual: 'Handmatig bladeren…', free: 'vrij', notMountedVolume: 'Het doel bevindt zich niet op een gekoppeld volume. De schijf is mogelijk losgekoppeld.', chooseFolder: 'Kiezen…', filenameTemplate: 'Bestandsnaamsjabloon', targetDevice: 'Doelapparaat', templateHint: 'Variabelen: {artist}, {album}, {title}, {track_number}, {disc_number}, {year}', cleanupButton: 'Niet-geselecteerde bestanden verwijderen', cleanupNothingToDelete: 'Niets te verwijderen — apparaat is al gesynchroniseerd.', confirmCleanup: '{{count}} bestand(en) verwijderen van het apparaat die niet in de huidige selectie staan. Doorgaan?', cleanupComplete: '{{count}} bestand(en) van het apparaat verwijderd.', selectedSources: 'Geselecteerde bronnen', noSourcesSelected: 'Geen bronnen geselecteerd. Klik op items in de browser om ze toe te voegen.', clearAll: 'Alles wissen', tabPlaylists: 'Afspeellijsten', tabAlbums: 'Albums', tabArtists: 'Artiesten', searchPlaceholder: 'Zoeken…', syncButton: 'Synchroniseren naar apparaat', actionTransfer: 'Overdragen naar apparaat', actionDelete: 'Verwijderen van apparaat', actionApplyAll: 'Alle wijzigingen toepassen', templatePreview: 'Voorbeeld', templatePresetStandard: 'Standaard', templatePresetMultiDisc: 'Multi-Disc', templatePresetAltFolder: 'Alt. map', tokenSlashHint: '/ = mapscheidingsteken', cancel: 'Annuleren', noTargetDir: 'Kies eerst een doelmap.', noSources: 'Selecteer minimaal één bron.', noTracks: 'Geen nummers gevonden in de geselecteerde bronnen.', fetchError: 'Ophalen van nummers van de server mislukt.', syncComplete: 'Synchronisatie voltooid.', dismiss: 'Sluiten', cancelSync: 'Annuleren', syncCancelled: 'Synchronisatie geannuleerd ({{done}} / {{total}} overgebracht).', colName: 'Naam', colType: 'Type', colStatus: 'Status', onDevice: 'Apparaatbeheer', addSources: 'Toevoegen…', syncResult: '{{done}} overgedragen, {{skipped}} al up-to-date ({{total}} totaal)', deleteFromDevice: 'Markeren voor verwijdering ({{count}})', confirmDelete: '{{count}} item(s) van het apparaat verwijderen: {{names}}?', deleteComplete: '{{count}} item(s) van het apparaat verwijderd.', manifestImported: '{{count}} bron(nen) geïmporteerd uit apparaatmanifest.', statusSynced: 'Gesynchroniseerd', statusPending: 'In behandeling', statusDeletion: 'Verwijdering', markForDeletion: 'Markeren voor verwijdering', removeSource: 'Verwijderen', undoDeletion: 'Verwijdering ongedaan maken', syncInBackground: 'Sync gestart op achtergrond — u kunt navigeren.', syncInProgress: '{{done}} / {{total}} nummers…', syncSummary: 'Synchronisatieoverzicht', calculating: 'Vereiste payload berekenen…', filesToAdd: 'Te toevoegen bestanden:', filesToDelete: 'Te verwijderen bestanden:', netChange: 'Nettoverandering:', availableSpace: 'Beschikbare schijfruimte:', spaceWarning: 'Waarschuwing: Het doelapparaat heeft niet genoeg gerapporteerde ruimte.', proceed: 'Doorgaan met synchronisatie', notEnoughSpace: 'Onvoldoende fysieke schijfruimte gedetecteerd!', liveSearch: 'Live', randomAlbumsLabel: 'Willekeurige albums', }, orbit: { triggerLabel: 'Orbit', triggerTooltip: 'Een gedeelde luistersessie starten of eraan deelnemen', launchCreate: 'Sessie aanmaken', launchJoin: 'Deelnemen aan sessie', launchHelp: 'Hoe werkt dit?', launchHelpSoon: 'Binnenkort beschikbaar', joinModalTitle: 'Deelnemen aan een Orbit-sessie', joinModalSub: 'Plak de uitnodigingslink die je host je gestuurd heeft.', joinModalLinkLabel: 'Uitnodigingslink', joinModalLinkPlaceholder: 'psysonic2-…', joinModalLinkHelper: 'Werkt met elke geldige Orbit-link. Moet verwijzen naar de server waarop je nu bent aangemeld.', joinModalPasteTooltip: 'Plakken vanaf klembord', joinModalSubmit: 'Deelnemen', joinModalBusy: 'Deelnemen…', joinErrEmpty: 'Plak een uitnodigingslink.', joinErrInvalid: 'Dat lijkt geen Orbit-uitnodigingslink.', closeAria: 'Sluiten', heroTitlePrefix: 'Luister samen met', heroTitleBrand: 'Orbit', heroSub: 'Start een sessie — andere gebruikers op {{server}} luisteren mee en kunnen nummers voorstellen.', fallbackServer: 'deze server', tipLan: 'Je bent momenteel verbonden via een thuisnetwerkadres. Gasten van buiten je netwerk kunnen niet deelnemen — schakel over naar een openbaar serveradres in de instellingen voordat je start.', tipRemote: 'Zodat gasten van buiten je thuisnetwerk kunnen deelnemen, moet je serveradres publiek bereikbaar zijn. Als je server alleen intern is, schakel om voordat je start.', labelName: 'Sessienaam', namePlaceholder: 'Velvet Orbit', reshuffleTooltip: 'Nieuwe suggestie', reshuffleAria: 'Een nieuwe naam voorstellen', helperName: 'Hoe de sessie voor je gasten verschijnt — laat staan of typ je eigen naam.', labelMax: 'Max. gasten', helperMax: 'Jij telt niet mee — dit beperkt alleen binnenkomende gasten.', labelLink: 'Uitnodigingslink', tooltipCopied: 'Gekopieerd', tooltipCopy: 'Kopiëren', ariaCopyLink: 'Uitnodigingslink kopiëren', helperLink: 'Stuur deze link naar je gasten. Ze kunnen hem overal in Psysonic plakken met Ctrl+V.', labelClearQueue: 'Eerst mijn wachtrij legen', helperClearQueue: 'Begin de sessie met een lege wachtrij. Uit: bestaande nummers blijven en worden met gasten gedeeld.', btnCancel: 'Annuleren', btnStarting: 'Starten…', btnStart: 'Orbit starten', btnCopyAndStart: 'Link kopiëren & starten', errNameRequired: 'Geef je sessie een naam.', errStartFailed: 'Kon niet starten.', hostLabel: 'Host: {{name}}', participantsTooltip: 'Deelnemers', settingsTooltip: 'Sessie-instellingen', shareTooltip: 'Uitnodigingslink delen', shuffleLabel: 'Volgende shuffle in', catchUpLabel: 'inhalen', catchUpTooltip: 'Spring naar de huidige positie van de host', hostAway: 'Host offline', hostOnline: 'Host online', endTooltip: 'Sessie beëindigen', leaveTooltip: 'Sessie verlaten', helpTooltip: 'Hoe Orbit werkt', helpTitle: 'Hoe Orbit werkt', helpIntro: 'Orbit maakt van Psysonic een gedeelde luisterruimte. Een host kiest de muziek; gasten luisteren synchroon mee en kunnen nummers voorstellen.', helpHostOnly: '(host)', helpSec1Title: 'Wat is Orbit?', helpSec1Body: 'Een "samen luisteren"-modus — de host stuurt de weergave, gasten sluiten aan. Alles loopt via playlists op je eigen Navidrome-server; geen externe infrastructuur.', helpSec2Title: 'Host en gasten', helpSec2Body: 'De host bedient de weergave (play / pause / skip / seek) en beslist wanneer de sessie eindigt. Gasten volgen de weergave, kunnen nummers voorstellen en elk moment verlaten of opnieuw deelnemen. Alleen de host kan deelnemers kicken of permanent bannen.', helpSec2WarnHead: 'Belangrijk: aparte accounts.', helpSec2WarnBody: 'Elke deelnemer heeft een eigen Navidrome-account nodig. Als host en gast met dezelfde gebruiker inloggen botsen hun inzendingen en de host ziet nooit de suggesties van de gast.', helpSec3Title: 'Starten en uitnodigen', helpSec3Body: 'Klik op de "Orbit"-knop → Sessie aanmaken → het startmodal toont een kopieerklare uitnodigingslink en laat je optioneel je huidige wachtrij legen. Deel de link hoe je wilt. Terwijl een sessie draait, kopieert de deelknop in de sessiebalk de link op elk moment opnieuw.', helpSec4Title: 'Deelnemen', helpSec4Body: 'Plak de uitnodigingslink ergens in Psysonic met Ctrl+V / Cmd+V — de deelprompt verschijnt automatisch. Alternatief: "Orbit" → Deelnemen aan sessie → plak in het veld. Als de link naar een server verwijst waar je een account hebt, schakelt Psysonic voor je. Bij meerdere accounts op die server vraagt een kleine kiezer welke te gebruiken.', helpSec5Title: 'Nummers voorstellen', helpSec5Body: 'In elke lijst: dubbelklik op een rij, of rechtermuisknop → "Toevoegen aan Orbit-sessie". Een enkele klik toont een hint in plaats van het hele album in de gedeelde wachtrij te gooien — dat is bewust. Expliciete bulkacties zoals "Alles afspelen" of "Album afspelen" vragen eerst om bevestiging en voegen dan toe (vervangen nooit).', helpSec6Title: 'De gedeelde wachtrij', helpSec6Body: 'De wachtrij toont de komende nummers van de host — voor iedereen zichtbaar. Inkomende bulktoevoegingen worden altijd achteraan geplaatst, zodat suggesties van gasten niet verloren gaan. Auto-shuffle hergroepeert de wachtrij periodiek (instelbaar: 1 / 5 / 10 / 15 / 30 min). Als je weergave afwijkt van de host, brengt de "Inhalen"-knop in de sessiebalk je terug naar de live positie van de host.', helpSec7Title: 'Goedkeuringen', helpSec7Body: 'Standaard hebben gast-suggesties handmatige goedkeuring nodig — ze verschijnen in een "Goedkeuringen"-strook bovenaan het wachtrijpaneel met accepteer- / afwijsknoppen. Auto-goedkeuring kan in de sessie-instellingen aan, zodat alles direct doorgaat.', helpSec8Title: 'Deelnemers en instellingen', helpSec8Body: 'Open het instellingen-icoon in de sessiebalk voor shuffle-cadans, auto-goedkeuring en de "Nu shufflen"-sneltoets. Klik op het deelnemersaantal om te zien wie verbonden is — kicken (kan via de link opnieuw deelnemen) of bannen (voor de sessie uitgesloten). Gasten zien de deelnemerslijst ook, maar alleen-lezen.', helpSec9Title: 'De sessie beëindigen', helpSec9Body: 'Host-X → bevestigingsdialoog → de sessie sluit voor iedereen en de server-playlists worden automatisch opgeruimd. Gast-X → de gast verlaat, de sessie gaat door. Als de host 5 minuten stil blijft, verlaat de gast automatisch met een melding; korte reconnects binnen die tijd zijn onzichtbaar.', participantsInviteLabel: 'Uitnodigingslink', participantsCountLabel: '{{count}} in sessie', participantsHost: 'host', participantsEmpty: 'Nog geen gasten', participantsKickTooltip: 'Uit sessie verwijderen', participantsKickAria: '{{user}} verwijderen', participantsRemoveTooltip: 'Uit sessie verwijderen', participantsRemoveAria: '{{user}} uit deze sessie verwijderen', participantsBanTooltip: 'Permanent bannen', participantsBanAria: '{{user}} permanent bannen', participantsMuteTooltip: 'Voorstellen blokkeren', participantsUnmuteTooltip: 'Voorstellen toestaan', participantsMuteAria: 'Voorstellen van {{user}} blokkeren', participantsUnmuteAria: 'Voorstellen van {{user}} weer toestaan', confirmRemoveTitle: 'Uit sessie verwijderen?', confirmRemoveBody: '{{user}} wordt uit de sessie verwijderd, maar kan opnieuw deelnemen via je uitnodigingslink.', confirmRemoveConfirm: 'Verwijderen', confirmBanTitle: 'Permanent bannen?', confirmBanBody: '{{user}} wordt verwijderd en kan niet meer aan deze sessie deelnemen. Onomkeerbaar voor de duur van de sessie.', confirmBanConfirm: 'Bannen', confirmCancel: 'Annuleren', confirmJoinTitle: 'Deelnemen aan Orbit-sessie?', confirmJoinBody: '{{host}} heeft je uitgenodigd voor "{{name}}". Aan de sessie deelnemen?', confirmJoinConfirm: 'Deelnemen', confirmLeaveTitle: 'Sessie verlaten?', confirmLeaveBody: 'Wil je "{{name}}" verlaten? Je kunt altijd opnieuw deelnemen via de uitnodigingslink van {{host}}.', confirmLeaveConfirm: 'Verlaten', confirmEndTitle: 'Sessie voor iedereen beëindigen?', confirmEndBody: '"{{name}}" wordt voor alle deelnemers gesloten. De sessie-playlists worden automatisch opgeruimd.', confirmEndConfirm: 'Sessie beëindigen', invalidLinkTitle: 'Uitnodigingslink is niet meer geldig', invalidLinkBody: 'Deze Orbit-sessie bestaat niet meer of is al beëindigd. Vraag de host om een nieuwe uitnodigingslink.', settingsTitle: 'Sessie-instellingen', settingAutoApprove: 'Suggesties automatisch goedkeuren', settingAutoApproveHint: 'Gast-suggesties komen direct in je wachtrij. Uit: ze blijven in de sessielijst voor latere beoordeling.', settingAutoShuffle: 'Automatisch shufflen', settingAutoShuffleHint: 'Periodieke Fisher-Yates-shuffle van de komende wachtrij. Uit: de volgorde verandert alleen wanneer je zelf herschikt.', settingShuffleInterval: 'Opnieuw shufflen elke', settingShuffleIntervalHint: 'Hoe vaak de komende wachtrij tijdens de sessie opnieuw wordt geshuffled.', suggestBlockedMuted: 'De host heeft je voor deze sessie geblokkeerd — voorstellen uitgeschakeld.', settingShuffleIntervalValue_one: '{{count}} min', settingShuffleIntervalValue_other: '{{count}} min', settingShuffleNow: 'Nu shufflen', toastSuggested: '{{user}} stelde "{{title}}" voor', toastSuggestedMany: '{{count}} nieuwe suggesties in de wachtrij', toastShuffled: 'Wachtrij geshuffled', toastJoined: 'Deelgenomen aan sessie', toastLoginFirst: 'Log eerst in voordat je aan een sessie deelneemt', toastSwitchServer: 'Schakel eerst naar {{url}} en plak opnieuw', toastNoAccountForServer: 'Je hebt geen toegang tot {{url}}. Vraag de host om een uitnodiging.', toastSwitchFailed: 'Kon niet schakelen naar {{url}}', accountPickerTitle: 'Welk account?', accountPickerSub: 'Je hebt meer dan één account voor {{url}}. Kies waarmee je wilt deelnemen.', toastJoinFail: 'Kon niet deelnemen aan sessie', joinErrNotFound: 'Sessie niet gevonden', joinErrEnded: 'De sessie is beëindigd', joinErrFull: 'De sessie is vol', joinErrKicked: 'Je kunt niet opnieuw deelnemen aan deze sessie', joinErrNoUser: 'Geen actieve server', joinErrServerError: 'Kon niet deelnemen', ctxAddToSession: 'Aan Orbit-sessie toevoegen', ctxSuggestedToast: 'Aan sessie voorgesteld', ctxSuggestFailed: 'Kon niet voorstellen — niet deelgenomen', ctxAddToSessionHost: 'Aan Orbit-sessie toevoegen', ctxAddedHostToast: 'Aan sessie toegevoegd', ctxAddHostFailed: 'Kon niet toevoegen aan sessie', bulkConfirmTitle: 'Alles aan de Orbit-wachtrij toevoegen?', bulkConfirmBody: 'Dit zou {{count}} nummers in één keer in de gedeelde wachtrij plaatsen. Dat is veel voor je gasten. Doorgaan?', bulkConfirmYes: 'Alles toevoegen', bulkConfirmNo: 'Annuleren', guestLive: 'Live', guestPlaying: 'Speelt nu', guestPaused: 'Gepauzeerd', guestLoading: 'Laden…', guestSuggestions: 'Suggesties', guestUpNext: 'Volgende', guestUpNextEmpty: 'Niets in de wachtrij. Open het contextmenu van een nummer en kies "Aan Orbit-sessie toevoegen".', guestPendingTitle: 'Wacht op host', guestPendingHint: 'Voorgesteld — verschijnt in de wachtrij zodra de host het oppakt.', approvalTitle: 'Wacht op goedkeuring', approvalFrom: 'Voorgesteld door {{user}}', approvalAccept: 'Accepteren', approvalDecline: 'Weigeren', guestUpNextMore: '+ {{count}} meer in de wachtrij van de host', guestSubmitter: 'door {{user}}', queueAddedByHost: 'Toegevoegd door host', queueAddedByYou: 'Toegevoegd door jou', queueAddedByUser: 'Toegevoegd door {{user}}', guestEmpty: 'Nog geen suggesties. Open het contextmenu van een nummer en kies "Aan Orbit-sessie toevoegen".', guestFooter: 'De host bedient de weergave — je kunt de lijst niet wijzigen.', exitKickedTitle: 'Je bent uit de sessie gebannen', exitRemovedTitle: 'Je bent uit de sessie verwijderd', exitEndedTitle: 'De host heeft de sessie beëindigd', exitHostTimeoutTitle: 'Host niet bereikbaar', exitHostTimeoutBody: '{{host}} heeft al een tijd geen update meer verstuurd, dus "{{name}}" is aan jouw kant gesloten. Je kunt altijd opnieuw deelnemen via de link.', exitKickedBody: '{{host}} heeft je uit "{{name}}" gebannen. Je kunt niet opnieuw deelnemen.', exitRemovedBody: '{{host}} heeft je uit "{{name}}" verwijderd. Je kunt altijd opnieuw deelnemen via de link.', exitEndedBody: '"{{name}}" is beëindigd. Hopelijk had je plezier.', exitOk: 'OK', }, tray: { playPause: 'Afspelen / Pauzeren', nextTrack: 'Volgende nummer', previousTrack: 'Vorige nummer', showHide: 'Tonen / Verbergen', exitPsysonic: 'Psysonic afsluiten', nothingPlaying: 'Niets wordt afgespeeld', }, licenses: { title: 'Open-source licenties', intro: 'Psysonic is gebouwd op open-source software. De onderstaande lijst toont elke afhankelijkheid die met de app wordt meegeleverd, met versie, licentie en volledige licentietekst.', highlights: 'Belangrijke afhankelijkheden', searchPlaceholder: 'Zoek op naam, versie of licentie…', noResults: 'Geen resultaten.', loading: 'Licenties laden…', loadError: 'Licentiegegevens konden niet worden geladen.', noLicenseText: 'Geen licentietekst meegeleverd voor deze afhankelijkheid.', viewSource: 'Bron bekijken', totalLine: '{{total}} afhankelijkheden — {{cargo}} cargo, {{npm}} npm', generatedAt: 'Laatst gegenereerd {{date}}', }, };