diff --git a/web/public/locales/nl/components/player.json b/web/public/locales/nl/components/player.json index ff0dd10655..7ec53a0f1f 100644 --- a/web/public/locales/nl/components/player.json +++ b/web/public/locales/nl/components/player.json @@ -30,7 +30,8 @@ }, "submitFrigatePlus": { "title": "Dit frame indienen bij Frigate+?", - "submit": "Indienen" + "submit": "Indienen", + "previewError": "Het was niet mogelijk om de snapshot preview te laden. De opname is mogelijk niet beschikbaar op dit moment." }, "streamOffline": { "title": "Stream is Offline", diff --git a/web/public/locales/nl/config/cameras.json b/web/public/locales/nl/config/cameras.json index 96b78e382f..a70df21343 100644 --- a/web/public/locales/nl/config/cameras.json +++ b/web/public/locales/nl/config/cameras.json @@ -13,7 +13,7 @@ "description": "Geactiveerd" }, "audio": { - "label": "Audiogebeurtenissen", + "label": "Geluiddetectie", "description": "Audio-instellingen voor gebeurtenisdetectie van deze camera.", "enabled": { "label": "Geluiddetectie inschakelen", @@ -21,19 +21,23 @@ }, "max_not_heard": { "label": "Einde timeout", - "description": "Hoeveelheid secondes zonder de geconfigureerde audio soort, voordat de geluids gebeurtenis is beindigd." + "description": "Aantal seconden zonder het geconfigureerde audiotype, voordat de geluidsgebeurtenis is beëindigd." }, "min_volume": { - "label": "Minimale volume", - "description": "Minimale RMS-volumedrempel die nodig is om audiodetectie te starten; Hoe lager de waarde, hoe gevoeliger de detectie (bijvoorbeeld, 200 hoog, 500 gemiddeld, 1000 laag)." + "label": "Minimumvolume", + "description": "Minimale RMS-volumedrempel die nodig is om audiodetectie te starten; hoe lager de waarde, hoe gevoeliger de detectie (bijvoorbeeld, 200 hoog, 500 gemiddeld, 1000 laag)." }, "listen": { "label": "Luistercategorieën", "description": "Lijst van luistercategorie gebeurtenissen voor detectie (zoals: blaffen, band_alarm, schreeuw, praten, roepen)." }, "filters": { - "label": "Geluids filters", - "description": "Instellingen per audiotype, waaronder betrouwbaarheidsdrempels, ter vermindering van foutieve detecties." + "label": "Geluidsfilters", + "description": "Instellingen per audiotype, waaronder betrouwbaarheidsdrempels, ter vermindering van foutieve detecties.", + "threshold": { + "label": "Minimale audiobetrouwbaarheid", + "description": "Minimale betrouwbaarheidsdrempel voor de audiogebeurtenis om te worden geteld." + } }, "enabled_in_config": { "label": "Originele audio-instelling", @@ -45,7 +49,7 @@ } }, "audio_transcription": { - "label": "Audio‑transcriptie", + "label": "Audiotranscriptie", "description": "Instellingen voor live en spraakgestuurde audiotranscriptie voor gebeurtenissen en live ondertitels.", "enabled": { "label": "Spraaktranscriptie inschakelen", @@ -60,14 +64,14 @@ } }, "birdseye": { - "label": "Overzichtsweergave", + "label": "Birdseye-overzicht", "description": "Instellingen voor de overzichtsweergave die meerdere camerafeeds combineert tot één lay‑out.", "enabled": { - "label": "Activeer overzichtsweergave", + "label": "Birdseye-overzicht inschakelen", "description": "De overzichtsweergavefunctie in- of uitschakelen." }, "mode": { - "label": "Volgmodus", + "label": "Weergavemodus", "description": "Modus voor het opnemen van camera’s in overzichtsweergave: ‘objecten’, ‘beweging’ of ‘continu’." }, "order": { @@ -76,18 +80,18 @@ } }, "detect": { - "label": "Detectie object", + "label": "Objectdetectie", "description": "Instellingen voor de detectierol om objecten te detecteren en trackers te starten.", "enabled": { - "label": "Detectie aan", + "label": "Detectie inschakelen", "description": "Objectdetectie voor deze camera in- of uitschakelen. Detectie moet zijn ingeschakeld om objecttracking te laten werken." }, "height": { - "label": "Detectie hoogte", + "label": "Detectiehoogte", "description": "De hoogte in pixels van frames voor de detectiestream. Laat dit veld leeg om de standaardresolutie te gebruiken." }, "width": { - "label": "Detectie breedte", + "label": "Detectiebreedte", "description": "De breedte in pixels van frames voor de detectiestream. Laat dit veld leeg om de standaardresolutie te gebruiken." }, "fps": { @@ -121,10 +125,18 @@ "description": "Standaardlimiet voor het aantal frames dat een stilstaand object wordt gevolgd voordat wordt gestopt." }, "objects": { - "label": "Object‑maximum aantal frames", - "description": "Per‑object overschrijden voor het maximum aantal frames voor tracking van stationaire objecten." + "label": "Maximaal aantal frames per object", + "description": "Maximum aantal frames per object bij het volgen van stilstaande objecten." } + }, + "classifier": { + "label": "Visuele classifier inschakelen", + "description": "Gebruik een visuele classifier om echt stilstaande objecten te detecteren, zelfs wanneer detectiekaders licht verschuiven." } + }, + "annotation_offset": { + "label": "Annotatie-offset", + "description": "Milliseconden om detectieannotaties te verschuiven voor betere uitlijning van tijdlijn-detectiekaders met opnames; kan positief of negatief zijn." } }, "profiles": { @@ -148,5 +160,663 @@ "label": "Minimale oppervlakte van het object" } } + }, + "mqtt": { + "label": "MQTT" + }, + "notifications": { + "label": "Meldingen", + "enabled": { + "label": "Meldingen inschakelen" + }, + "email": { + "label": "Melding email", + "description": "E-mailadres voor pushmeldingen of vereist door bepaalde meldingsproviders." + }, + "cooldown": { + "label": "Wachttijd", + "description": "Wachttijd (seconden) tussen meldingen om spammen te voorkomen." + }, + "enabled_in_config": { + "label": "Originele meldingsstatus", + "description": "Geeft aan of meldingen waren ingeschakeld in de originele statische configuratie." + } + }, + "ffmpeg": { + "label": "FFmpeg", + "description": "FFmpeg-instellingen inclusief binaire pad, argumenten, hardwareversnellingsopties en uitvoerargumenten per rol.", + "path": { + "label": "FFmpeg-pad", + "description": "Pad naar het te gebruiken FFmpeg-binaire bestand of een versie-alias (\"5.0\" of \"7.0\")." + }, + "global_args": { + "label": "FFmpeg globale argumenten", + "description": "Globale argumenten voor FFmpeg-processen." + }, + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten", + "description": "Hardwareversnellingsargumenten voor FFmpeg. Provider-specifieke presets worden aanbevolen." + }, + "input_args": { + "label": "Invoerargumenten", + "description": "Invoerargumenten voor FFmpeg-invoerstromen." + }, + "output_args": { + "label": "Uitvoerargumenten", + "description": "Standaard uitvoerargumenten voor verschillende FFmpeg-rollen zoals detectie en opname.", + "detect": { + "label": "Uitvoerargumenten voor detectie", + "description": "Standaard uitvoerargumenten voor streams met detectierol." + }, + "record": { + "label": "Uitvoerargumenten voor opname", + "description": "Standaard uitvoerargumenten voor streams met opnamerol." + } + }, + "retry_interval": { + "label": "FFmpeg-herverbindingstijd", + "description": "Seconden wachten voor een herverbindingspoging na een mislukte camerastream. Standaard is 10." + }, + "apple_compatibility": { + "label": "Apple-compatibiliteit", + "description": "HEVC-tagging inschakelen voor betere Apple-spelercompatibiliteit bij het opnemen van H.265." + }, + "gpu": { + "label": "GPU-index", + "description": "Standaard GPU-index voor hardwareversnelling indien beschikbaar." + }, + "inputs": { + "label": "Camera-invoer", + "description": "Lijst van invoerstream-definities (paden en rollen) voor deze camera.", + "path": { + "label": "Invoerpad", + "description": "URL of pad van de camera-invoerstroom." + }, + "roles": { + "label": "Invoerrollen", + "description": "Rollen voor deze invoerstroom." + }, + "global_args": { + "label": "FFmpeg globale argumenten", + "description": "FFmpeg globale argumenten voor deze invoerstroom." + }, + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten", + "description": "Hardwareversnellingsargumenten voor deze invoerstroom." + }, + "input_args": { + "label": "Invoerargumenten", + "description": "Invoerargumenten specifiek voor deze stream." + } + } + }, + "live": { + "label": "Live weergave", + "streams": { + "label": "Live streamnamen", + "description": "Koppeling van geconfigureerde streamnamen aan restream/go2rtc-namen voor live weergave." + }, + "height": { + "label": "Live hoogte", + "description": "Hoogte (pixels) voor weergave van de jsmpeg-livestream in de webinterface; moet ≤ hoogte van de detectiestream zijn." + }, + "quality": { + "label": "Live kwaliteit", + "description": "Coderingskwaliteit voor de jsmpeg-stream (1 hoogste, 31 laagste)." + } + }, + "motion": { + "label": "Bewegingsdetectie", + "enabled": { + "label": "Bewegingsdetectie inschakelen" + }, + "threshold": { + "label": "Bewegingsdrempel", + "description": "Pixelverschildrempel voor de bewegingsdetector; hogere waarden verminderen de gevoeligheid (bereik 1-255)." + }, + "lightning_threshold": { + "label": "Bliksemdrempel", + "description": "Drempel om korte lichtflitsen te detecteren en te negeren (lager is gevoeliger, waarden tussen 0,3 en 1,0). Dit voorkomt bewegingsdetectie niet volledig; het zorgt er alleen voor dat de detector stopt met het analyseren van extra frames zodra de drempel wordt overschreden. Op beweging gebaseerde opnames worden tijdens deze gebeurtenissen nog steeds aangemaakt." + }, + "skip_motion_threshold": { + "label": "Drempel voor overgeslagen beweging", + "description": "Als ingesteld op een waarde tussen 0,0 en 1,0, en meer dan dit deel van het beeld verandert in één frame, geeft de detector geen bewegingsvakken terug en kalibreert hij direct opnieuw. Dit bespaart CPU en vermindert vals-positieven bij bliksem, stormen e.d., maar kan echte gebeurtenissen zoals PTZ-tracking missen. De afweging is tussen het weggooien van enkele megabytes opnames versus het bekijken van een paar korte clips. Leeg laten (None) om deze functie uit te schakelen." + }, + "improve_contrast": { + "label": "Contrast verbeteren", + "description": "Contrastverbetering op frames toepassen vóór bewegingsanalyse om detectie te verbeteren." + }, + "contour_area": { + "label": "Contouroppervlakte", + "description": "Minimale contouroppervlakte in pixels voor een bewegingscontour om te worden geteld." + }, + "delta_alpha": { + "label": "Delta-alfa", + "description": "Alpha-mengfactor voor frameverschil bij bewegingsberekening." + }, + "frame_alpha": { + "label": "Frame-alfa", + "description": "Alpha-waarde voor het mengen van frames bij bewegingsvoorverwerking." + }, + "frame_height": { + "label": "Framehoogte", + "description": "Hoogte in pixels waarnaar frames worden geschaald bij het berekenen van beweging." + }, + "mask": { + "label": "Maskercoördinaten", + "description": "Geordende x,y-coördinaten die het bewegingsmaskeerpolygoon definiëren voor het in- of uitsluiten van gebieden." + }, + "mqtt_off_delay": { + "label": "MQTT uit-vertraging", + "description": "Seconden wachten na de laatste beweging vóór publicatie van een MQTT 'off'-status." + }, + "enabled_in_config": { + "label": "Originele bewegingsstatus", + "description": "Geeft aan of bewegingsdetectie was ingeschakeld in de originele statische configuratie." + }, + "raw_mask": { + "label": "Onbewerkt masker" + } + }, + "objects": { + "label": "Objecten", + "description": "Standaardinstellingen voor objectvolging, inclusief te volgen labels en per-object filters.", + "track": { + "label": "Te volgen objecten" + }, + "filters": { + "label": "Objectfilters", + "description": "Filters op gedetecteerde objecten om vals-positieven te verminderen (oppervlakte, verhouding, betrouwbaarheid).", + "min_area": { + "label": "Minimale objectoppervlakte", + "description": "Minimale detectiekaderoppervlakte (pixels of percentage) voor dit objecttype. Kan pixels (int) of percentage (float tussen 0,000001 en 0,99) zijn." + }, + "max_area": { + "label": "Maximale objectoppervlakte", + "description": "Maximale detectiekaderoppervlakte (pixels of percentage) voor dit objecttype. Kan pixels (int) of percentage (float tussen 0,000001 en 0,99) zijn." + }, + "min_ratio": { + "label": "Minimale beeldverhouding", + "description": "Minimale breedte/hoogte-verhouding voor het detectiekader om te kwalificeren." + }, + "max_ratio": { + "label": "Maximale beeldverhouding", + "description": "Maximale breedte/hoogte-verhouding voor het detectiekader om te kwalificeren." + }, + "threshold": { + "label": "Betrouwbaarheidsdrempel", + "description": "Gemiddelde detectiebetrouwbaarheidsdrempel om een object als terecht positief te beschouwen." + }, + "min_score": { + "label": "Minimale betrouwbaarheid", + "description": "Minimale detectiebetrouwbaarheid in één frame om het object te tellen." + }, + "mask": { + "label": "Filtermasker", + "description": "Polygooncoördinaten die aangeven waar dit filter van toepassing is in het frame." + }, + "raw_mask": { + "label": "Onbewerkt masker" + } + }, + "mask": { + "label": "Objectmasker", + "description": "Maskeerpolygoon om objectdetectie in bepaalde gebieden te voorkomen." + }, + "raw_mask": { + "label": "Onbewerkt masker" + }, + "genai": { + "label": "GenAI-objectconfiguratie", + "description": "GenAI-opties voor het beschrijven van gevolgde objecten en het versturen van frames voor generatie.", + "enabled": { + "label": "GenAI inschakelen", + "description": "GenAI-beschrijvingen voor gevolgde objecten standaard inschakelen." + }, + "use_snapshot": { + "label": "Snapshots gebruiken", + "description": "Objectsnapshots gebruiken in plaats van miniaturen voor GenAI-beschrijving." + }, + "prompt": { + "label": "Bijschriftprompt", + "description": "Standaard promptsjabloon voor het genereren van beschrijvingen met GenAI." + }, + "object_prompts": { + "label": "Objectprompts", + "description": "Prompts per object voor het aanpassen van GenAI-uitvoer voor specifieke labels." + }, + "objects": { + "label": "GenAI-objecten", + "description": "Lijst van objectlabels die standaard naar GenAI worden gestuurd." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die objecten moeten betreden om in aanmerking te komen voor GenAI-beschrijving." + }, + "debug_save_thumbnails": { + "label": "Snapshots opslaan", + "description": "Snapshots die naar GenAI worden gestuurd opslaan voor foutopsporing." + }, + "send_triggers": { + "label": "GenAI-triggers", + "description": "Bepaalt wanneer frames naar GenAI worden gestuurd (bij einde, na updates, enz.).", + "tracked_object_end": { + "label": "Sturen bij beëindiging", + "description": "Een verzoek naar GenAI sturen wanneer het gevolgde object eindigt." + }, + "after_significant_updates": { + "label": "Vroege GenAI-trigger", + "description": "Een verzoek naar GenAI sturen na een bepaald aantal significante updates voor het gevolgde object." + } + }, + "enabled_in_config": { + "label": "Originele GenAI-status", + "description": "Geeft aan of GenAI was ingeschakeld in de originele statische configuratie." + } + } + }, + "record": { + "label": "Opname", + "enabled": { + "label": "Opname inschakelen" + }, + "expire_interval": { + "label": "Opruiminterval opnames", + "description": "Minuten tussen opruimrondes die verlopen opnamesegmenten verwijderen." + }, + "continuous": { + "label": "Continue bewaring", + "description": "Aantal dagen om opnames te bewaren ongeacht gevolgde objecten of beweging. Stel 0 in om alleen opnames van meldingen en detecties te bewaren.", + "days": { + "label": "Bewaardagen", + "description": "Dagen om opnames te bewaren." + } + }, + "motion": { + "label": "Bewegingsretentie", + "description": "Aantal dagen om opnames veroorzaakt door beweging te bewaren, ongeacht gevolgde objecten. Stel 0 in om alleen opnames van meldingen en detecties te bewaren.", + "days": { + "label": "Bewaardagen", + "description": "Dagen om opnames te bewaren." + } + }, + "detections": { + "label": "Detectieretentie", + "description": "Opname-retentie-instellingen voor detectiegebeurtenissen inclusief pre/post-captureduur.", + "pre_capture": { + "label": "Seconden vóór opname", + "description": "Aantal seconden vóór de detectiegebeurtenis om op te nemen in de opname." + }, + "post_capture": { + "label": "Seconden na opname", + "description": "Aantal seconden na de detectiegebeurtenis om op te nemen in de opname." + }, + "retain": { + "label": "Gebeurtenisbewaring", + "description": "Bewaarinstellingen voor opnames van detectiegebeurtenissen.", + "days": { + "label": "Bewaardagen", + "description": "Aantal dagen om opnames van detectiegebeurtenissen te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + } + } + }, + "alerts": { + "label": "Meldingsbewaring", + "description": "Opname-retentie-instellingen voor alertgebeurtenissen inclusief pre/post-captureduur.", + "pre_capture": { + "label": "Seconden vóór opname", + "description": "Aantal seconden vóór de detectiegebeurtenis om op te nemen in de opname." + }, + "post_capture": { + "label": "Seconden na opname", + "description": "Aantal seconden na de detectiegebeurtenis om op te nemen in de opname." + }, + "retain": { + "label": "Gebeurtenisbewaring", + "description": "Bewaarinstellingen voor opnames van detectiegebeurtenissen.", + "days": { + "label": "Bewaardagen", + "description": "Aantal dagen om opnames van detectiegebeurtenissen te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + } + } + }, + "export": { + "label": "Exportconfiguratie", + "description": "Instellingen voor het exporteren van opnames, zoals timelapse en hardwareversnelling.", + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten voor export", + "description": "Hardwareversnellingsargumenten voor export/transcodering." + }, + "max_concurrent": { + "label": "Maximaal aantal gelijktijdige exports", + "description": "Maximum aantal exporttaken dat tegelijk wordt verwerkt." + } + }, + "preview": { + "label": "Voorbeeldconfiguratie", + "description": "Instellingen voor de kwaliteit van opnamevoorbeelden in de UI.", + "quality": { + "label": "Voorbeeldkwaliteit", + "description": "Kwaliteitsniveau voor voorbeelden (very_low, low, medium, high, very_high)." + } + }, + "enabled_in_config": { + "label": "Originele opnamestatus", + "description": "Geeft aan of opname was ingeschakeld in de originele statische configuratie." + } + }, + "review": { + "label": "Beoordeling", + "alerts": { + "label": "Meldingsconfiguratie", + "description": "Instellingen voor welke gevolgde objecten alerts genereren en hoe alerts worden bewaard.", + "enabled": { + "label": "Alerts inschakelen" + }, + "labels": { + "label": "Meldingslabels", + "description": "Lijst met objectlabels die kwalificeren als meldingen (bijv. auto, persoon)." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden om als melding te worden beschouwd; leeg laten voor elke zone." + }, + "enabled_in_config": { + "label": "Originele meldingsstatus", + "description": "Geeft aan of meldingen oorspronkelijk waren ingeschakeld in de statische configuratie." + }, + "cutoff_time": { + "label": "Afsluitingstijd meldingen", + "description": "Seconden wachten na het uitblijven van melding veroorzakende activiteit voordat een melding wordt afgesloten." + } + }, + "detections": { + "label": "Detectieconfiguratie", + "description": "Instellingen voor welke gevolgde objecten detecties genereren en hoe detecties worden bewaard.", + "enabled": { + "label": "Detecties inschakelen" + }, + "labels": { + "label": "Detectielabels", + "description": "Lijst met objectlabels die kwalificeren als detectiegebeurtenissen." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden om als detectie te worden beschouwd; leeg laten voor elke zone." + }, + "cutoff_time": { + "label": "Afsluitingstijd detecties", + "description": "Seconden wachten na het uitblijven van detectie veroorzakende activiteit voordat een detectie wordt afgesloten." + }, + "enabled_in_config": { + "label": "Originele detectiestatus", + "description": "Geeft aan of detecties oorspronkelijk waren ingeschakeld in de statische configuratie." + } + }, + "genai": { + "label": "GenAI-configuratie", + "description": "Beheert het gebruik van generatieve AI voor het produceren van beschrijvingen en samenvattingen van beoordelingsitems.", + "enabled": { + "label": "GenAI-beschrijvingen inschakelen", + "description": "Door GenAI gegenereerde beschrijvingen en samenvattingen voor beoordelingsitems in- of uitschakelen." + }, + "alerts": { + "label": "GenAI inschakelen voor meldingen", + "description": "GenAI gebruiken voor het genereren van beschrijvingen bij meldingsitems." + }, + "detections": { + "label": "GenAI inschakelen voor detecties", + "description": "GenAI gebruiken voor het genereren van beschrijvingen bij detectiebeoordelingen." + }, + "image_source": { + "label": "Afbeeldingsbron voor beoordeling", + "description": "Bron van afbeeldingen naar GenAI ('preview' of 'recordings'); 'recordings' gebruikt hogere kwaliteit maar meer tokens." + }, + "additional_concerns": { + "label": "Aanvullende aandachtspunten", + "description": "Een lijst met aanvullende aandachtspunten die GenAI moet meenemen bij het beoordelen van activiteit op deze camera." + }, + "debug_save_thumbnails": { + "label": "Snapshots opslaan", + "description": "Snapshots die naar de GenAI-provider worden gestuurd opslaan voor foutopsporing." + }, + "enabled_in_config": { + "label": "Originele GenAI-status", + "description": "Geeft aan of GenAI-beoordeling oorspronkelijk was ingeschakeld in de statische configuratie." + }, + "preferred_language": { + "label": "Voorkeurstaal", + "description": "Voorkeurstaal voor gegenereerde antwoorden van de GenAI-provider." + }, + "activity_context_prompt": { + "label": "Activiteitscontextprompt", + "description": "Aangepaste prompt die beschrijft wat wel en niet verdachte activiteit is, als context voor GenAI-samenvattingen." + } + } + }, + "snapshots": { + "label": "Snapshots", + "enabled": { + "label": "Snapshots inschakelen" + }, + "timestamp": { + "label": "Tijdstempel-overlay", + "description": "Een tijdstempel op API-snapshots weergeven." + }, + "bounding_box": { + "label": "Detectiekader-overlay", + "description": "Detectiekaders voor gevolgde objecten tekenen op API-snapshots." + }, + "crop": { + "label": "Snapshot bijsnijden", + "description": "API-snapshots bijsnijden tot het detectiekader van het gedetecteerde object." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden voordat een snapshot wordt opgeslagen." + }, + "height": { + "label": "Snapshothoogte", + "description": "Hoogte (pixels) om API-snapshots naar te schalen; leeg laten om de originele grootte te behouden." + }, + "retain": { + "label": "Snapshot-bewaring", + "description": "Bewaarinstellingen voor snapshots inclusief standaarddagen en per-object overschrijvingen.", + "default": { + "label": "Standaard retentie", + "description": "Standaard aantal dagen om snapshots te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + }, + "objects": { + "label": "Objectbewaring", + "description": "Objectspecifieke overschrijvingen voor het aantal bewaardagen van snapshots." + } + }, + "quality": { + "label": "Snapshotkwaliteit", + "description": "Coderingskwaliteit voor opgeslagen snapshots (0-100)." + } + }, + "timestamp_style": { + "label": "Tijdstempelstijl", + "position": { + "label": "Tijdstempelpositie", + "description": "Positie van de tijdstempel op de afbeelding (tl/tr/bl/br)." + }, + "format": { + "label": "Tijdstempelformaat", + "description": "Datumtijdformaatstring voor tijdstempels (Python datetime-formaatcodes)." + }, + "color": { + "label": "Tijdstempelkleur", + "description": "RGB-kleurwaarden voor de tijdstempeltekst (alle waarden 0-255).", + "red": { + "label": "Rood", + "description": "Roodcomponent (0-255) voor de tijdstempelkleur." + }, + "green": { + "label": "Groen", + "description": "Groencomponent (0-255) voor de tijdstempelkleur." + }, + "blue": { + "label": "Blauw", + "description": "Blauwcomponent (0-255) voor de tijdstempelkleur." + } + }, + "thickness": { + "label": "Tijdstempeldikte", + "description": "Lijndikte van de tijdstempeltekst." + }, + "effect": { + "label": "Tijdstempeleffect", + "description": "Visueel effect voor de tijdstempeltekst (geen, effen, schaduw)." + } + }, + "semantic_search": { + "label": "Semantisch zoeken", + "triggers": { + "label": "Triggers", + "description": "Acties en matchcriteria voor cameraspecifieke semantisch-zoeken-triggers.", + "friendly_name": { + "label": "Weergavenaam", + "description": "Optionele weergavenaam voor deze trigger in de UI." + }, + "enabled": { + "label": "Trigger inschakelen", + "description": "Deze semantisch-zoeken-trigger in- of uitschakelen." + }, + "type": { + "label": "Triggertype", + "description": "Type trigger: 'thumbnail' (vergelijk met afbeelding) of 'description' (vergelijk met tekst)." + }, + "data": { + "label": "Triggerinhoud", + "description": "Tekstzin of miniatuur-ID om te vergelijken met gevolgde objecten." + }, + "threshold": { + "label": "Triggerdrempel", + "description": "Minimale gelijkenisscore (0-1) om deze trigger te activeren." + }, + "actions": { + "label": "Triggeracties", + "description": "Lijst van uit te voeren acties bij triggermatch (melding, sub_label, attribuut)." + } + } + }, + "face_recognition": { + "label": "Gezichtsherkenning", + "enabled": { + "label": "Gezichtsherkenning inschakelen" + }, + "min_area": { + "label": "Minimale gezichtsoppervlakte", + "description": "Minimale oppervlakte (pixels) van een gedetecteerd gezichtskader om herkenning te proberen." + } + }, + "lpr": { + "label": "Kentekenherkenning", + "description": "Instellingen voor kentekenherkenning inclusief detectiedrempels, opmaak en bekende kentekens.", + "enabled": { + "label": "LPR inschakelen" + }, + "min_area": { + "label": "Minimale kentekenoppervlakte", + "description": "Minimale kentekenoppervlakte (pixels) om herkenning te proberen." + }, + "enhancement": { + "label": "Verbeteringsniveau", + "description": "Verbeteringsniveau (0-10) voor kentekenuitsneden vóór OCR; hogere waarden verbeteren niet altijd het resultaat; niveaus boven 5 werken mogelijk alleen voor nachtelijke kentekens en moeten voorzichtig worden gebruikt." + }, + "expire_time": { + "label": "Vervaltijd in seconden", + "description": "Tijd in seconden waarna een niet-gezien kenteken vervalt uit de tracker (alleen voor dedicated LPR-camera's)." + } + }, + "onvif": { + "label": "ONVIF", + "description": "ONVIF-verbindings- en PTZ-autovolgingsinstellingen voor deze camera.", + "host": { + "label": "ONVIF-host", + "description": "Host (en optioneel schema) voor de ONVIF-dienst van deze camera." + }, + "port": { + "label": "ONVIF-poort", + "description": "Poortnummer voor de ONVIF-dienst." + }, + "user": { + "label": "ONVIF-gebruikersnaam", + "description": "Gebruikersnaam voor ONVIF-authenticatie; sommige apparaten vereisen de admin-gebruiker voor ONVIF." + }, + "password": { + "label": "ONVIF-wachtwoord", + "description": "Wachtwoord voor ONVIF-authenticatie." + }, + "tls_insecure": { + "label": "TLS-verificatie uitschakelen", + "description": "TLS-verificatie overslaan en digest-authenticatie uitschakelen voor ONVIF (onveilig; alleen in veilige netwerken)." + }, + "profile": { + "label": "ONVIF-profiel", + "description": "Specifiek ONVIF-mediaprofiel voor PTZ-besturing, gekoppeld via token of naam. Indien niet ingesteld, wordt het eerste profiel met geldige PTZ-configuratie automatisch geselecteerd." + }, + "autotracking": { + "label": "Automatisch volgen", + "description": "Bewegende objecten automatisch volgen en gecentreerd houden in het beeld via PTZ-camerabewegingen.", + "enabled": { + "label": "Automatisch volgen inschakelen", + "description": "Automatisch PTZ-camera volgen van gedetecteerde objecten in- of uitschakelen." + }, + "calibrate_on_startup": { + "label": "Kalibreren bij opstarten", + "description": "PTZ-motorsnelheden meten bij opstarten voor nauwkeurigere volging. Frigate werkt de configuratie bij met movement_weights na kalibratie." + }, + "zooming": { + "label": "Zoommodus", + "description": "Zoomgedrag instellen: disabled (alleen pan/tilt), absolute (meest compatibel) of relative (gelijktijdig pan/tilt/zoom)." + }, + "zoom_factor": { + "label": "Zoomfactor", + "description": "Zoomniveau voor gevolgde objecten instellen. Lagere waarden tonen meer van de scène; hogere waarden zoomen verder in maar kunnen de volging verliezen. Waarden tussen 0,1 en 0,75." + }, + "track": { + "label": "Gevolgde objecten", + "description": "Lijst van objecttypen die automatisch volgen activeren." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Objecten moeten een van deze zones betreden voordat automatisch volgen begint." + }, + "return_preset": { + "label": "Terugkeer-voorinstelling", + "description": "ONVIF-voorkeuzeinstelling in de camerafirmware om naar terug te keren na het volgen." + }, + "timeout": { + "label": "Terugkeertimeout", + "description": "Dit aantal seconden wachten na het verliezen van de volging voordat de camera naar de voorkeuze-positie terugkeert." + }, + "movement_weights": { + "label": "Bewegingsgewichten", + "description": "Kalibratiewaarden automatisch gegenereerd door camerakalbratie. Niet handmatig aanpassen." + }, + "enabled_in_config": { + "label": "Originele autovolgstatus", + "description": "Intern veld om bij te houden of automatisch volgen was ingeschakeld in de configuratie." + } + }, + "ignore_time_mismatch": { + "label": "Tijdsverschil negeren", + "description": "Tijdsynchronisatieverschillen tussen camera en Frigate-server negeren voor ONVIF-communicatie." + } } } diff --git a/web/public/locales/nl/config/global.json b/web/public/locales/nl/config/global.json index adc9aa42d9..8943539c8a 100644 --- a/web/public/locales/nl/config/global.json +++ b/web/public/locales/nl/config/global.json @@ -1,24 +1,29 @@ { "audio": { - "label": "Audiogebeurtenissen", + "label": "Geluiddetectie", "enabled": { - "label": "Geluiddetectie inschakelen" + "label": "Geluiddetectie inschakelen", + "description": "Audioeventdetectie voor alle camera's in- of uitschakelen; kan per camera worden overschreven." }, "max_not_heard": { "label": "Einde timeout", - "description": "Hoeveelheid secondes zonder de geconfigureerde audio soort, voordat de geluids gebeurtenis is beindigd." + "description": "Aantal seconden zonder het geconfigureerde audiotype, voordat de geluidsgebeurtenis is beëindigd." }, "min_volume": { - "label": "Minimale volume", - "description": "Minimale RMS-volumedrempel die nodig is om audiodetectie te starten; Hoe lager de waarde, hoe gevoeliger de detectie (bijvoorbeeld, 200 hoog, 500 gemiddeld, 1000 laag)." + "label": "Minimumvolume", + "description": "Minimale RMS-volumedrempel die nodig is om audiodetectie te starten; hoe lager de waarde, hoe gevoeliger de detectie (bijvoorbeeld, 200 hoog, 500 gemiddeld, 1000 laag)." }, "listen": { "label": "Luistercategorieën", "description": "Lijst van luistercategorie gebeurtenissen voor detectie (zoals: blaffen, band_alarm, schreeuw, praten, roepen)." }, "filters": { - "label": "Geluids filters", - "description": "Instellingen per audiotype, waaronder betrouwbaarheidsdrempels, ter vermindering van foutieve detecties." + "label": "Geluidsfilters", + "description": "Instellingen per audiotype, waaronder betrouwbaarheidsdrempels, ter vermindering van foutieve detecties.", + "threshold": { + "label": "Minimale audiobetrouwbaarheid", + "description": "Minimale betrouwbaarheidsdrempel voor de audiogebeurtenis om te worden geteld." + } }, "enabled_in_config": { "label": "Originele audio-instelling", @@ -27,44 +32,98 @@ "num_threads": { "label": "Detectiethreads", "description": "Aantal threads voor audiodetectieverwerking." - } + }, + "description": "Instellingen voor audiogebaseerde gebeurtenisdetectie voor alle camera's; kan per camera worden overschreven." }, "audio_transcription": { - "label": "Audio‑transcriptie", + "label": "Audiotranscriptie", "description": "Instellingen voor live en spraakgestuurde audiotranscriptie voor gebeurtenissen en live ondertitels.", "live_enabled": { "label": "Live transcriptie", "description": "Live streaming‑transcriptie van audio inschakelen tijdens ontvangst." + }, + "enabled": { + "label": "Audiotranscriptie inschakelen", + "description": "Automatische audiotranscriptie voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "language": { + "label": "Transcriptietaal", + "description": "Taalcode voor transcriptie/vertaling (bijv. 'nl' voor Nederlands). Zie https://whisper-api.com/docs/languages/ voor ondersteunde taalcodes." + }, + "device": { + "label": "Transcriptieapparaat", + "description": "Apparaat (CPU/GPU) voor het uitvoeren van het transcriptiemodel. Momenteel worden alleen NVIDIA CUDA GPU's ondersteund voor transcriptie." + }, + "model_size": { + "label": "Modelgrootte", + "description": "Modelgrootte voor offline audiotranscriptie." } }, "birdseye": { - "label": "Overzichtsweergave", + "label": "Birdseye-overzicht", "description": "Instellingen voor de overzichtsweergave die meerdere camerafeeds combineert tot één lay‑out.", "enabled": { - "label": "Activeer overzichtsweergave", + "label": "Birdseye-overzicht inschakelen", "description": "De overzichtsweergavefunctie in- of uitschakelen." }, "mode": { - "label": "Volgmodus", + "label": "Weergavemodus", "description": "Modus voor het opnemen van camera’s in overzichtsweergave: ‘objecten’, ‘beweging’ of ‘continu’." }, "order": { "label": "Positie", "description": "Numerieke positie die de volgorde van de camera in de overzichtsweergave lay-out bepaalt." + }, + "restream": { + "label": "RTSP-herstreaming", + "description": "De Birdseye-uitvoer herstreamen als RTSP-feed; hierdoor blijft Birdseye continu actief." + }, + "width": { + "label": "Breedte", + "description": "Uitvoerbreedte (pixels) van het samengestelde Birdseye-frame." + }, + "height": { + "label": "Hoogte", + "description": "Uitvoerhoogte (pixels) van het samengestelde Birdseye-frame." + }, + "quality": { + "label": "Coderingskwaliteit", + "description": "Coderingskwaliteit van de Birdseye MPEG-1-feed (1 = hoogste kwaliteit, 31 = laagste)." + }, + "inactivity_threshold": { + "label": "Inactiviteitsdrempel", + "description": "Seconden inactiviteit waarna een camera niet meer in Birdseye wordt getoond." + }, + "layout": { + "label": "Lay-out", + "description": "Lay-outopties voor de Birdseye-samenstelling.", + "scaling_factor": { + "label": "Schaalfactor", + "description": "Schaalfactor voor de lay-outcalculator (bereik 1,0 tot 5,0)." + }, + "max_cameras": { + "label": "Maximum camera's", + "description": "Maximaal aantal camera's dat tegelijk in Birdseye wordt weergegeven; toont de meest recente camera's." + } + }, + "idle_heartbeat_fps": { + "label": "Inactief heartbeat-FPS", + "description": "Frames per seconde voor het opnieuw verzenden van het laatste Birdseye-frame tijdens inactiviteit; stel 0 in om uit te schakelen." } }, "detect": { - "label": "Detectie object", + "label": "Objectdetectie", "description": "Instellingen voor de detectierol om objecten te detecteren en trackers te starten.", "enabled": { - "label": "Detectie aan" + "label": "Detectie inschakelen", + "description": "Objectdetectie voor alle camera's in- of uitschakelen; kan per camera worden overschreven." }, "height": { - "label": "Detectie hoogte", + "label": "Detectiehoogte", "description": "De hoogte in pixels van frames voor de detectiestream. Laat dit veld leeg om de standaardresolutie te gebruiken." }, "width": { - "label": "Detectie breedte", + "label": "Detectiebreedte", "description": "De breedte in pixels van frames voor de detectiestream. Laat dit veld leeg om de standaardresolutie te gebruiken." }, "fps": { @@ -98,72 +157,1444 @@ "description": "Standaardlimiet voor het aantal frames dat een stilstaand object wordt gevolgd voordat wordt gestopt." }, "objects": { - "label": "Object‑maximum aantal frames", - "description": "Per‑object overschrijden voor het maximum aantal frames voor tracking van stationaire objecten." + "label": "Maximaal aantal frames per object", + "description": "Maximum aantal frames per object bij het volgen van stilstaande objecten." } + }, + "classifier": { + "label": "Visuele classifier inschakelen", + "description": "Gebruik een visuele classifier om echt stilstaande objecten te detecteren, zelfs wanneer detectiekaders licht verschuiven." } + }, + "annotation_offset": { + "label": "Annotatie-offset", + "description": "Milliseconden om detectieannotaties te verschuiven voor betere uitlijning van tijdlijn-detectiekaders met opnames; kan positief of negatief zijn." } }, "version": { "description": "Numerieke of string-versie van de actieve configuratie om migraties of formaatwijzigingen te helpen detecteren.", - "label": "Huidige configuratie versie" + "label": "Huidige config-versie" }, "safe_mode": { "label": "Veilige modus", - "description": "Wanneer ingeschakeld, start Frigate in veilige modus met verminderde functionaliteit voor probleemoplossing." + "description": "Wanneer ingeschakeld, start Frigate op in veilige modus met beperkte functies voor probleemoplossing." }, "environment_vars": { "label": "Omgevingsvariabelen", - "description": "Sleutel/waarde paren van omgevingsvariabelen voor het Frigate proces in Home Assistant OS. Niet-HAOS gebruikers moeten in plaats hiervan Docker omgevingsvariabelen gebruiken." + "description": "Sleutel/waarde-paren van omgevingsvariabelen die ingesteld worden voor het Frigate-proces in Home Assistant OS. Gebruikers zonder HAOS moeten in plaats daarvan de Docker-omgevingsvariabelenconfiguratie gebruiken." }, "auth": { "label": "Authenticatie", "enabled": { - "label": "Authenticatie aanzetten", + "label": "Authenticatie inschakelen", "description": "Schakel native authenticatie in voor de Frigate UI." }, "reset_admin_password": { - "label": "Reset admin wachtwoord", - "description": "Indien waar, reset het admin gebruiker wachtwoord tijdens opstarten en print het nieuwe wachtwoord in het logboek." + "label": "Adminwachtwoord resetten", + "description": "Indien waar, reset het wachtwoord van de admingebruiker tijdens opstarten en print het nieuwe wachtwoord in het logboek." }, - "description": "Authenticatie en sessie-gerelateerde instellingen inclusief cookie en tempo limiet opties.", + "description": "Authenticatie- en sessie-instellingen inclusief cookie- en snelheidsbeperkingsopties.", "cookie_name": { - "label": "JWT cookie naam", + "label": "JWT-cookienaam", "description": "Naam van de gebruikte cookie om de JWT token voor native authenticatie op te slaan." }, "cookie_secure": { - "label": "Veilige cookie instelling", + "label": "Secure-cookievlag", "description": "Stel de veilige instelling in op de auth cookie; moet waar zijn indien TLS in gebruik." }, "session_length": { - "label": "Sessie duratie", - "description": "Sessie duratie in seconden voor JWT-gebaseerde sessies." + "label": "Sessieduur", + "description": "Sessieduur in seconden voor JWT-gebaseerde sessies." }, "refresh_time": { - "label": "Sessie ververs scherm", - "description": "Als een sessie binnen dit aantal seconden verloopt, ververs het tot volledige duratie." + "label": "Sessie-verversperiode", + "description": "Als een sessie binnen dit aantal seconden verloopt, wordt de sessie verlengd tot de volledige duur." }, "failed_login_rate_limit": { - "label": "Gefaalde log-in pogingen", - "description": "Tempo-limiet regels voor gefaalde inlogpogingen om brute-force aanvallen te beperken." + "label": "Limieten voor mislukte inlogpogingen", + "description": "Rate-limitregels voor mislukte inlogpogingen om brute-forceaanvallen te beperken." }, "trusted_proxies": { - "label": "Vertrouwde proxies" + "label": "Vertrouwde proxies", + "description": "Lijst met vertrouwde proxy-IP's die worden gebruikt bij het bepalen van het client-IP voor rate limiting." + }, + "hash_iterations": { + "label": "Hash-iteraties", + "description": "Aantal PBKDF2-SHA256-iteraties voor het hashen van gebruikerswachtwoorden." + }, + "roles": { + "label": "Roltoewijzingen", + "description": "Koppel rollen aan cameralijsten. Een lege lijst geeft de rol toegang tot alle camera's." + }, + "admin_first_time_login": { + "label": "Eerste keer admin-vlag", + "description": "Wanneer ingeschakeld kan de UI een helplink tonen op de inlogpagina om gebruikers te informeren hoe ze kunnen inloggen na een admin-wachtwoordreset. " } }, "logger": { "default": { "label": "Loggingsniveau", - "description": "Standaard globale logboek detailniveau (debug, info, waarschuwing, fout)." + "description": "Standaard globale logdetailniveau (debug, info, warning, error)." }, "label": "Logging", "logs": { - "label": "Per-proces logboek niveau", - "description": "Per-component logboekniveau afwijkingen om detailniveau te vergroten of verkleinen per specifieke module." + "label": "Logboekniveau per proces", + "description": "Logboekniveau-afwijkingen per component om het detailniveau per specifieke module te verhogen of verlagen." }, - "description": "Beheert het standaard logboek detailniveau en afwijkende instellingen per logboek." + "description": "Beheert het standaard logdetailniveau en afwijkende instellingen per logboek." }, "profiles": { - "label": "Profielen" + "label": "Profielen", + "description": "Benoemde profieldefinities met weergavenamen. Cameraprofielen moeten verwijzen naar hier gedefinieerde namen.", + "friendly_name": { + "label": "Weergavenaam", + "description": "Weergavenaam voor dit profiel in de UI." + } + }, + "database": { + "label": "Database", + "description": "Instellingen voor de SQLite-database die Frigate gebruikt om gevolgde objecten en opname-metadata op te slaan.", + "path": { + "label": "Databasepad", + "description": "Bestandssysteempad waar het Frigate SQLite-databasebestand wordt opgeslagen." + } + }, + "go2rtc": { + "label": "go2rtc", + "description": "Instellingen voor de geïntegreerde go2rtc-restreaming-service voor het doorzenden en omzetten van live streams." + }, + "mqtt": { + "label": "MQTT", + "description": "Instellingen voor het verbinden met en publiceren van telemetrie, snapshots en gebeurtenisdetails naar een MQTT-broker.", + "enabled": { + "label": "MQTT inschakelen", + "description": "MQTT-integratie voor status, gebeurtenissen en snapshots in- of uitschakelen." + }, + "host": { + "label": "MQTT-host", + "description": "Hostnaam of IP-adres van de MQTT-broker." + }, + "port": { + "label": "MQTT-poort", + "description": "Poort van de MQTT-broker (gewoonlijk 1883 voor gewoon MQTT)." + }, + "topic_prefix": { + "label": "Topic-prefix", + "description": "MQTT-topic-prefix voor alle Frigate-topics; moet uniek zijn bij meerdere instanties." + }, + "client_id": { + "label": "Client-ID", + "description": "Client-ID voor verbinding met de MQTT-broker; moet uniek zijn per instantie." + }, + "stats_interval": { + "label": "Statistiekeninterval", + "description": "Interval in seconden voor het publiceren van systeem- en camerastatistieken naar MQTT." + }, + "user": { + "label": "MQTT-gebruikersnaam", + "description": "Optionele MQTT-gebruikersnaam; kan via omgevingsvariabelen of secrets worden opgegeven." + }, + "password": { + "label": "MQTT-wachtwoord", + "description": "Optioneel MQTT-wachtwoord; kan via omgevingsvariabelen of secrets worden opgegeven." + }, + "tls_ca_certs": { + "label": "TLS CA-certificaten", + "description": "Pad naar het CA-certificaat voor TLS-verbindingen met de broker (voor zelfondertekende certificaten)." + }, + "tls_client_cert": { + "label": "Clientcertificaat", + "description": "Pad naar het clientcertificaat voor wederzijdse TLS-authenticatie; stel geen gebruiker/wachtwoord in bij gebruik van clientcertificaten." + }, + "tls_client_key": { + "label": "Clientsleutel", + "description": "Pad naar de privésleutel van het clientcertificaat." + }, + "tls_insecure": { + "label": "Onveilige TLS", + "description": "Onveilige TLS-verbindingen toestaan door hostnaamverificatie over te slaan (niet aanbevolen)." + }, + "qos": { + "label": "MQTT QoS-niveau", + "description": "QoS-niveau voor MQTT-publicaties/abonnementen (0, 1 of 2)." + } + }, + "notifications": { + "label": "Meldingen", + "description": "Instellingen om meldingen voor alle camera's in te schakelen en te beheren; kan per camera worden overschreven.", + "enabled": { + "label": "Meldingen inschakelen", + "description": "Meldingen voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "email": { + "label": "Melding email", + "description": "E-mailadres voor pushmeldingen of vereist door bepaalde meldingsproviders." + }, + "cooldown": { + "label": "Wachttijd", + "description": "Wachttijd (seconden) tussen meldingen om spammen te voorkomen." + }, + "enabled_in_config": { + "label": "Originele meldingsstatus", + "description": "Geeft aan of meldingen waren ingeschakeld in de originele statische configuratie." + } + }, + "networking": { + "label": "Netwerken", + "description": "Netwerkinstellingen zoals IPv6-ondersteuning voor Frigate-eindpunten.", + "ipv6": { + "label": "IPv6-configuratie", + "description": "IPv6-instellingen voor Frigate-netwerkdiensten.", + "enabled": { + "label": "IPv6 inschakelen", + "description": "IPv6-ondersteuning voor Frigate-diensten (API en UI) inschakelen waar van toepassing." + } + }, + "listen": { + "label": "Luisterpoortenconfiguratie", + "description": "Configuratie van interne en externe luisterpoorten. Dit is voor gevorderde gebruikers. In de meeste gevallen wordt aanbevolen de poortensectie in het Docker Compose-bestand aan te passen.", + "internal": { + "label": "Interne poort", + "description": "Interne luisterpoort voor Frigate (standaard 5000)." + }, + "external": { + "label": "Externe poort", + "description": "Externe luisterpoort voor Frigate (standaard 8971)." + } + } + }, + "proxy": { + "label": "Proxy", + "description": "Instellingen voor het integreren van Frigate achter een reverse proxy die geauthenticeerde gebruikersheaders doorgeeft.", + "header_map": { + "label": "Headertoewijzing", + "description": "Inkomende proxyheaders koppelen aan Frigate gebruikers- en rolvelden voor proxy-authenticatie.", + "user": { + "label": "Gebruikersheader", + "description": "Header met de geauthenticeerde gebruikersnaam van de upstream-proxy." + }, + "role": { + "label": "Rolheader", + "description": "Header met de rol of groepen van de geauthenticeerde gebruiker van de upstream-proxy." + }, + "role_map": { + "label": "Roltoewijzing", + "description": "Koppel upstream-groepswaarden aan Frigate-rollen (bijv. admingroepen aan de adminrol)." + } + }, + "logout_url": { + "label": "Uitlog-URL", + "description": "URL waarnaar gebruikers worden doorgestuurd bij uitloggen via de proxy." + }, + "auth_secret": { + "label": "Proxygeheim", + "description": "Optioneel geheim dat wordt gecontroleerd tegen de X-Proxy-Secret-header om vertrouwde proxies te verifiëren." + }, + "default_role": { + "label": "Standaardrol", + "description": "Standaardrol toegewezen aan proxy-geauthenticeerde gebruikers wanneer geen roltoewijzing van toepassing is (admin of viewer)." + }, + "separator": { + "label": "Scheidingsteken", + "description": "Scheidingsteken voor meerdere waarden in proxyheaders." + } + }, + "telemetry": { + "label": "Telemetrie", + "description": "Opties voor systeemtelemetrie en statistieken, inclusief GPU- en netwerkbandbreedtebewaking.", + "network_interfaces": { + "label": "Netwerkinterfaces", + "description": "Lijst met netwerkinterfacenaamprefixen voor bandbreedtestatistieken." + }, + "stats": { + "label": "Systeemstatistieken", + "description": "Opties voor het in- of uitschakelen van het verzamelen van systeem- en GPU-statistieken.", + "amd_gpu_stats": { + "label": "AMD GPU-statistieken", + "description": "Verzameling van AMD GPU-statistieken inschakelen indien een AMD GPU aanwezig is." + }, + "intel_gpu_stats": { + "label": "Intel GPU-statistieken", + "description": "Verzameling van Intel GPU-statistieken inschakelen indien een Intel GPU aanwezig is." + }, + "network_bandwidth": { + "label": "Netwerkbandbreedte", + "description": "Per-proces netwerkbandbreedtebewaking voor camera-ffmpeg-processen en detectoren inschakelen (vereist Linux-capabilities)." + }, + "intel_gpu_device": { + "label": "Intel GPU-apparaat", + "description": "PCI-busadres of DRM-apparaatpad (bijv. /dev/dri/card1) om Intel GPU-statistieken aan een specifiek apparaat te koppelen bij meerdere GPU's." + } + }, + "version_check": { + "label": "Versiecontrole", + "description": "Een uitgaande controle inschakelen om te detecteren of een nieuwere Frigate-versie beschikbaar is." + } + }, + "tls": { + "label": "TLS", + "description": "TLS-instellingen voor de Frigate-webservice (poort 8971).", + "enabled": { + "label": "TLS inschakelen", + "description": "TLS inschakelen voor de Frigate-webinterface en API op de geconfigureerde TLS-poort." + } + }, + "ui": { + "label": "UI", + "description": "Gebruikersinterfacevoorkeuren zoals tijdzone, tijd/datumopmaak en eenheden.", + "timezone": { + "label": "Tijdzone", + "description": "Optionele tijdzone voor weergave in de UI (standaard browsertijd indien niet ingesteld)." + }, + "time_format": { + "label": "Tijdnotatie", + "description": "Tijdnotatie voor de UI (browser, 12-uurs of 24-uurs)." + }, + "date_style": { + "label": "Datumstijl", + "description": "Datumstijl voor de UI (vol, lang, middel, kort)." + }, + "time_style": { + "label": "Tijdstijl", + "description": "Tijdstijl voor de UI (vol, lang, middel, kort)." + }, + "unit_system": { + "label": "Eenhedensysteem", + "description": "Eenhedensysteem voor weergave (metrisch of imperiaal) in de UI en MQTT." + } + }, + "detectors": { + "label": "Detector hardware", + "description": "Configuratie voor objectdetectors (CPU, GPU, ONNX-backends) en detector-specifieke modelinstellingen.", + "type": { + "label": "Type" + }, + "model": { + "label": "Detector-specifieke modelconfiguratie", + "description": "Detector-specifieke modelconfiguratie-opties (pad, invoergrootte, enz.).", + "path": { + "label": "Pad naar aangepast objectdetectormodel", + "description": "Pad naar een aangepast detectiemodel (of plus:// voor Frigate+-modellen)." + }, + "labelmap_path": { + "label": "Labelmap voor aangepaste objectdetector", + "description": "Pad naar een labelmap-bestand dat numerieke klassen koppelt aan string-labels voor de detector." + }, + "width": { + "label": "Invoerbreedte objectdetectiemodel", + "description": "Breedte van de modelinvoertensor in pixels." + }, + "height": { + "label": "Invoerhoogte objectdetectiemodel", + "description": "Hoogte van de modelinvoertensor in pixels." + }, + "labelmap": { + "label": "Labelmap-aanpassing", + "description": "Overschrijvingen of herwijzingen om samen te voegen met de standaard labelmap." + }, + "attributes_map": { + "label": "Koppeling van objectlabels aan attribuutlabels", + "description": "Koppeling tussen objectlabels en attribuutlabels voor metadata (bijv. 'car' -> ['license_plate'])." + }, + "input_tensor": { + "label": "Invoertensorvorm van het model", + "description": "Tensorformaat dat het model verwacht: 'nhwc' of 'nchw'." + }, + "input_pixel_format": { + "label": "Invoerpixelkleurformaat van het model", + "description": "Pixelkleurruimte die het model verwacht: 'rgb', 'bgr' of 'yuv'." + }, + "input_dtype": { + "label": "Invoergegevenstype van het model", + "description": "Gegevenstype van de modelinvoertensor (bijv. 'float32')." + }, + "model_type": { + "label": "Modeltype voor objectdetectie", + "description": "Modelarchitectuurtype van de detector (ssd, yolox, yolonas) voor optimalisatie door sommige detectors." + } + }, + "model_path": { + "label": "Detector-specifiek modelpad", + "description": "Bestandspad naar het detector-modelbinaire bestand, indien vereist door de gekozen detector." + }, + "axengine": { + "label": "AXEngine NPU", + "description": "AXERA AX650N/AX8850N NPU-detector die gecompileerde .axmodel-bestanden uitvoert via de AXEngine-runtime." + }, + "cpu": { + "label": "CPU", + "description": "CPU TFLite-detector die TensorFlow Lite-modellen uitvoert op de host-CPU zonder hardwareversnelling. Niet aanbevolen.", + "num_threads": { + "label": "Aantal detectiethreads", + "description": "Het aantal threads voor CPU-gebaseerde inferentie." + } + }, + "deepstack": { + "label": "DeepStack", + "description": "DeepStack/CodeProject.AI-detector die afbeeldingen naar een externe DeepStack HTTP API stuurt voor inferentie. Niet aanbevolen.", + "api_url": { + "label": "DeepStack API URL", + "description": "De URL van de DeepStack API." + }, + "api_timeout": { + "label": "DeepStack API-timeout (in seconden)", + "description": "Maximale toegestane tijd voor een DeepStack API-verzoek." + }, + "api_key": { + "label": "DeepStack API-sleutel (indien vereist)", + "description": "Optionele API-sleutel voor geauthenticeerde DeepStack-diensten." + } + }, + "degirum": { + "label": "DeGirum", + "description": "DeGirum-detector voor het uitvoeren van modellen via DeGirum-cloud of lokale inferentiediensten.", + "location": { + "label": "Locatie van inferentie-engine", + "description": "Locatie van de DeGirum-inferentie-engine (bijv. '@cloud', '127.0.0.1')." + }, + "zoo": { + "label": "Model Zoo", + "description": "Pad of URL naar de DeGirum model zoo." + }, + "token": { + "label": "DeGirum-cloudtoken", + "description": "Token voor toegang tot de DeGirum-cloud." + } + }, + "edgetpu": { + "label": "EdgeTPU", + "description": "EdgeTPU-detector die TensorFlow Lite-modellen uitvoert die zijn gecompileerd voor Coral EdgeTPU via de EdgeTPU-delegate.", + "device": { + "label": "Apparaattype", + "description": "Het apparaat voor EdgeTPU-inferentie (bijv. 'usb', 'pci')." + } + }, + "hailo8l": { + "label": "Hailo-8/Hailo-8L", + "description": "Hailo-8/Hailo-8L-detector die HEF-modellen en de HailoRT SDK gebruikt voor inferentie op Hailo-hardware.", + "device": { + "label": "Apparaattype", + "description": "Het apparaat voor Hailo-inferentie (bijv. 'PCIe', 'M.2')." + } + }, + "memryx": { + "label": "MemryX", + "description": "MemryX MX3-detector die gecompileerde DFP-modellen uitvoert op MemryX-accelerators.", + "device": { + "label": "Apparaatpad", + "description": "Het apparaat voor MemryX-inferentie (bijv. 'PCIe')." + } + }, + "onnx": { + "label": "ONNX", + "description": "ONNX-detector voor het uitvoeren van ONNX-modellen; gebruikt beschikbare versnellingsbackends (CUDA/ROCm/OpenVINO) indien beschikbaar.", + "device": { + "label": "Apparaattype", + "description": "Het apparaat voor ONNX-inferentie (bijv. 'AUTO', 'CPU', 'GPU')." + } + }, + "openvino": { + "label": "OpenVINO", + "description": "OpenVINO-detector voor AMD- en Intel-CPU's, Intel GPU's en Intel VPU-hardware.", + "device": { + "label": "Apparaattype", + "description": "Het apparaat voor OpenVINO-inferentie (bijv. 'CPU', 'GPU', 'NPU')." + } + }, + "rknn": { + "label": "RKNN", + "description": "RKNN-detector voor Rockchip NPU's; voert gecompileerde RKNN-modellen uit op Rockchip-hardware.", + "num_cores": { + "label": "Aantal te gebruiken NPU-kernen.", + "description": "Het aantal te gebruiken NPU-kernen (0 voor automatisch)." + } + }, + "synaptics": { + "label": "Synaptics", + "description": "Synaptics NPU-detector voor modellen in .synap-formaat via de Synap SDK op Synaptics-hardware." + }, + "teflon_tfl": { + "label": "Teflon", + "description": "Teflon delegate-detector voor TFLite via de Mesa Teflon delegate-bibliotheek voor GPU-versnelling." + }, + "tensorrt": { + "label": "TensorRT", + "description": "TensorRT-detector voor Nvidia Jetson-apparaten via geserialiseerde TensorRT-engines voor versnelde inferentie.", + "device": { + "label": "GPU-apparaatindex", + "description": "De te gebruiken GPU-apparaatindex." + } + }, + "zmq": { + "label": "ZMQ IPC", + "description": "ZMQ IPC-detector die inferentie uitbesteedt aan een extern proces via een ZeroMQ IPC-eindpunt.", + "endpoint": { + "label": "ZMQ IPC-eindpunt", + "description": "Het ZMQ-eindpunt waarmee verbinding wordt gemaakt." + }, + "request_timeout_ms": { + "label": "ZMQ-verzoektimeout in milliseconden", + "description": "Timeout voor ZMQ-verzoeken in milliseconden." + }, + "linger_ms": { + "label": "ZMQ-socket linger in milliseconden", + "description": "Socket linger-periode in milliseconden." + } + } + }, + "model": { + "label": "Detectie model", + "description": "Instellingen voor het configureren van een aangepast objectdetectiemodel en de invoervorm.", + "path": { + "label": "Pad naar aangepast objectdetectormodel", + "description": "Pad naar een aangepast detectiemodel (of plus:// voor Frigate+-modellen)." + }, + "labelmap_path": { + "label": "Labelmap voor aangepaste objectdetector", + "description": "Pad naar een labelmap-bestand dat numerieke klassen koppelt aan string-labels voor de detector." + }, + "width": { + "label": "Invoerbreedte objectdetectiemodel", + "description": "Breedte van de modelinvoertensor in pixels." + }, + "height": { + "label": "Invoerhoogte objectdetectiemodel", + "description": "Hoogte van de modelinvoertensor in pixels." + }, + "labelmap": { + "label": "Labelmap-aanpassing", + "description": "Overschrijvingen of herwijzingen om samen te voegen met de standaard labelmap." + }, + "attributes_map": { + "label": "Koppeling van objectlabels aan attribuutlabels", + "description": "Koppeling tussen objectlabels en attribuutlabels voor metadata (bijv. 'car' -> ['license_plate'])." + }, + "input_tensor": { + "label": "Invoertensorvorm van het model", + "description": "Tensorformaat dat het model verwacht: 'nhwc' of 'nchw'." + }, + "input_pixel_format": { + "label": "Invoerpixelkleurformaat van het model", + "description": "Pixelkleurruimte die het model verwacht: 'rgb', 'bgr' of 'yuv'." + }, + "input_dtype": { + "label": "Invoergegevenstype van het model", + "description": "Gegevenstype van de modelinvoertensor (bijv. 'float32')." + }, + "model_type": { + "label": "Modeltype voor objectdetectie", + "description": "Modelarchitectuurtype van de detector (ssd, yolox, yolonas) voor optimalisatie door sommige detectors." + } + }, + "genai": { + "label": "Generatieve AI-configuratie", + "description": "Instellingen voor geïntegreerde generatieve AI-providers voor het genereren van objectbeschrijvingen en beoordelingssamenvattingen.", + "api_key": { + "label": "API-sleutel", + "description": "API-sleutel vereist door sommige providers (kan ook via omgevingsvariabelen worden ingesteld)." + }, + "base_url": { + "label": "Basis-URL", + "description": "Basis-URL voor zelf-gehoste of compatibele providers (bijv. een Ollama-instantie)." + }, + "model": { + "label": "Model", + "description": "Het model van de provider voor het genereren van beschrijvingen of samenvattingen." + }, + "provider": { + "label": "Provider", + "description": "De te gebruiken GenAI-provider (bijv. ollama, gemini, openai)." + }, + "roles": { + "label": "Rollen", + "description": "GenAI-rollen (chat, beschrijvingen, inbeddingen); één provider per rol." + }, + "provider_options": { + "label": "Provideropties", + "description": "Aanvullende provider-specifieke opties voor de GenAI-client." + }, + "runtime_options": { + "label": "Runtime-opties", + "description": "Runtime-opties die bij elke inferentieaanroep aan de provider worden meegegeven." + } + }, + "ffmpeg": { + "label": "FFmpeg", + "description": "FFmpeg-instellingen inclusief binaire pad, argumenten, hardwareversnellingsopties en uitvoerargumenten per rol.", + "path": { + "label": "FFmpeg-pad", + "description": "Pad naar het te gebruiken FFmpeg-binaire bestand of een versie-alias (\"5.0\" of \"7.0\")." + }, + "global_args": { + "label": "FFmpeg globale argumenten", + "description": "Globale argumenten voor FFmpeg-processen." + }, + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten", + "description": "Hardwareversnellingsargumenten voor FFmpeg. Provider-specifieke presets worden aanbevolen." + }, + "input_args": { + "label": "Invoerargumenten", + "description": "Invoerargumenten voor FFmpeg-invoerstromen." + }, + "output_args": { + "label": "Uitvoerargumenten", + "description": "Standaard uitvoerargumenten voor verschillende FFmpeg-rollen zoals detectie en opname.", + "detect": { + "label": "Uitvoerargumenten voor detectie", + "description": "Standaard uitvoerargumenten voor streams met detectierol." + }, + "record": { + "label": "Uitvoerargumenten voor opname", + "description": "Standaard uitvoerargumenten voor streams met opnamerol." + } + }, + "retry_interval": { + "label": "FFmpeg-herverbindingstijd", + "description": "Seconden wachten voor een herverbindingspoging na een mislukte camerastream. Standaard is 10." + }, + "apple_compatibility": { + "label": "Apple-compatibiliteit", + "description": "HEVC-tagging inschakelen voor betere Apple-spelercompatibiliteit bij het opnemen van H.265." + }, + "gpu": { + "label": "GPU-index", + "description": "Standaard GPU-index voor hardwareversnelling indien beschikbaar." + }, + "inputs": { + "label": "Camera-invoer", + "description": "Lijst van invoerstream-definities (paden en rollen) voor deze camera.", + "path": { + "label": "Invoerpad", + "description": "URL of pad van de camera-invoerstroom." + }, + "roles": { + "label": "Invoerrollen", + "description": "Rollen voor deze invoerstroom." + }, + "global_args": { + "label": "FFmpeg globale argumenten", + "description": "FFmpeg globale argumenten voor deze invoerstroom." + }, + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten", + "description": "Hardwareversnellingsargumenten voor deze invoerstroom." + }, + "input_args": { + "label": "Invoerargumenten", + "description": "Invoerargumenten specifiek voor deze stream." + } + } + }, + "live": { + "label": "Live weergave", + "description": "Instellingen voor de jsmpeg-livestream-resolutie en -kwaliteit. Dit heeft geen invloed op gerestreamde camera's die go2rtc gebruiken voor live weergave.", + "streams": { + "label": "Live streamnamen", + "description": "Koppeling van geconfigureerde streamnamen aan restream/go2rtc-namen voor live weergave." + }, + "height": { + "label": "Live hoogte", + "description": "Hoogte (pixels) voor weergave van de jsmpeg-livestream in de webinterface; moet ≤ hoogte van de detectiestream zijn." + }, + "quality": { + "label": "Live kwaliteit", + "description": "Coderingskwaliteit voor de jsmpeg-stream (1 hoogste, 31 laagste)." + } + }, + "motion": { + "label": "Bewegingsdetectie", + "description": "Standaard bewegingsdetectie-instellingen die worden toegepast op camera's tenzij per camera overschreven.", + "enabled": { + "label": "Bewegingsdetectie inschakelen", + "description": "Bewegingsdetectie voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "threshold": { + "label": "Bewegingsdrempel", + "description": "Pixelverschildrempel voor de bewegingsdetector; hogere waarden verminderen de gevoeligheid (bereik 1-255)." + }, + "lightning_threshold": { + "label": "Bliksemdrempel", + "description": "Drempel om korte lichtflitsen te detecteren en te negeren (lager is gevoeliger, waarden tussen 0,3 en 1,0). Dit voorkomt bewegingsdetectie niet volledig; het zorgt er alleen voor dat de detector stopt met het analyseren van extra frames zodra de drempel wordt overschreden. Op beweging gebaseerde opnames worden tijdens deze gebeurtenissen nog steeds aangemaakt." + }, + "skip_motion_threshold": { + "label": "Drempel voor overgeslagen beweging", + "description": "Als ingesteld op een waarde tussen 0,0 en 1,0, en meer dan dit deel van het beeld verandert in één frame, geeft de detector geen bewegingsvakken terug en kalibreert hij direct opnieuw. Dit bespaart CPU en vermindert vals-positieven bij bliksem, stormen e.d., maar kan echte gebeurtenissen zoals PTZ-tracking missen. De afweging is tussen het weggooien van enkele megabytes opnames versus het bekijken van een paar korte clips. Leeg laten (None) om deze functie uit te schakelen." + }, + "improve_contrast": { + "label": "Contrast verbeteren", + "description": "Contrastverbetering op frames toepassen vóór bewegingsanalyse om detectie te verbeteren." + }, + "contour_area": { + "label": "Contouroppervlakte", + "description": "Minimale contouroppervlakte in pixels voor een bewegingscontour om te worden geteld." + }, + "delta_alpha": { + "label": "Delta-alfa", + "description": "Alpha-mengfactor voor frameverschil bij bewegingsberekening." + }, + "frame_alpha": { + "label": "Frame-alfa", + "description": "Alpha-waarde voor het mengen van frames bij bewegingsvoorverwerking." + }, + "frame_height": { + "label": "Framehoogte", + "description": "Hoogte in pixels waarnaar frames worden geschaald bij het berekenen van beweging." + }, + "mask": { + "label": "Maskercoördinaten", + "description": "Geordende x,y-coördinaten die het bewegingsmaskeerpolygoon definiëren voor het in- of uitsluiten van gebieden." + }, + "mqtt_off_delay": { + "label": "MQTT uit-vertraging", + "description": "Seconden wachten na de laatste beweging vóór publicatie van een MQTT 'off'-status." + }, + "enabled_in_config": { + "label": "Originele bewegingsstatus", + "description": "Geeft aan of bewegingsdetectie was ingeschakeld in de originele statische configuratie." + }, + "raw_mask": { + "label": "Onbewerkt masker" + } + }, + "objects": { + "label": "Objecten", + "description": "Standaardinstellingen voor objectvolging, inclusief te volgen labels en per-object filters.", + "track": { + "label": "Te volgen objecten", + "description": "Lijst met objectlabels om te volgen voor alle camera's; kan per camera worden overschreven." + }, + "filters": { + "label": "Objectfilters", + "description": "Filters op gedetecteerde objecten om vals-positieven te verminderen (oppervlakte, verhouding, betrouwbaarheid).", + "min_area": { + "label": "Minimale objectoppervlakte", + "description": "Minimale detectiekaderoppervlakte (pixels of percentage) voor dit objecttype. Kan pixels (int) of percentage (float tussen 0,000001 en 0,99) zijn." + }, + "max_area": { + "label": "Maximale objectoppervlakte", + "description": "Maximale detectiekaderoppervlakte (pixels of percentage) voor dit objecttype. Kan pixels (int) of percentage (float tussen 0,000001 en 0,99) zijn." + }, + "min_ratio": { + "label": "Minimale beeldverhouding", + "description": "Minimale breedte/hoogte-verhouding voor het detectiekader om te kwalificeren." + }, + "max_ratio": { + "label": "Maximale beeldverhouding", + "description": "Maximale breedte/hoogte-verhouding voor het detectiekader om te kwalificeren." + }, + "threshold": { + "label": "Betrouwbaarheidsdrempel", + "description": "Gemiddelde detectiebetrouwbaarheidsdrempel om een object als terecht positief te beschouwen." + }, + "min_score": { + "label": "Minimale betrouwbaarheid", + "description": "Minimale detectiebetrouwbaarheid in één frame om het object te tellen." + }, + "mask": { + "label": "Filtermasker", + "description": "Polygooncoördinaten die aangeven waar dit filter van toepassing is in het frame." + }, + "raw_mask": { + "label": "Onbewerkt masker" + } + }, + "mask": { + "label": "Objectmasker", + "description": "Maskeerpolygoon om objectdetectie in bepaalde gebieden te voorkomen." + }, + "raw_mask": { + "label": "Onbewerkt masker" + }, + "genai": { + "label": "GenAI-objectconfiguratie", + "description": "GenAI-opties voor het beschrijven van gevolgde objecten en het versturen van frames voor generatie.", + "enabled": { + "label": "GenAI inschakelen", + "description": "GenAI-beschrijvingen voor gevolgde objecten standaard inschakelen." + }, + "use_snapshot": { + "label": "Snapshots gebruiken", + "description": "Objectsnapshots gebruiken in plaats van miniaturen voor GenAI-beschrijving." + }, + "prompt": { + "label": "Bijschriftprompt", + "description": "Standaard promptsjabloon voor het genereren van beschrijvingen met GenAI." + }, + "object_prompts": { + "label": "Objectprompts", + "description": "Prompts per object voor het aanpassen van GenAI-uitvoer voor specifieke labels." + }, + "objects": { + "label": "GenAI-objecten", + "description": "Lijst van objectlabels die standaard naar GenAI worden gestuurd." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die objecten moeten betreden om in aanmerking te komen voor GenAI-beschrijving." + }, + "debug_save_thumbnails": { + "label": "Snapshots opslaan", + "description": "Snapshots die naar GenAI worden gestuurd opslaan voor foutopsporing." + }, + "send_triggers": { + "label": "GenAI-triggers", + "description": "Bepaalt wanneer frames naar GenAI worden gestuurd (bij einde, na updates, enz.).", + "tracked_object_end": { + "label": "Sturen bij beëindiging", + "description": "Een verzoek naar GenAI sturen wanneer het gevolgde object eindigt." + }, + "after_significant_updates": { + "label": "Vroege GenAI-trigger", + "description": "Een verzoek naar GenAI sturen na een bepaald aantal significante updates voor het gevolgde object." + } + }, + "enabled_in_config": { + "label": "Originele GenAI-status", + "description": "Geeft aan of GenAI was ingeschakeld in de originele statische configuratie." + } + } + }, + "record": { + "label": "Opname", + "description": "Opname- en bewaarinstellingen die worden toegepast op camera's tenzij per camera overschreven.", + "enabled": { + "label": "Opname inschakelen", + "description": "Opname voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "expire_interval": { + "label": "Opruiminterval opnames", + "description": "Minuten tussen opruimrondes die verlopen opnamesegmenten verwijderen." + }, + "continuous": { + "label": "Continue bewaring", + "description": "Aantal dagen om opnames te bewaren ongeacht gevolgde objecten of beweging. Stel 0 in om alleen opnames van meldingen en detecties te bewaren.", + "days": { + "label": "Bewaardagen", + "description": "Dagen om opnames te bewaren." + } + }, + "motion": { + "label": "Bewegingsretentie", + "description": "Aantal dagen om opnames veroorzaakt door beweging te bewaren, ongeacht gevolgde objecten. Stel 0 in om alleen opnames van meldingen en detecties te bewaren.", + "days": { + "label": "Bewaardagen", + "description": "Dagen om opnames te bewaren." + } + }, + "detections": { + "label": "Detectieretentie", + "description": "Opname-retentie-instellingen voor detectiegebeurtenissen inclusief pre/post-captureduur.", + "pre_capture": { + "label": "Seconden vóór opname", + "description": "Aantal seconden vóór de detectiegebeurtenis om op te nemen in de opname." + }, + "post_capture": { + "label": "Seconden na opname", + "description": "Aantal seconden na de detectiegebeurtenis om op te nemen in de opname." + }, + "retain": { + "label": "Gebeurtenisbewaring", + "description": "Bewaarinstellingen voor opnames van detectiegebeurtenissen.", + "days": { + "label": "Bewaardagen", + "description": "Aantal dagen om opnames van detectiegebeurtenissen te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + } + } + }, + "alerts": { + "label": "Meldingsbewaring", + "description": "Opname-retentie-instellingen voor alertgebeurtenissen inclusief pre/post-captureduur.", + "pre_capture": { + "label": "Seconden vóór opname", + "description": "Aantal seconden vóór de detectiegebeurtenis om op te nemen in de opname." + }, + "post_capture": { + "label": "Seconden na opname", + "description": "Aantal seconden na de detectiegebeurtenis om op te nemen in de opname." + }, + "retain": { + "label": "Gebeurtenisbewaring", + "description": "Bewaarinstellingen voor opnames van detectiegebeurtenissen.", + "days": { + "label": "Bewaardagen", + "description": "Aantal dagen om opnames van detectiegebeurtenissen te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + } + } + }, + "export": { + "label": "Exportconfiguratie", + "description": "Instellingen voor het exporteren van opnames, zoals timelapse en hardwareversnelling.", + "hwaccel_args": { + "label": "Hardwareversnellingsargumenten voor export", + "description": "Hardwareversnellingsargumenten voor export/transcodering." + }, + "max_concurrent": { + "label": "Maximaal aantal gelijktijdige exports", + "description": "Maximum aantal exporttaken dat tegelijk wordt verwerkt." + } + }, + "preview": { + "label": "Voorbeeldconfiguratie", + "description": "Instellingen voor de kwaliteit van opnamevoorbeelden in de UI.", + "quality": { + "label": "Voorbeeldkwaliteit", + "description": "Kwaliteitsniveau voor voorbeelden (very_low, low, medium, high, very_high)." + } + }, + "enabled_in_config": { + "label": "Originele opnamestatus", + "description": "Geeft aan of opname was ingeschakeld in de originele statische configuratie." + } + }, + "review": { + "label": "Beoordeling", + "description": "Instellingen voor meldingen, detecties en GenAI-beoordelingssamenvattingen in de UI en opslag.", + "alerts": { + "label": "Meldingsconfiguratie", + "description": "Instellingen voor welke gevolgde objecten alerts genereren en hoe alerts worden bewaard.", + "enabled": { + "label": "Alerts inschakelen", + "description": "Genereren van meldingen voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "labels": { + "label": "Meldingslabels", + "description": "Lijst met objectlabels die kwalificeren als meldingen (bijv. auto, persoon)." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden om als melding te worden beschouwd; leeg laten voor elke zone." + }, + "enabled_in_config": { + "label": "Originele meldingsstatus", + "description": "Geeft aan of meldingen oorspronkelijk waren ingeschakeld in de statische configuratie." + }, + "cutoff_time": { + "label": "Afsluitingstijd meldingen", + "description": "Seconden wachten na het uitblijven van melding veroorzakende activiteit voordat een melding wordt afgesloten." + } + }, + "detections": { + "label": "Detectieconfiguratie", + "description": "Instellingen voor welke gevolgde objecten detecties genereren en hoe detecties worden bewaard.", + "enabled": { + "label": "Detecties inschakelen", + "description": "Detecties voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "labels": { + "label": "Detectielabels", + "description": "Lijst met objectlabels die kwalificeren als detectiegebeurtenissen." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden om als detectie te worden beschouwd; leeg laten voor elke zone." + }, + "cutoff_time": { + "label": "Afsluitingstijd detecties", + "description": "Seconden wachten na het uitblijven van detectie veroorzakende activiteit voordat een detectie wordt afgesloten." + }, + "enabled_in_config": { + "label": "Originele detectiestatus", + "description": "Geeft aan of detecties oorspronkelijk waren ingeschakeld in de statische configuratie." + } + }, + "genai": { + "label": "GenAI-configuratie", + "description": "Beheert het gebruik van generatieve AI voor het produceren van beschrijvingen en samenvattingen van beoordelingsitems.", + "enabled": { + "label": "GenAI-beschrijvingen inschakelen", + "description": "Door GenAI gegenereerde beschrijvingen en samenvattingen voor beoordelingsitems in- of uitschakelen." + }, + "alerts": { + "label": "GenAI inschakelen voor meldingen", + "description": "GenAI gebruiken voor het genereren van beschrijvingen bij meldingsitems." + }, + "detections": { + "label": "GenAI inschakelen voor detecties", + "description": "GenAI gebruiken voor het genereren van beschrijvingen bij detectiebeoordelingen." + }, + "image_source": { + "label": "Afbeeldingsbron voor beoordeling", + "description": "Bron van afbeeldingen naar GenAI ('preview' of 'recordings'); 'recordings' gebruikt hogere kwaliteit maar meer tokens." + }, + "additional_concerns": { + "label": "Aanvullende aandachtspunten", + "description": "Een lijst met aanvullende aandachtspunten die GenAI moet meenemen bij het beoordelen van activiteit op deze camera." + }, + "debug_save_thumbnails": { + "label": "Snapshots opslaan", + "description": "Snapshots die naar de GenAI-provider worden gestuurd opslaan voor foutopsporing." + }, + "enabled_in_config": { + "label": "Originele GenAI-status", + "description": "Geeft aan of GenAI-beoordeling oorspronkelijk was ingeschakeld in de statische configuratie." + }, + "preferred_language": { + "label": "Voorkeurstaal", + "description": "Voorkeurstaal voor gegenereerde antwoorden van de GenAI-provider." + }, + "activity_context_prompt": { + "label": "Activiteitscontextprompt", + "description": "Aangepaste prompt die beschrijft wat wel en niet verdachte activiteit is, als context voor GenAI-samenvattingen." + } + } + }, + "snapshots": { + "label": "Snapshots", + "description": "Instellingen voor API-gegenereerde snapshots van gevolgde objecten voor alle camera's; kan per camera worden overschreven.", + "enabled": { + "label": "Snapshots inschakelen", + "description": "Het opslaan van snapshots voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "timestamp": { + "label": "Tijdstempel-overlay", + "description": "Een tijdstempel op API-snapshots weergeven." + }, + "bounding_box": { + "label": "Detectiekader-overlay", + "description": "Detectiekaders voor gevolgde objecten tekenen op API-snapshots." + }, + "crop": { + "label": "Snapshot bijsnijden", + "description": "API-snapshots bijsnijden tot het detectiekader van het gedetecteerde object." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden voordat een snapshot wordt opgeslagen." + }, + "height": { + "label": "Snapshothoogte", + "description": "Hoogte (pixels) om API-snapshots naar te schalen; leeg laten om de originele grootte te behouden." + }, + "retain": { + "label": "Snapshot-bewaring", + "description": "Bewaarinstellingen voor snapshots inclusief standaarddagen en per-object overschrijvingen.", + "default": { + "label": "Standaard retentie", + "description": "Standaard aantal dagen om snapshots te bewaren." + }, + "mode": { + "label": "Bewaarmodus", + "description": "Bewaarmodus: all (alle segmenten), motion (segmenten met beweging) of active_objects (segmenten met actieve objecten)." + }, + "objects": { + "label": "Objectbewaring", + "description": "Objectspecifieke overschrijvingen voor het aantal bewaardagen van snapshots." + } + }, + "quality": { + "label": "Snapshotkwaliteit", + "description": "Coderingskwaliteit voor opgeslagen snapshots (0-100)." + } + }, + "timestamp_style": { + "label": "Tijdstempelstijl", + "description": "Stijlopties voor tijdstempels in de feed, toegepast op de debugweergave en snapshots.", + "position": { + "label": "Tijdstempelpositie", + "description": "Positie van de tijdstempel op de afbeelding (tl/tr/bl/br)." + }, + "format": { + "label": "Tijdstempelformaat", + "description": "Datumtijdformaatstring voor tijdstempels (Python datetime-formaatcodes)." + }, + "color": { + "label": "Tijdstempelkleur", + "description": "RGB-kleurwaarden voor de tijdstempeltekst (alle waarden 0-255).", + "red": { + "label": "Rood", + "description": "Roodcomponent (0-255) voor de tijdstempelkleur." + }, + "green": { + "label": "Groen", + "description": "Groencomponent (0-255) voor de tijdstempelkleur." + }, + "blue": { + "label": "Blauw", + "description": "Blauwcomponent (0-255) voor de tijdstempelkleur." + } + }, + "thickness": { + "label": "Tijdstempeldikte", + "description": "Lijndikte van de tijdstempeltekst." + }, + "effect": { + "label": "Tijdstempeleffect", + "description": "Visueel effect voor de tijdstempeltekst (geen, effen, schaduw)." + } + }, + "classification": { + "label": "Objectclassificatie", + "description": "Instellingen voor classificatiemodellen die worden gebruikt om objectlabels of statusclassificatie te verfijnen.", + "bird": { + "label": "Vogelclassificatieconfiguratie", + "description": "Instellingen specifiek voor vogelclassificatiemodellen.", + "enabled": { + "label": "Vogelclassificatie", + "description": "Vogelclassificatie in- of uitschakelen." + }, + "threshold": { + "label": "Minimale score", + "description": "Minimale classificatiescore om een vogelclassificatie te accepteren." + } + }, + "custom": { + "label": "Aangepaste classificatiemodellen", + "description": "Configuratie voor aangepaste classificatiemodellen voor object- of statusdetectie.", + "enabled": { + "label": "Model inschakelen", + "description": "Het aangepaste classificatiemodel in- of uitschakelen." + }, + "name": { + "label": "Modelnaam", + "description": "Identifier van het te gebruiken aangepaste classificatiemodel." + }, + "threshold": { + "label": "Scoredrempel", + "description": "Scoredrempel voor het wijzigen van de classificatiestatus." + }, + "save_attempts": { + "label": "Opgeslagen pogingen", + "description": "Aantal classificatiepogingen dat wordt bijgehouden voor de recente classificaties in de UI." + }, + "object_config": { + "objects": { + "label": "Objecten classificeren", + "description": "Lijst van objecttypen waarop objectclassificatie wordt uitgevoerd." + }, + "classification_type": { + "label": "Classificatietype", + "description": "Toegepast classificatietype: 'sub_label' (voegt sub_label toe) of andere ondersteunde typen." + } + }, + "state_config": { + "cameras": { + "label": "Classificatiecamera's", + "description": "Per-camera bijsnijdinstellingen voor statusclassificatie.", + "crop": { + "label": "Classificatie-uitsnede", + "description": "Bijsnijdcoördinaten voor classificatie op deze camera." + } + }, + "motion": { + "label": "Uitvoeren bij beweging", + "description": "Indien ingeschakeld, classificatie uitvoeren wanneer beweging wordt gedetecteerd in het opgegeven bijsnijdgebied." + }, + "interval": { + "label": "Classificatie-interval", + "description": "Interval (seconden) tussen periodieke classificatierondes voor statusclassificatie." + } + } + } + }, + "semantic_search": { + "label": "Semantisch zoeken", + "description": "Instellingen voor semantisch zoeken, dat objectinbeddingen opbouwt en bevraagt om vergelijkbare items te vinden.", + "enabled": { + "label": "Semantisch zoeken inschakelen", + "description": "De semantisch zoeken-functie in- of uitschakelen." + }, + "reindex": { + "label": "Herindexeren bij opstarten", + "description": "Een volledige herindexering van historische gevolgde objecten in de inbeddingsdatabase starten." + }, + "model": { + "label": "Semantisch zoekmodel of GenAI-providernaam", + "description": "Het inbeddingsmodel voor semantisch zoeken (bijv. 'jinav1'), of de naam van een GenAI-provider met de inbeddingsrol." + }, + "model_size": { + "label": "Modelgrootte", + "description": "Selecteer modelgrootte; 'small' draait op CPU en 'large' vereist doorgaans een GPU." + }, + "device": { + "label": "Apparaat", + "description": "Dit is een overschrijving om een specifiek apparaat te targeten. Zie https://onnxruntime.ai/docs/execution-providers/ voor meer informatie" + }, + "triggers": { + "label": "Triggers", + "description": "Acties en matchcriteria voor cameraspecifieke semantisch-zoeken-triggers.", + "friendly_name": { + "label": "Weergavenaam", + "description": "Optionele weergavenaam voor deze trigger in de UI." + }, + "enabled": { + "label": "Trigger inschakelen", + "description": "Deze semantisch-zoeken-trigger in- of uitschakelen." + }, + "type": { + "label": "Triggertype", + "description": "Type trigger: 'thumbnail' (vergelijk met afbeelding) of 'description' (vergelijk met tekst)." + }, + "data": { + "label": "Triggerinhoud", + "description": "Tekstzin of miniatuur-ID om te vergelijken met gevolgde objecten." + }, + "threshold": { + "label": "Triggerdrempel", + "description": "Minimale gelijkenisscore (0-1) om deze trigger te activeren." + }, + "actions": { + "label": "Triggeracties", + "description": "Lijst van uit te voeren acties bij triggermatch (melding, sub_label, attribuut)." + } + } + }, + "face_recognition": { + "label": "Gezichtsherkenning", + "description": "Instellingen voor gezichtsdetectie en -herkenning voor alle camera's; kan per camera worden overschreven.", + "enabled": { + "label": "Gezichtsherkenning inschakelen", + "description": "Gezichtsherkenning voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "model_size": { + "label": "Modelgrootte", + "description": "Modelgrootte voor gezichtsinbeddingen (small/large); groter vereist mogelijk een GPU." + }, + "unknown_score": { + "label": "Drempel voor onbekende score", + "description": "Afstandsdrempel waaronder een gezicht als mogelijke match wordt beschouwd (hoger = strikter)." + }, + "detection_threshold": { + "label": "Detectiedrempel", + "description": "Minimale detectiebetrouwbaarheid om een gezichtsdetectie als geldig te beschouwen." + }, + "recognition_threshold": { + "label": "Herkenningsdrempel", + "description": "Gezichtsinbeddingsafstandsdrempel om twee gezichten als match te beschouwen." + }, + "min_area": { + "label": "Minimale gezichtsoppervlakte", + "description": "Minimale oppervlakte (pixels) van een gedetecteerd gezichtskader om herkenning te proberen." + }, + "min_faces": { + "label": "Minimum gezichten", + "description": "Minimum aantal gezichtsherkeningen vereist voordat een herkend sub-label aan een persoon wordt toegekend." + }, + "save_attempts": { + "label": "Opgeslagen pogingen", + "description": "Aantal gezichtsherkenningspogingen dat wordt bijgehouden voor de recente herkenningen in de UI." + }, + "blur_confidence_filter": { + "label": "Vaagheidsbetrouwbaarheidsfilter", + "description": "Betrouwbaarheidsscores aanpassen op basis van beeldvaagheid om vals-positieven bij slechte gezichtskwaliteit te verminderen." + }, + "device": { + "label": "Apparaat", + "description": "Dit is een overschrijving om een specifiek apparaat te targeten. Zie https://onnxruntime.ai/docs/execution-providers/ voor meer informatie" + } + }, + "lpr": { + "label": "Kentekenherkenning", + "description": "Instellingen voor kentekenherkenning inclusief detectiedrempels, opmaak en bekende kentekens.", + "enabled": { + "label": "LPR inschakelen", + "description": "Kentekenherkenning voor alle camera's in- of uitschakelen; kan per camera worden overschreven." + }, + "model_size": { + "label": "Modelgrootte", + "description": "Modelgrootte voor tekstdetectie/-herkenning. De meeste gebruikers moeten 'small' gebruiken." + }, + "detection_threshold": { + "label": "Detectiedrempel", + "description": "Detectiebetrouwbaarheidsdrempel om OCR te starten op een vermoedelijk kenteken." + }, + "min_area": { + "label": "Minimale kentekenoppervlakte", + "description": "Minimale kentekenoppervlakte (pixels) om herkenning te proberen." + }, + "recognition_threshold": { + "label": "Herkenningsdrempel", + "description": "Betrouwbaarheidsdrempel voor herkende kentekentekst om als sub-label toe te voegen." + }, + "min_plate_length": { + "label": "Minimale kentekenlengte", + "description": "Minimum aantal tekens dat een herkend kenteken moet bevatten om geldig te zijn." + }, + "format": { + "label": "Regex voor kentekenformaat", + "description": "Optionele regex om herkende kentekens te valideren tegen een verwacht formaat." + }, + "match_distance": { + "label": "Overeenkomstafstand", + "description": "Aantal toegestane tekenfouten bij vergelijking van gedetecteerde kentekens met bekende kentekens." + }, + "known_plates": { + "label": "Bekende kentekens", + "description": "Lijst met kentekens of regex-patronen om specifiek te volgen of meldingen voor te genereren." + }, + "enhancement": { + "label": "Verbeteringsniveau", + "description": "Verbeteringsniveau (0-10) voor kentekenuitsneden vóór OCR; hogere waarden verbeteren niet altijd het resultaat; niveaus boven 5 werken mogelijk alleen voor nachtelijke kentekens en moeten voorzichtig worden gebruikt." + }, + "debug_save_plates": { + "label": "Kentekenplaten opslaan voor foutopsporing", + "description": "Kentekenuitsneden opslaan voor foutopsporing van LPR-prestaties." + }, + "device": { + "label": "Apparaat", + "description": "Dit is een overschrijving om een specifiek apparaat te targeten. Zie https://onnxruntime.ai/docs/execution-providers/ voor meer informatie" + }, + "replace_rules": { + "label": "Vervangingsregels", + "description": "Regex-vervangingsregels voor het normaliseren van gedetecteerde kentekenstrings vóór vergelijking.", + "pattern": { + "label": "Regex-patroon" + }, + "replacement": { + "label": "Vervangende tekst" + } + }, + "expire_time": { + "label": "Vervaltijd in seconden", + "description": "Tijd in seconden waarna een niet-gezien kenteken vervalt uit de tracker (alleen voor dedicated LPR-camera's)." + } + }, + "camera_groups": { + "label": "Cameragroepen", + "description": "Configuratie voor benoemde cameragroepen voor het organiseren van camera's in de UI.", + "cameras": { + "label": "Cameralijst", + "description": "Lijst met cameranamen in deze groep." + }, + "icon": { + "label": "Groepspictogram", + "description": "Pictogram voor de cameragroep in de UI." + }, + "order": { + "label": "Sorteervolgorde", + "description": "Numerieke volgorde voor het sorteren van cameragroepen in de UI; grotere nummers verschijnen later." + } + }, + "active_profile": { + "label": "Actief profiel", + "description": "Naam van het momenteel actieve profiel. Alleen runtime, wordt niet opgeslagen in YAML." + }, + "camera_mqtt": { + "label": "MQTT", + "description": "Instellingen voor het publiceren van MQTT-afbeeldingen.", + "enabled": { + "label": "Afbeelding versturen", + "description": "Het publiceren van afbeeldingssnapshots van objecten naar MQTT-topics voor deze camera inschakelen." + }, + "timestamp": { + "label": "Tijdstempel toevoegen", + "description": "Een tijdstempel op naar MQTT gepubliceerde afbeeldingen weergeven." + }, + "bounding_box": { + "label": "Detectiekader toevoegen", + "description": "Detectiekaders tekenen op via MQTT gepubliceerde afbeeldingen." + }, + "crop": { + "label": "Afbeelding bijsnijden", + "description": "Naar MQTT gepubliceerde afbeeldingen bijsnijden tot het detectiekader van het gedetecteerde object." + }, + "height": { + "label": "Afbeeldingshoogte", + "description": "Hoogte (pixels) voor het schalen van via MQTT gepubliceerde afbeeldingen." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Zones die een object moet betreden voordat een MQTT-afbeelding wordt gepubliceerd." + }, + "quality": { + "label": "JPEG-kwaliteit", + "description": "JPEG-kwaliteit voor naar MQTT gepubliceerde afbeeldingen (0-100)." + } + }, + "camera_ui": { + "label": "Camera-UI", + "description": "Weergavevolgorde en zichtbaarheid van deze camera in de UI. De volgorde heeft invloed op het standaarddashboard. Gebruik cameragroepen voor fijnere controle.", + "order": { + "label": "UI-volgorde", + "description": "Numerieke volgorde voor het sorteren van de camera in de UI (standaarddashboard en lijsten); grotere nummers verschijnen later." + }, + "dashboard": { + "label": "Tonen in UI", + "description": "Schakel de zichtbaarheid van deze camera overal in de Frigate-UI in of uit. Uitschakelen vereist handmatige aanpassing van de configuratie om de camera opnieuw te bekijken." + } + }, + "onvif": { + "label": "ONVIF", + "description": "ONVIF-verbindings- en PTZ-autovolgingsinstellingen voor deze camera.", + "host": { + "label": "ONVIF-host", + "description": "Host (en optioneel schema) voor de ONVIF-dienst van deze camera." + }, + "port": { + "label": "ONVIF-poort", + "description": "Poortnummer voor de ONVIF-dienst." + }, + "user": { + "label": "ONVIF-gebruikersnaam", + "description": "Gebruikersnaam voor ONVIF-authenticatie; sommige apparaten vereisen de admin-gebruiker voor ONVIF." + }, + "password": { + "label": "ONVIF-wachtwoord", + "description": "Wachtwoord voor ONVIF-authenticatie." + }, + "tls_insecure": { + "label": "TLS-verificatie uitschakelen", + "description": "TLS-verificatie overslaan en digest-authenticatie uitschakelen voor ONVIF (onveilig; alleen in veilige netwerken)." + }, + "profile": { + "label": "ONVIF-profiel", + "description": "Specifiek ONVIF-mediaprofiel voor PTZ-besturing, gekoppeld via token of naam. Indien niet ingesteld, wordt het eerste profiel met geldige PTZ-configuratie automatisch geselecteerd." + }, + "autotracking": { + "label": "Automatisch volgen", + "description": "Bewegende objecten automatisch volgen en gecentreerd houden in het beeld via PTZ-camerabewegingen.", + "enabled": { + "label": "Automatisch volgen inschakelen", + "description": "Automatisch PTZ-camera volgen van gedetecteerde objecten in- of uitschakelen." + }, + "calibrate_on_startup": { + "label": "Kalibreren bij opstarten", + "description": "PTZ-motorsnelheden meten bij opstarten voor nauwkeurigere volging. Frigate werkt de configuratie bij met movement_weights na kalibratie." + }, + "zooming": { + "label": "Zoommodus", + "description": "Zoomgedrag instellen: disabled (alleen pan/tilt), absolute (meest compatibel) of relative (gelijktijdig pan/tilt/zoom)." + }, + "zoom_factor": { + "label": "Zoomfactor", + "description": "Zoomniveau voor gevolgde objecten instellen. Lagere waarden tonen meer van de scène; hogere waarden zoomen verder in maar kunnen de volging verliezen. Waarden tussen 0,1 en 0,75." + }, + "track": { + "label": "Gevolgde objecten", + "description": "Lijst van objecttypen die automatisch volgen activeren." + }, + "required_zones": { + "label": "Vereiste zones", + "description": "Objecten moeten een van deze zones betreden voordat automatisch volgen begint." + }, + "return_preset": { + "label": "Terugkeer-voorinstelling", + "description": "ONVIF-voorkeuzeinstelling in de camerafirmware om naar terug te keren na het volgen." + }, + "timeout": { + "label": "Terugkeertimeout", + "description": "Dit aantal seconden wachten na het verliezen van de volging voordat de camera naar de voorkeuze-positie terugkeert." + }, + "movement_weights": { + "label": "Bewegingsgewichten", + "description": "Kalibratiewaarden automatisch gegenereerd door camerakalbratie. Niet handmatig aanpassen." + }, + "enabled_in_config": { + "label": "Originele autovolgstatus", + "description": "Intern veld om bij te houden of automatisch volgen was ingeschakeld in de configuratie." + } + }, + "ignore_time_mismatch": { + "label": "Tijdsverschil negeren", + "description": "Tijdsynchronisatieverschillen tussen camera en Frigate-server negeren voor ONVIF-communicatie." + } } } diff --git a/web/public/locales/nl/config/groups.json b/web/public/locales/nl/config/groups.json index 6ecc7a6123..e69cd65051 100644 --- a/web/public/locales/nl/config/groups.json +++ b/web/public/locales/nl/config/groups.json @@ -49,7 +49,7 @@ }, "timestamp_style": { "global": { - "appearance": "Globaal voorkomen" + "appearance": "Algemeen uiterlijk" }, "cameras": { "appearance": "Voorkomen" diff --git a/web/public/locales/nl/config/validation.json b/web/public/locales/nl/config/validation.json index 6ddb7c764b..3c95b49d3d 100644 --- a/web/public/locales/nl/config/validation.json +++ b/web/public/locales/nl/config/validation.json @@ -1,6 +1,6 @@ { "minimum": "Minimale waarde van {{limit}} vereist", - "maximum": "Mag niet meer dan {{limit}} bedragen.", + "maximum": "Mag niet meer dan {{limit}} bedragen", "exclusiveMinimum": "Waarde moet groter zijn dan {{limit}}", "exclusiveMaximum": "Moet minder zijn dan {{limit}}", "minLength": "Moet minstens {{limit}} karakters zijn", diff --git a/web/public/locales/nl/views/chat.json b/web/public/locales/nl/views/chat.json index 0967ef424b..d4ffad1fb8 100644 --- a/web/public/locales/nl/views/chat.json +++ b/web/public/locales/nl/views/chat.json @@ -1 +1,17 @@ -{} +{ + "documentTitle": "Chat - Frigate", + "placeholder": "Stel een vraag...", + "error": "Er is iets misgegaan. Probeer opnieuw.", + "processing": "Verwerken...", + "toolsUsed": "Gebruikt: {{tools}}", + "hideTools": "Gereedschap verbergen", + "call": "Rinkel", + "title": "Frigate Chat", + "subtitle": "Jouw AI assistent voor camera beheer en inzichten", + "result": "Uitkomst", + "arguments": "Argumenten:", + "response": "Antwoord:", + "attachment_chip_remove": "Verwijder bijlage", + "open_in_explore": "Openen in Verken", + "showTools": "Gereedschap tonen" +} diff --git a/web/public/locales/nl/views/classificationModel.json b/web/public/locales/nl/views/classificationModel.json index 7d655b134a..00e6e83285 100644 --- a/web/public/locales/nl/views/classificationModel.json +++ b/web/public/locales/nl/views/classificationModel.json @@ -12,10 +12,10 @@ }, "toast": { "success": { - "deletedCategory_one": "Verwijderde klasse", - "deletedCategory_other": "Verwijderde klassen", - "deletedImage_one": "Verwijderde afbeelding", - "deletedImage_other": "Verwijderde afbeeldingen", + "deletedCategory_one": "Verwijderd {{count}} klasse", + "deletedCategory_other": "Verwijderde {{count}} klassen", + "deletedImage_one": "Verwijderde {{count}} afbeelding", + "deletedImage_other": "Verwijderde {{count}} afbeeldingen", "categorizedImage": "Succesvol geclassificeerde afbeelding", "trainedModel": "Succesvol getraind model.", "trainingModel": "Modeltraining succesvol gestart.", diff --git a/web/public/locales/nl/views/motionSearch.json b/web/public/locales/nl/views/motionSearch.json index 0967ef424b..b289113983 100644 --- a/web/public/locales/nl/views/motionSearch.json +++ b/web/public/locales/nl/views/motionSearch.json @@ -1 +1,65 @@ -{} +{ + "startSearch": "Zoeken Starten", + "searchStarted": "Zoekopdracht gestart", + "searchCancelled": "Zoekopdracht geannuleerd", + "cancelSearch": "Annuleer", + "searching": "Zoekopdracht bezig.", + "searchComplete": "Zoekopdracht voltooid", + "title": "Beweging Zoeken", + "selectCamera": "Beweging Zoeken is aan het laden", + "noResultsYet": "Start een zoekactie om beweging te vinden in de geselecteerde regio", + "noChangesFound": "Geen pixel wijziging gedetecteerd in de geselecteerde regio", + "changesFound_one": "{{count}} bewegingsverandering gevonden", + "changesFound_other": "{{count}} bewegingsveranderingen gevonden", + "framesProcessed": "{{count}} frames verwerkt", + "jumpToTime": "Spring naar deze tijd", + "results": "Resultaten", + "documentTitle": "Beweging Zoeken - Frigate", + "description": "Teken een polygoon om het interessegebied te definieren en specifeer een tijdspanne voor het zoeken in dit gebied.", + "newSearch": "Nieuwe Zoekopdracht", + "clearResults": "Verwijder Resultaten", + "clearROI": "Verwijder Polygoon", + "polygonControls": { + "points_one": "{{count}} punt", + "points_other": "{{count}} punten", + "undo": "Verwijder het laatste punt", + "reset": "Herstel Polygoon" + }, + "dialog": { + "title": "Beweging Zoeken", + "cameraLabel": "Camera" + }, + "timeRange": { + "start": "Starttijd", + "end": "Eindtijd" + }, + "settings": { + "title": "Zoekinstellingen", + "parallelMode": "Parallelle modus", + "parallelModeDesc": "Scan meerdere video segmenten tegelijk (sneller, maar significant meer CPU gebruik)", + "threshold": "Gevoeligheid drempel", + "thresholdDesc": "Lagere waardes detecteren eerder veranderingen (1-255)", + "minArea": "Minimaal wijzigings gebied", + "minAreaDesc": "Minimale percentage van gebied welke moet wijzigen om als significante wijziging aan te merken", + "frameSkip": "Frame overlaan", + "maxResults": "Maximaal aantal resultaten", + "maxResultsDesc": "Stop na dit aantal overeenkomende tijdstempels" + }, + "errors": { + "polygonTooSmall": "De Polygoon moet minstens 3 punten bevatten", + "unknown": "Onbekende fout", + "noCamera": "Selecteer een camera", + "noROI": "Teken een interesse gebied a.u.b.", + "noTimeRange": "Selecteer een tijdsbereik a.u.b.", + "invalidTimeRange": "Eindtijd moet na de starttijd liggen", + "searchFailed": "Zoeken gefaald: {{message}}" + }, + "changePercentage": "{{percentage}}% gewijzigd", + "metrics": { + "title": "Zoek Meetgegevens", + "segmentsScanned": "Gescande segmenten", + "segmentsProcessed": "Verwerkt", + "segmentsSkippedInactive": "Overgeslagen (geen activiteit)", + "segmentsSkippedHeatmap": "Overgeslagen (geen ROI overlap)" + } +} diff --git a/web/public/locales/nl/views/replay.json b/web/public/locales/nl/views/replay.json index 0967ef424b..143c16ec48 100644 --- a/web/public/locales/nl/views/replay.json +++ b/web/public/locales/nl/views/replay.json @@ -1 +1,59 @@ -{} +{ + "websocket_messages": "Berichten", + "dialog": { + "camera": "Broncamera", + "preset": { + "1m": "Laatste 1 minuut", + "5m": "Laatste 5 minuten", + "timeline": "Vanaf tijdlijn", + "custom": "Aangepast" + }, + "title": "Start Debug Herhaling", + "timeRange": "Tijdsbereik", + "startButton": "Start herhaling", + "selectFromTimeline": "Selecteer", + "starting": "Herhaling starten...", + "startLabel": "Start", + "endLabel": "Einde", + "description": "Maak een tijdelijke herhalingscamera die historische beelden in een lus afspeelt voor het debuggen van objectdetectie- en trackingproblemen. De herhalingscamera gebruikt dezelfde detectieconfiguratie als de broncamera. Kies een tijdsbereik om te beginnen.", + "toast": { + "error": "Kan debugherhaling niet starten: {{error}}", + "alreadyActive": "Er is al een herhalingssessie actief", + "stopError": "Kan debugherhaling niet stoppen: {{error}}", + "goToReplay": "Ga naar herhaling" + } + }, + "title": "Debug Herhaling", + "description": "Herhaal camera-opnames voor foutopsporing. De objectlijst toont een vertraagde samenvatting van gedetecteerde objecten en het tabblad Berichten toont een stream van interne Frigate-berichten uit de herhaalde beelden.", + "page": { + "noSession": "Geen actieve debugherhalingssessie", + "noSessionDesc": "Start een debugherhaling vanuit de Geschiedenis-weergave door op de knop Acties in de werkbalk te klikken en Debug Herhaling te kiezen.", + "goToRecordings": "Ga naar Geschiedenis", + "preparingClip": "Clip voorbereiden…", + "preparingClipDesc": "Frigate voegt opnames samen voor het geselecteerde tijdsbereik. Dit kan bij langere bereiken even duren.", + "startingCamera": "Debugherhaling starten…", + "startError": { + "title": "Kan debugherhaling niet starten", + "back": "Terug naar Geschiedenis" + }, + "sourceCamera": "Broncamera", + "replayCamera": "Herhalingscamera", + "initializingReplay": "Debugherhaling initialiseren...", + "stoppingReplay": "Debugherhaling stoppen...", + "stopReplay": "Stop herhaling", + "confirmStop": { + "title": "Debugherhaling stoppen?", + "description": "Dit stopt de sessie en ruimt alle tijdelijke gegevens op. Weet je het zeker?", + "confirm": "Stop herhaling", + "cancel": "Annuleren" + }, + "activity": "Activiteit", + "objects": "Objectlijst", + "audioDetections": "Audiodetecties", + "noActivity": "Geen activiteit gedetecteerd", + "activeTracking": "Actieve tracking", + "noActiveTracking": "Geen actieve tracking", + "configuration": "Configuratie", + "configurationDesc": "Stem de instellingen voor bewegingsdetectie en objecttracking van de debugherhalingscamera nauwkeurig af. Wijzigingen worden niet opgeslagen in je Frigate-configuratiebestand." + } +} diff --git a/web/public/locales/nl/views/settings.json b/web/public/locales/nl/views/settings.json index 1425acd22f..1deff528c8 100644 --- a/web/public/locales/nl/views/settings.json +++ b/web/public/locales/nl/views/settings.json @@ -3,7 +3,7 @@ "default": "Instellingen - Frigate", "camera": "Camera-instellingen - Frigate", "authentication": "Authenticatie-instellingen - Frigate", - "motionTuner": "Motion Tuner - Frigate", + "motionTuner": "Beweging Tuner - Frigate", "classification": "Classificatie-instellingen - Frigate", "masksAndZones": "Masker- en zone-editor - Frigate", "object": "Foutopsporing Frigate", @@ -12,11 +12,12 @@ "notifications": "Meldingsinstellingen - Frigate", "enrichments": "Verrijkingsinstellingen - Frigate", "cameraManagement": "Camera's beheren - Frigate", - "cameraReview": "Camera Review Instellingen - Frigate", - "globalConfig": "Globale configuratie - Frigate", + "cameraReview": "Camera Beoordeling Instellingen - Frigate", + "globalConfig": "Globaale configuratie - Frigate", "cameraConfig": "Camera-instellingen - Frigate", "maintenance": "Onderhoud - Frigate", - "profiles": "Profielen - Frigate" + "profiles": "Profielen - Frigate", + "detectorsAndModel": "Detectoren en model - Frigate" }, "menu": { "ui": "Gebruikersinterface", @@ -34,7 +35,7 @@ "cameraManagement": "Beheer", "cameraReview": "Beoordeel", "general": "Algemeen", - "globalConfig": "Globale configuratie", + "globalConfig": "Globaale configuratie", "system": "Systeem", "integrations": "Integraties", "profileSettings": "Profielinstellingen", @@ -76,7 +77,7 @@ "systemMqtt": "MQTT", "systemEnvironmentVariables": "Omgevingsvariabelen", "systemTelemetry": "Telemetrie", - "systemBirdseye": "Overzicht", + "systemBirdseye": "Birdseye", "systemFfmpeg": "FFmpeg", "systemDetectorHardware": "Detectie hardware", "cameraFaceRecognition": "Gezichtsherkenning", @@ -88,7 +89,12 @@ "cameraOnvif": "ONVIF", "cameraUi": "Camera UI", "cameraTimestampStyle": "Tijdstempel stijl", - "maintenance": "Onderhoud" + "maintenance": "Onderhoud", + "systemDetectorsAndModel": "Detectoren en model", + "cameraBirdseye": "Birdseye", + "cameraMqtt": "Camera MQTT", + "mediaSync": "Media-synchronisatie", + "regionGrid": "Regio-raster" }, "dialog": { "unsavedChanges": { @@ -352,12 +358,27 @@ "zone": "zone", "motion_mask": "bewegingsmasker", "object_mask": "objectmasker" + }, + "revertOverride": { + "title": "Terugzetten naar basisconfiguratie", + "desc": "Dit verwijdert de profieloverschrijving voor de {{type}} {{name}} en zet deze terug naar de basisconfiguratie." } }, "speed": { "error": { "mustBeGreaterOrEqualTo": "De snelheidsdrempel moet groter dan of gelijk zijn aan 0,1." } + }, + "id": { + "error": { + "mustNotBeEmpty": "ID mag niet leeg zijn.", + "alreadyExists": "Er bestaat al een masker met deze ID voor deze camera." + } + }, + "name": { + "error": { + "mustNotBeEmpty": "Naam mag niet leeg zijn." + } } }, "zones": { @@ -411,6 +432,10 @@ "allObjects": "Alle objecten", "toast": { "success": "Zone ({{zoneName}}) is opgeslagen." + }, + "enabled": { + "title": "Ingeschakeld", + "description": "Of deze zone actief en ingeschakeld is in het configuratiebestand. Als deze is uitgeschakeld, kan deze niet via MQTT worden ingeschakeld. Uitgeschakelde zones worden tijdens runtime genegeerd." } }, "motionMasks": { @@ -439,7 +464,13 @@ "noName": "Bewegingsmasker is opgeslagen." } }, - "add": "Nieuw bewegingsmasker" + "add": "Nieuw bewegingsmasker", + "defaultName": "Beweging Mask {{number}}", + "name": { + "title": "Name", + "description": "Een optionele vriendelijke naam voor dit bewegingsmasker.", + "placeholder": "Voer een naam in..." + } }, "objectMasks": { "label": "Objectmaskers", @@ -464,11 +495,26 @@ "point_other": "{{count}} punten", "clickDrawPolygon": "Klik om een polygoon op de afbeelding te tekenen.", "context": "Objectfiltermaskers worden gebruikt om valse positieven uit te filteren voor een bepaald objecttype op basis van locatie.", - "edit": "Objectmasker bewerken" + "edit": "Objectmasker bewerken", + "name": { + "title": "Name", + "description": "Een optionele vriendelijke naam voor dit objectmasker.", + "placeholder": "Voer een naam in..." + } }, "restart_required": "Herstart vereist (maskers/zones gewijzigd)", "motionMaskLabel": "Bewegingsmasker {{number}}", - "objectMaskLabel": "Objectmasker {{number}} ({{label}})" + "objectMaskLabel": "Objectmasker {{number}}", + "disabledInConfig": "Item is uitgeschakeld in het configuratiebestand", + "addDisabledProfile": "Voeg dit eerst toe aan de basisconfiguratie en overschrijf het daarna in het profiel", + "profileBase": "(basis)", + "profileOverride": "(overschrijving)", + "masks": { + "enabled": { + "title": "Ingeschakeld", + "description": "Of dit masker is ingeschakeld in het configuratiebestand. Als het is uitgeschakeld, kan het niet via MQTT worden ingeschakeld. Uitgeschakelde maskers worden tijdens runtime genegeerd." + } + } }, "motionDetectionTuner": { "title": "Bewegingsdetectie-afsteller", @@ -500,11 +546,11 @@ "objectList": "Objectenlijst", "noObjects": "Geen objecten", "boundingBoxes": { - "title": "Objectkaders", + "title": "Bewegingskaders", "desc": "Toon objectkaders rond gevolgde objecten", "colors": { "label": "Kleuren van objectkaders", - "info": "
  • Bij het opstarten wordt er een andere kleur toegewezen aan elk objectlabel.
  • Een dunne donkerblauwe lijn geeft aan dat het object op dit moment niet wordt gedetecteerd.
  • Een dunne grijze lijn geeft aan dat het object als stilstaand wordt herkend.
  • Een dikke lijn geeft aan dat het object het doelwit is van automatische tracking (indien ingeschakeld).
  • " + "info": "
  • Bij het opstarten wordt er een andere kleur toegewezen aan elk objectlabel
  • Een dunne donkerblauwe lijn geeft aan dat het object op dit moment niet wordt gedetecteerd
  • Een dunne grijze lijn geeft aan dat het object als stilstaand wordt herkend
  • Een dikke lijn geeft aan dat het object het doelwit is van automatische tracking (indien ingeschakeld)
  • " } }, "timestamp": { @@ -646,14 +692,14 @@ "desc": "Machtigingen bijwerken voor {{username}}", "title": "Gebruikersrol wijzigen", "roleInfo": { - "intro": "Selecteer een gepaste rol voor deze gebruiker:", + "intro": "Selectereneer een gepaste rol voor deze gebruiker:", "admin": "Beheerder", "adminDesc": "Volledige toegang tot alle functies.", "viewer": "Kijker", "viewerDesc": "Alleen toegang tot Live-dashboards, Beoordelen, Verkennen en Exports.", "customDesc": "Aangepaste rol met specifieke cameratoegang." }, - "select": "Selecteer een rol" + "select": "Selectereneer een rol" }, "passwordSetting": { "setPassword": "Wachtwoord instellen", @@ -681,7 +727,7 @@ "desc": "Webpushmeldingen vereisen een veilige omgeving (https://…). Dit is een beperking van de browser. Open Frigate via een beveiligde verbinding om meldingen te kunnen ontvangen." }, "globalSettings": { - "title": "Globale instellingen", + "title": "Globaale instellingen", "desc": "Meldingen voor specifieke camera's op alle geregistreerde apparaten tijdelijk uitschakelen." }, "email": { @@ -691,7 +737,7 @@ }, "cameras": { "noCameras": "Geen camera's beschikbaar", - "desc": "Selecteer voor welke camera's je meldingen wilt inschakelen.", + "desc": "Selectereneer voor welke camera's je meldingen wilt inschakelen.", "title": "Camera's" }, "deviceSpecific": "Apparaatspecifieke instellingen", @@ -760,6 +806,14 @@ "plusModelType": { "baseModel": "Basismodel", "userModel": "Verfijnd" + }, + "noModelLoaded": "Er is momenteel geen Frigate+-model geladen.", + "selectModel": "Selecteren a model", + "noModelsAvailable": "Geen modellen beschikbaar", + "filter": { + "ariaLabel": "Modellen filteren op type", + "baseModels": "Basismodellen", + "fineTunedModels": "Verfijnde modellen" } }, "toast": { @@ -767,7 +821,15 @@ "error": "Configuratiewijzigingen konden niet worden opgeslagen: {{errorMessage}}" }, "restart_required": "Herstart vereist (Frigate+ model gewijzigd)", - "unsavedChanges": "Niet-opgeslagen wijzigingen in Frigate+ instellingen" + "unsavedChanges": "Niet-opgeslagen wijzigingen in Frigate+ instellingen", + "description": "Frigate+ is een abonnementsdienst die toegang biedt tot extra functies en mogelijkheden voor je Frigate-installatie, waaronder het gebruik van aangepaste objectdetectiemodellen die op je eigen gegevens zijn getraind. Je kunt je Frigate+-modelinstellingen hier beheren.", + "cardTitles": { + "api": "API", + "currentModel": "Huidig model", + "otherModels": "Andere modellen", + "configuration": "Configuratie" + }, + "changeInDetectorsAndModel": "Van model wisselen" }, "enrichments": { "semanticSearch": { @@ -888,13 +950,13 @@ }, "type": { "title": "Type", - "placeholder": "Selecteer het type trigger", + "placeholder": "Selectereneer het type trigger", "description": "Activeer wanneer een vergelijkbare beschrijving van een gevolgd object wordt gedetecteerd", "thumbnail": "Activeer wanneer een vergelijkbare thumbnail van een gevolgd object wordt gedetecteerd" }, "content": { "title": "Inhoud", - "imagePlaceholder": "Selecteer een thumbnail", + "imagePlaceholder": "Selectereneer een thumbnail", "textPlaceholder": "Tekst invoeren", "imageDesc": "Alleen de meest recente 100 thumbnails worden weergegeven. Als je de gewenste thumbnail niet kunt vinden, bekijk dan eerdere objecten in Verkennen en stel daar een trigger in via het menu.", "textDesc": "Voer tekst in om deze actie te activeren wanneer een vergelijkbare beschrijving van een gevolgd object wordt gedetecteerd.", @@ -1013,7 +1075,7 @@ }, "cameras": { "title": "Camera's", - "desc": "Selecteer de camera's waartoe deze rol toegang heeft. Er is minimaal één camera vereist.", + "desc": "Selectereneer de camera's waartoe deze rol toegang heeft. Er is minimaal één camera vereist.", "required": "Er moet minimaal één camera worden geselecteerd." } } @@ -1052,9 +1114,9 @@ "usernamePlaceholder": "Optioneel", "password": "Wachtwoord", "passwordPlaceholder": "Optioneel", - "selectTransport": "Selecteer transportprotocol", + "selectTransport": "Selectereneer transportprotocol", "cameraBrand": "Cameramerk", - "selectBrand": "Selecteer cameramerk voor URL-sjabloon", + "selectBrand": "Selectereneer cameramerk voor URL-sjabloon", "customUrl": "Aangepaste stream-URL", "brandInformation": "Merkinformatie", "brandUrlFormat": "Voor camera's met het RTSP URL-formaat als: {{exampleUrl}}", @@ -1067,7 +1129,7 @@ "noSnapshot": "Er kan geen snapshot worden opgehaald uit de geconfigureerde stream." }, "errors": { - "brandOrCustomUrlRequired": "Selecteer een cameramerk met host/IP of kies 'Overig' voor een aangepaste URL", + "brandOrCustomUrlRequired": "Selectereneer een cameramerk met host/IP of kies 'Overig' voor een aangepaste URL", "nameRequired": "Cameranaam is vereist", "nameLength": "De cameranaam mag maximaal 64 tekens lang zijn", "invalidCharacters": "Cameranaam bevat ongeldige tekens", @@ -1137,7 +1199,7 @@ "retry": "Opnieuw proberen", "testing": { "probingMetadata": "Camera-metadata onderzoeken...", - "fetchingSnapshot": "Camerasnapshot ophalen..." + "fetchingSnapshot": "Camera'snapshot ophalen..." }, "probeFailed": "Het testen van de camera is mislukt: {{error}}", "probingDevice": "Onderzoekapparaat...", @@ -1208,19 +1270,19 @@ }, "ffmpegModule": "Gebruik stream-compatibiliteitsmodus", "ffmpegModuleDescription": "Als de stream na meerdere pogingen niet wordt geladen, probeer dit dan in te schakelen. Wanneer deze optie is ingeschakeld, gebruikt Frigate de ffmpeg-module samen met go2rtc. Dit kan zorgen voor een betere compatibiliteit met sommige camerastreams.", - "streamsTitle": "Camerastreams", + "streamsTitle": "Camera'streams", "addStream": "Stream toevoegen", "addAnotherStream": "Voeg een extra stream toe", "streamUrl": "Stream-URL", "streamUrlPlaceholder": "rtsp://gebruikersnaam:wachtwoord@host:poort/pad", - "selectStream": "Selecteer een stream", + "selectStream": "Selectereneer een stream", "searchCandidates": "Zoek kandidaten...", "noStreamFound": "Geen stream gevonden", "url": "URL", "resolution": "Resolutie", - "selectResolution": "Selecteer resolutie", + "selectResolution": "Selectereneer resolutie", "quality": "Kwaliteit", - "selectQuality": "Selecteer kwaliteit", + "selectQuality": "Selectereneer kwaliteit", "roleLabels": { "detect": "Objectdetectie", "record": "Opname", @@ -1291,7 +1353,8 @@ }, "hikvision": { "substreamWarning": "Substream 1 is beperkt tot een lage resolutie. Veel Hikvision-camera’s ondersteunen extra substreams die in de instellingen van de camera ingeschakeld moeten worden. Het wordt aanbevolen deze streams te controleren en te gebruiken indien beschikbaar." - } + }, + "resolutionUnknown": "De resolutie van deze stream kon niet worden uitgelezen. Stel de detectieresolutie handmatig in via Instellingen of in je configuratie." } } }, @@ -1299,11 +1362,22 @@ "title": "Camera’s beheren", "addCamera": "Nieuwe camera toevoegen", "editCamera": "Camera bewerken:", - "selectCamera": "Selecteer een camera", + "selectCamera": "Selectereneer een camera", "backToSettings": "Terug naar camera-instellingen", "streams": { "title": "Camera's in-/uitschakelen", - "desc": "Schakel een camera tijdelijk uit totdat Frigate opnieuw wordt gestart. Het uitschakelen van een camera stopt de verwerking van de streams van deze camera volledig door Frigate. Detectie, opname en foutopsporing zijn dan niet beschikbaar.
    Let op: dit schakelt go2rtc-restreams niet uit." + "desc": "Schakel een camera tijdelijk uit totdat Frigate opnieuw wordt gestart. Het uitschakelen van een camera stopt de verwerking van de streams van deze camera volledig door Frigate. Detectie, opname en foutopsporing zijn dan niet beschikbaar.
    Let op: dit schakelt go2rtc-restreams niet uit.", + "enableLabel": "Ingeschakeld cameras", + "enableDesc": "Schakel een ingeschakelde camera tijdelijk uit totdat Frigate opnieuw wordt gestart. Het uitschakelen van een camera stopt de verwerking van de streams van deze camera volledig. Detectie, opname en foutopsporing zijn dan niet beschikbaar.
    Let op: dit schakelt go2rtc-restreams niet uit.", + "disableLabel": "Uitgeschakeld cameras", + "disableDesc": "Schakel een camera in die momenteel niet zichtbaar is in de UI en is uitgeschakeld in de configuratie. Na het inschakelen is een herstart van Frigate vereist.", + "enableSuccess": "{{cameraName}} ingeschakeld in de configuratie. Herstart Frigate om de wijzigingen toe te passen.", + "friendlyName": { + "edit": "Cameranaam bewerken", + "title": "Weergavenaam bewerken", + "description": "Stel de vriendelijke naam in die voor deze camera in de Frigate-UI wordt weergegeven. Laat leeg om de camera-ID te gebruiken.", + "rename": "Hernoemen" + } }, "cameraConfig": { "add": "Camera toevoegen", @@ -1333,6 +1407,35 @@ "toast": { "success": "Camera {{cameraName}} is succesvol opgeslagen" } + }, + "description": "Voeg camera's toe, bewerk of verwijder ze, bepaal welke camera's zijn ingeschakeld en configureer overschrijvingen per profiel en cameratype. Kies voor streams, detectie, beweging en andere cameraspecifieke instellingen de betreffende sectie onder Cameraconfiguratie.", + "deleteCamera": "Verwijderen Camera", + "deleteCameraDialog": { + "title": "Verwijderen Camera", + "description": "Het verwijderen van een camera verwijdert permanent alle opnames, gevolgde objecten en configuratie voor die camera. Eventuele go2rtc-streams die aan deze camera zijn gekoppeld, moeten mogelijk nog handmatig worden verwijderd.", + "selectPlaceholder": "Kies camera...", + "confirmTitle": "Weet je het zeker?", + "confirmWarning": "Het verwijderen van {{cameraName}} kan niet ongedaan worden gemaakt.", + "deleteExports": "Verwijder ook exports voor deze camera", + "confirmButton": "Verwijderen Permanently", + "success": "Camera {{cameraName}} is succesvol verwijderd", + "error": "Kan camera {{cameraName}} niet verwijderen" + }, + "profiles": { + "title": "Profiel Camera Overrides", + "selectLabel": "Selecteren profile", + "description": "Configureer welke camera's zijn ingeschakeld of uitgeschakeld wanneer een profiel wordt geactiveerd. Camera's die op \"Overnemen\" staan, behouden hun basisstatus.", + "inherit": "Overnemen", + "enabled": "Ingeschakeld", + "disabled": "Uitgeschakeld" + }, + "cameraType": { + "title": "Cameratype", + "label": "Cameratype", + "description": "Stel het type voor elke camera in. Speciale LPR-camera's zijn camera's met één doel en krachtige optische zoom om kentekens van voertuigen op afstand vast te leggen. De meeste camera's moeten het normale cameratype gebruiken, tenzij de camera specifiek voor LPR is bedoeld en een nauwkeurig gericht beeld op kentekens heeft.", + "normal": "Normal", + "dedicatedLpr": "Speciale LPR", + "saveSuccess": "Cameratype voor {{cameraName}} bijgewerkt. Herstart Frigate om de wijzigingen toe te passen." } }, "cameraReview": { @@ -1365,7 +1468,7 @@ }, "unsavedChanges": "Niet-opgeslagen classificatie-instellingen voor {{camera}}", "selectAlertsZones": "Zones selecteren voor meldingen", - "selectDetectionsZones": "Selecteer zones voor detecties", + "selectDetectionsZones": "Selectereneer zones voor detecties", "limitDetections": "Beperk detecties tot specifieke zones", "toast": { "success": "Configuratie voor beoordelingsclassificatie is opgeslagen. Herstart Frigate om de wijzigingen toe te passen." @@ -1376,6 +1479,562 @@ "overriddenGlobal": "Overschreven (globaal)", "overriddenGlobalTooltip": "Deze camera heeft voorrang op de algemene configuratie-instellingen in dit gedeelte", "overriddenBaseConfig": "Overschreven (basis configuratie)", - "overriddenBaseConfigTooltip": "Het profiel {{profile}} heeft voorrang op de configuratie-instellingen in dit gedeelte" + "overriddenBaseConfigTooltip": "Het profiel {{profile}} heeft voorrang op de configuratie-instellingen in dit gedeelte", + "overriddenGlobalHeading_one": "Deze camera overschrijft {{count}} veld uit de globale configuratie:", + "overriddenGlobalHeading_other": "Deze camera overschrijft {{count}} velden uit de globale configuratie:", + "overriddenGlobalNoDeltas": "Deze camera overschrijft de globale configuratie, maar er zijn geen afwijkende veldwaarden.", + "overriddenBaseConfigHeading_one": "Het profiel {{profile}} overschrijft {{count}} veld uit de basisconfiguratie:", + "overriddenBaseConfigHeading_other": "Het profiel {{profile}} overschrijft {{count}} velden uit de basisconfiguratie:", + "overriddenBaseConfigNoDeltas": "Het profiel {{profile}} overschrijft deze sectie, maar er zijn geen afwijkende veldwaarden ten opzichte van de basisconfiguratie.", + "overriddenInCameras": { + "label_one": "Overschreven in {{count}} camera", + "label_other": "Overschreven in {{count}} camera's", + "tooltip_one": "{{count}} camera overschrijft waarden in deze sectie. Klik om details te bekijken.", + "tooltip_other": "{{count}} camera's overschrijven waarden in deze sectie. Klik om details te bekijken.", + "heading_one": "Deze globale sectie bevat velden die in {{count}} camera worden overschreven.", + "heading_other": "Deze globale sectie bevat velden die in {{count}} camera's worden overschreven.", + "othersField_one": "{{count}} andere", + "othersField_other": "{{count}} andere", + "profilePrefix": "{{profile}}-profiel: {{fields}}" + } + }, + "saveAllPreview": { + "title": "Wijzigingen die worden opgeslagen", + "triggerLabel": "Beoordeling pending changes", + "empty": "Geen openstaande wijzigingen.", + "scope": { + "label": "Bereik", + "global": "Globaal", + "camera": "Camera: {{cameraName}}" + }, + "profile": { + "label": "Profiel" + }, + "field": { + "label": "Veld" + }, + "value": { + "label": "Nieuwe waarde", + "reset": "Resetten" + } + }, + "timestampPosition": { + "tl": "Linksboven", + "tr": "Rechtsboven", + "bl": "Linksonder", + "br": "Rechtsonder" + }, + "detectorsAndModel": { + "title": "Detectoren en model", + "description": "Configureer de detector-backend die objectdetectie uitvoert en het model dat daarbij wordt gebruikt. Wijzigingen worden samen opgeslagen zodat de detector en het model gesynchroniseerd blijven.", + "cardTitles": { + "detector": "Detector-hardware", + "model": "Detectie Model" + }, + "tabs": { + "plus": "Frigate+", + "custom": "Aangepast Model" + }, + "mismatch": { + "warning": "Het huidige Frigate+-model \"{{model}}\" vereist de {{required}}-detector. Kies hieronder een compatibel model of schakel over naar Aangepast model voordat je opslaat." + }, + "plusModel": { + "requiresDetector": "Vereist: {{detector}}", + "noModelSelected": "Selecteren a Frigate+ model" + }, + "toast": { + "saveSuccess": "Detector- en modelinstellingen zijn opgeslagen. Herstart Frigate om de wijzigingen toe te passen.", + "saveError": "Kan detector- en modelinstellingen niet opslaan" + }, + "unsavedChanges": "Niet-opgeslagen wijzigingen aan detector en model", + "restartRequired": "Herstart vereist (detector of model gewijzigd)" + }, + "maintenance": { + "title": "Onderhoud", + "sync": { + "title": "Media synchroniseren", + "desc": "Frigate ruimt media periodiek op volgens je retentieconfiguratie. Het is normaal dat er tijdens het gebruik van Frigate enkele verweesde bestanden ontstaan. Gebruik deze functie om verweesde mediabestanden van de schijf te verwijderen die niet langer in de database worden gebruikt.", + "started": "De mediasynchronisatie is gestart.", + "alreadyRunning": "Er wordt al een synchronisatietaak uitgevoerd", + "error": "Kan synchronisatie niet starten", + "currentStatus": "Status", + "jobId": "Verwerkingsnummer", + "startTime": "Starttijd", + "endTime": "Eindtijd", + "statusLabel": "Status", + "results": "Resultaten", + "errorLabel": "Fout", + "mediaTypes": "Mediatypen", + "allMedia": "Alle media", + "dryRun": "Proefdraaien", + "dryRunEnabled": "Er worden geen bestanden verwijderd", + "dryRunDisabled": "Bestanden worden verwijderd", + "force": "Gedwongen", + "forceDesc": "Negeer de veiligheidsdrempel en voltooi de synchronisatie, zelfs als meer dan 50% van de bestanden zou worden verwijderd.", + "verbose": "Uitgebreid", + "verboseDesc": "Schrijf een volledige lijst van verweesde bestanden naar de schijf ter controle.", + "running": "Synchroniseren bezig...", + "start": "Synchronisatie starten", + "inProgress": "Synchronisatie is bezig. Deze pagina is uitgeschakeld.", + "status": { + "queued": "In de wachtrij", + "running": "Bezig", + "completed": "Voltooid", + "failed": "Mislukt", + "notRunning": "Niet actief" + }, + "resultsFields": { + "filesChecked": "Gecontroleerde bestanden", + "orphansFound": "Wezen gevonden", + "orphansDeleted": "Orphans Verwijderend", + "aborted": "Afgebroken. Het verwijderen zou de veiligheidsdrempel overschrijden.", + "error": "Fout", + "totals": "Totalen" + }, + "event_snapshots": "Snapshots van gevolgde objecten", + "event_thumbnails": "Thumbnails van gevolgde objecten", + "review_thumbnails": "Beoordeling Thumbnails", + "previews": "Vooruitblikken", + "exports": "Exports", + "recordings": "Opnames" + }, + "regionGrid": { + "title": "Regio-raster", + "desc": "Het region grid is een optimalisatie die leert waar objecten van verschillende groottes meestal verschijnen in het gezichtsveld van elke camera. Frigate gebruikt deze gegevens om detectieregio's efficiënt te schalen. Het grid wordt na verloop van tijd automatisch opgebouwd uit gegevens van gevolgde objecten.", + "clear": "Raster van de regio wissen", + "clearConfirmTitle": "Raster van de regio wissen", + "clearConfirmDesc": "Het wissen van het region grid wordt niet aanbevolen, tenzij je onlangs de modelgrootte van je detector hebt gewijzigd of de fysieke positie van je camera hebt aangepast en problemen hebt met objecttracking. Het grid wordt na verloop van tijd automatisch opnieuw opgebouwd terwijl objecten worden gevolgd. Een herstart van Frigate is vereist om de wijzigingen toe te passen.", + "clearSuccess": "Het raster van de regio is succesvol gewist", + "clearError": "Kan region grid niet wissen", + "restartRequired": "Herstart vereist om wijzigingen aan het region grid toe te passen" + } + }, + "configForm": { + "global": { + "title": "Globaal Instellingen", + "description": "Deze instellingen gelden voor alle camera's, tenzij ze worden overschreven in de cameraspecifieke instellingen." + }, + "camera": { + "title": "Camera Instellingen", + "description": "Deze instellingen gelden alleen voor deze camera en overschrijven de globale instellingen.", + "noCameras": "Geen camera's beschikbaar" + }, + "advancedSettingsCount": "Advanced Instellingen ({{count}})", + "advancedCount": "Geavanceerd ({{count}})", + "showAdvanced": "Show Advanced Instellingen", + "tabs": { + "sharedDefaults": "Shared Standaards", + "system": "System", + "integrations": "Integraties" + }, + "additionalProperties": { + "keyLabel": "Sleutel", + "valueLabel": "Waarde", + "keyPlaceholder": "Nieuwe sleutel", + "remove": "Verwijderen" + }, + "knownPlates": { + "namePlaceholder": "bijv. de auto van mijn vrouw", + "platePlaceholder": "Kenteken of reguliere expressie" + }, + "timezone": { + "defaultOption": "Tijdzone van browser gebruiken" + }, + "roleMap": { + "empty": "Geen rolkoppelingen", + "roleLabel": "Role", + "groupsLabel": "Groepen", + "addMapping": "Rolkoppeling toevoegen", + "remove": "Verwijderen" + }, + "ffmpegArgs": { + "preset": "Voorinstelling", + "manual": "Handmatige argumenten", + "inherit": "Overnemen van camera-instelling", + "none": "Geen", + "useGlobalSetting": "Overnemen uit algemene instelling", + "selectPreset": "Selecteren preset", + "manualPlaceholder": "Voer FFmpeg-argumenten in", + "presetLabels": { + "preset-rpi-64-h264": "Raspberry Pi (H.264)", + "preset-rpi-64-h265": "Raspberry Pi (H.265)", + "preset-vaapi": "VAAPI (Intel/AMD GPU)", + "preset-intel-qsv-h264": "Intel QuickSync (H.264)", + "preset-intel-qsv-h265": "Intel QuickSync (H.265)", + "preset-nvidia": "NVIDIA GPU", + "preset-jetson-h264": "NVIDIA Jetson (H.264)", + "preset-jetson-h265": "NVIDIA Jetson (H.265)", + "preset-rkmpp": "Rockchip RKMPP", + "preset-http-jpeg-generic": "HTTP JPEG (Generiek)", + "preset-http-mjpeg-generic": "HTTP MJPEG (Generiek)", + "preset-http-reolink": "HTTP - Reolink Camera's", + "preset-rtmp-generic": "RTMP (Generiek)", + "preset-rtsp-generic": "RTSP (Generiek)", + "preset-rtsp-restream": "RTSP - her-stream van go2rtc", + "preset-rtsp-restream-low-latency": "RTSP - her-stream van go2rtc (Lage latentie)", + "preset-rtsp-udp": "RTSP - UDP", + "preset-rtsp-blue-iris": "RTSP - Blue Iris", + "preset-record-generic": "Opnemen (generiek, geen audio)", + "preset-record-generic-audio-copy": "Opnemen (Generiek + Audio kopiëren)", + "preset-record-generic-audio-aac": "Opnemen (generiek + audio naar AAC)", + "preset-record-mjpeg": "Record - MJPEG Camera's", + "preset-record-jpeg": "Record - JPEG Camera's", + "preset-record-ubiquiti": "Record - Ubiquiti Camera's" + } + }, + "cameraInputs": { + "itemTitle": "Stream {{index}}" + }, + "restartRequiredField": "Herstart vereist", + "restartRequiredFooter": "Configuratie changed - Restart required", + "sections": { + "detect": "Detectie", + "record": "Opname", + "snapshots": "Snapshots", + "motion": "Beweging", + "objects": "Objecten", + "review": "Beoordeling", + "audio": "Audio", + "notifications": "Meldingen", + "live": "Live weergaven", + "timestamp_style": "Tijdstempels", + "mqtt": "MQTT", + "database": "Database", + "telemetry": "Telemetrie", + "auth": "Authenticatie", + "tls": "TLS", + "proxy": "Proxy", + "go2rtc": "go2rtc", + "ffmpeg": "FFmpeg", + "detectors": "Detectoren", + "model": "Model", + "semantic_search": "Semantic Zoeken", + "genai": "GenAI", + "face_recognition": "Gezichtsherkenning", + "lpr": "Kentekenherkenning", + "birdseye": "Birdseye", + "masksAndZones": "Maskers / Zones" + }, + "detect": { + "title": "Detectie Instellingen" + }, + "detectors": { + "title": "Detector Instellingen", + "singleType": "Er is slechts één {{type}}-detector toegestaan.", + "keyRequired": "Detectornaam is vereist.", + "keyDuplicate": "De naam van de detector bestaat al.", + "noSchema": "Geen detectorschema's beschikbaar.", + "none": "Geen detectorinstanties geconfigureerd.", + "add": "Detector toevoegen", + "addCustomKey": "Aangepaste sleutel toevoegen" + }, + "record": { + "title": "Opname Instellingen" + }, + "snapshots": { + "title": "Snapshot Instellingen" + }, + "motion": { + "title": "Beweging Instellingen" + }, + "objects": { + "title": "Object Instellingen" + }, + "audioLabels": { + "summary": "{{count}} audiolabels geselecteerd", + "empty": "Geen audiolabels beschikbaar" + }, + "objectLabels": { + "summary": "{{count}} objecttypen geselecteerd", + "empty": "Geen objectlabels beschikbaar" + }, + "reviewLabels": { + "summary": "{{count}} labels geselecteerd", + "empty": "Geen labels beschikbaar" + }, + "filters": { + "objectFieldLabel": "{{field}} voor {{label}}" + }, + "zoneNames": { + "summary": "{{count}} geselecteerd", + "empty": "Geen zones beschikbaar" + }, + "inputRoles": { + "summary": "{{count}} rollen geselecteerd", + "empty": "Geen rollen beschikbaar", + "options": { + "detect": "Detecteren", + "record": "Opnemen", + "audio": "Audio" + } + }, + "genaiRoles": { + "options": { + "embeddings": "Embedding", + "descriptions": "Beschrijvingen", + "chat": "Chat" + } + }, + "semanticSearchModel": { + "placeholder": "Selecteren model…", + "builtIn": "Ingebouwde modellen", + "genaiProviders": "Aanbieders van generatieve AI" + }, + "review": { + "title": "Beoordeling Instellingen" + }, + "audio": { + "title": "Audio Instellingen" + }, + "notifications": { + "title": "Melding Instellingen" + }, + "live": { + "title": "Live View Instellingen" + }, + "timestamp_style": { + "title": "Timestamp Instellingen" + }, + "searchPlaceholder": "Zoeken...", + "addCustomLabel": "Aangepast label toevoegen...", + "genaiModel": { + "placeholder": "Selecteren model…", + "search": "Zoeken models…", + "noModels": "Geen modellen beschikbaar" + } + }, + "globalConfig": { + "title": "Globaal Configuratie", + "description": "Configureer globale instellingen die op alle camera's van toepassing zijn, tenzij ze worden overschreven.", + "toast": { + "success": "Globaal settings saved successfully", + "error": "Kan globale instellingen niet opslaan", + "validationError": "Validatie is mislukt" + } + }, + "cameraConfig": { + "title": "Camera Configuratie", + "description": "Configure settings for individual cameras. Instellingen override global defaults.", + "overriddenBadge": "Overschreven", + "resetToGlobal": "Resetten to Globaal", + "toast": { + "success": "Camera-instellingen zijn succesvol opgeslagen", + "error": "Kan camera-instellingen niet opslaan" + } + }, + "toast": { + "success": "Instellingen saved successfully", + "applied": "Instellingen applied successfully", + "successRestartRequired": "Instellingen saved successfully. Restart Frigate to apply your changes.", + "error": "Kan instellingen niet opslaan", + "validationError": "Validatie mislukt: {{message}}", + "resetSuccess": "Resetten to global defaults", + "resetError": "Kan instellingen niet resetten", + "saveAllSuccess_one": "Opslaand {{count}} section successfully.", + "saveAllSuccess_other": "Alle {{count}} secties zijn succesvol opgeslagen.", + "saveAllPartial_one": "{{successCount}} van {{totalCount}} sectie opgeslagen. {{failCount}} mislukt.", + "saveAllPartial_other": "{{successCount}} van {{totalCount}} secties opgeslagen. {{failCount}} mislukt.", + "saveAllFailure": "Kan niet alle secties opslaan." + }, + "profiles": { + "title": "Profielen", + "activeProfile": "Active Profiel", + "noActiveProfile": "Geen actief profiel", + "active": "Active", + "activated": "Profiel '{{profile}}' activated", + "activateFailed": "Kan profiel niet instellen", + "deactivated": "Profiel deactivated", + "noProfiles": "Geen profielen gedefinieerd.", + "noOverrides": "Geen overschrijvingen", + "cameraCount_one": "{{count}} camera", + "cameraCount_other": "{{count}} cameras", + "columnCamera": "Camera", + "columnOverrides": "Profiel Overrides", + "baseConfig": "Basisconfiguratie", + "addProfile": "Toevoegen Profiel", + "newProfile": "New Profiel", + "profileNamePlaceholder": "bijv. Ingeschakeld, Afwezig, Nachtmodus", + "friendlyNameLabel": "Profiel Name", + "profileIdLabel": "Profiel ID", + "profileIdDescription": "Interne identificatie die wordt gebruikt in configuratie en automatiseringen", + "nameInvalid": "Alleen kleine letters, cijfers en onderstrepingstekens zijn toegestaan", + "nameDuplicate": "Er bestaat al een profiel met deze naam", + "error": { + "mustBeAtLeastTwoCharacters": "Moet minimaal 2 tekens bevatten", + "mustNotContainPeriod": "Mag geen punten bevatten", + "alreadyExists": "Er bestaat al een profiel met deze ID" + }, + "renameProfile": "Rename Profiel", + "renameSuccess": "Profiel renamed to '{{profile}}'", + "deleteProfile": "Verwijderen Profiel", + "deleteProfileConfirm": "Profiel \"{{profile}}\" van alle camera's verwijderen? Dit kan niet ongedaan worden gemaakt.", + "deleteSuccess": "Profiel '{{profile}}' deleted", + "createSuccess": "Profiel '{{profile}}' created", + "removeOverride": "Verwijderen Profiel Override", + "deleteSection": "Verwijderen Section Overrides", + "deleteSectionConfirm": "De {{section}}-overschrijvingen voor profiel {{profile}} op {{camera}} verwijderen?", + "deleteSectionSuccess": "{{section}}-overschrijvingen voor {{profile}} verwijderd", + "enableSwitch": "Enable Profielen", + "enabledDescription": "Profielen zijn ingeschakeld. Maak hieronder een nieuw profiel aan, ga naar een cameraconfiguratiesectie om je wijzigingen aan te brengen en sla op om de wijzigingen toe te passen.", + "disabledDescription": "Met profielen kun je benoemde sets van cameraconfiguratie-overschrijvingen definiëren (bijv. ingeschakeld, afwezig, nacht) die op verzoek kunnen worden geactiveerd." + }, + "unsavedChanges": "Er zijn wijzigingen die nog niet zijn opgeslagen", + "confirmReset": "Confirm Resetten", + "resetToDefaultDescription": "Dit zet alle instellingen in deze sectie terug naar hun standaardwaarden. Deze actie kan niet ongedaan worden gemaakt.", + "resetToGlobalDescription": "Dit zet de instellingen in deze sectie terug naar de globale standaardwaarden. Deze actie kan niet ongedaan worden gemaakt.", + "go2rtcStreams": { + "title": "go2rtc Streams", + "description": "Beheer go2rtc-streamconfiguraties voor het restreamen van camera's. Elke stream heeft een naam en één of meer bron-URL's.", + "addStream": "Stream toevoegen", + "addStreamDesc": "Voer een naam in voor de nieuwe stream. Deze naam wordt gebruikt om naar de stream te verwijzen in je cameraconfiguratie.", + "addUrl": "URL toevoegen", + "streamName": "Stream naam", + "streamNamePlaceholder": "bijv. voor_deur", + "streamUrlPlaceholder": "bijv, rtsp://user:pass@192.168.1.100/stream", + "deleteStream": "Verwijderen stream", + "deleteStreamConfirm": "Weet je zeker dat je de stream \"{{streamName}}\" wilt verwijderen? Camera's die naar deze stream verwijzen, werken mogelijk niet meer.", + "noStreams": "Geen go2rtc-streams geconfigureerd. Voeg een stream toe om te beginnen.", + "validation": { + "nameRequired": "Streamnaam is vereist", + "nameDuplicate": "Er bestaat al een stream met deze naam", + "nameInvalid": "Streamnaam mag alleen letters, cijfers, onderstrepingstekens en koppeltekens bevatten", + "urlRequired": "Er is minimaal één URL vereist" + }, + "renameStream": "Stream hernoemen", + "renameStreamDesc": "Voer een nieuwe naam in voor deze stream. Het hernoemen van een stream kan camera's of andere streams die er op naam naar verwijzen verstoren.", + "newStreamName": "Nieuwe stream naam", + "ffmpeg": { + "useFfmpegModule": "Compatibiliteitsmodus gebruiken (ffmpeg)", + "video": "Video", + "audio": "Audio", + "hardware": "Hardware-versnelling", + "videoCopy": "Kopiëren", + "videoH264": "Transcoderen naar H.264", + "videoH265": "Transcoderen naar H.265", + "videoExclude": "Uitsluiten", + "audioCopy": "Kopiëren", + "audioAac": "Transcoderen naar AAC", + "audioOpus": "Transcoderen naar Opus", + "audioPcmu": "Transcoderen naar PCM μ-law", + "audioPcma": "Transcoderen naar PCM A-law", + "audioPcm": "Transcoderen naar PCM", + "audioMp3": "Transcoderen naar MP3", + "audioExclude": "Uitsluiten", + "hardwareNone": "Geen hardwareversnelling", + "hardwareAuto": "Automatische hardware-versnelling" + } + }, + "birdseye": { + "trackingMode": { + "objects": "Objecten", + "motion": "Beweging", + "continuous": "Doorlopend" + } + }, + "retainMode": { + "all": "Alle", + "motion": "Beweging", + "active_objects": "Active Objecten" + }, + "previewQuality": { + "very_high": "Zeer hoog", + "high": "High", + "medium": "Medium", + "low": "Low", + "very_low": "Zeer laag" + }, + "ui": { + "timeFormat": { + "browser": "Browser", + "12hour": "12 uur", + "24hour": "24 uur" + }, + "TimeOrDateStyle": { + "full": "Full", + "long": "Lang", + "medium": "Medium", + "short": "Kort" + }, + "unitSystem": { + "metric": "Metrisch", + "imperial": "Imperial" + } + }, + "review": { + "imageSource": { + "recordings": "Opnames", + "previews": "Voorbeelden" + } + }, + "logger": { + "logLevel": { + "debug": "Foutopsporing", + "info": "Info", + "warning": "Waarschuwing", + "error": "Fout", + "critical": "Kritisch" + } + }, + "onvif": { + "profileAuto": "Auto", + "profileLoading": "Profielen laden...", + "autotracking": { + "zooming": { + "disabled": "Uitgeschakeld", + "absolute": "Absoluut", + "relative": "Relatief" + } + } + }, + "modelSize": { + "small": "Klein", + "large": "Large" + }, + "configMessages": { + "review": { + "recordDisabled": "Opname is disabled, review items will not be generated.", + "detectDisabled": "Object detection is disabled. Beoordeling items require detected objects to categorize alerts and detections.", + "allNonAlertDetections": "Alle activiteit die geen melding is, wordt opgenomen als detecties.", + "genaiImageSourceRecordingsRecordDisabled": "De afbeeldingsbron is ingesteld op 'recordings', maar opnemen is uitgeschakeld. Frigate valt terug op voorbeeldafbeeldingen." + }, + "audio": { + "noAudioRole": "Er zijn geen streams met de audiorol gedefinieerd. Je moet de audiorol inschakelen om audiodetectie te laten werken." + }, + "audioTranscription": { + "audioDetectionDisabled": "Audiodetectie is niet ingeschakeld voor deze camera. Audiotranscriptie vereist dat audiodetectie actief is." + }, + "detect": { + "fpsGreaterThanFive": "Het instellen van de detectie-FPS hoger dan 5 wordt niet aanbevolen. Hogere waarden kunnen prestatieproblemen veroorzaken en leveren geen voordeel op.", + "disabled": "Objectdetectie is uitgeschakeld. Snapshots, beoordelingsitems en verrijkingen zoals gezichtsherkenning, kentekenherkenning en generatieve AI werken dan niet." + }, + "objects": { + "genaiNoDescriptionsProvider": "Je moet een GenAI-provider configureren met de rol 'descriptions' om beschrijvingen te kunnen genereren." + }, + "faceRecognition": { + "globalDisabled": "De verrijking voor gezichtsherkenning moet zijn ingeschakeld om gezichtsherkenningsfuncties op deze camera te laten werken.", + "personNotTracked": "Gezichtsherkenning vereist dat het object 'person' wordt gevolgd. Schakel 'person' in bij Objecten voor deze camera.", + "modelSizeLarge": "Het 'large'-model vereist een GPU of NPU voor redelijke prestaties. Gebruik 'small' op systemen met alleen een CPU." + }, + "lpr": { + "globalDisabled": "De verrijking voor kentekenherkenning moet zijn ingeschakeld om LPR-functies op deze camera te laten werken.", + "vehicleNotTracked": "Kentekenherkenning vereist dat 'car' of 'motorcycle' wordt gevolgd. Schakel 'car' of 'motorcycle' in bij Objecten voor deze camera.", + "modelSizeLarge": "Het 'large'-model is geoptimaliseerd voor kentekenplaten met meerdere regels. Het 'small'-model presteert beter dan 'large' en moet worden gebruikt tenzij jouw regio kentekenformaten met meerdere regels gebruikt." + }, + "record": { + "noRecordRole": "Er zijn geen streams met de opnamerol gedefinieerd. Opnemen werkt dan niet." + }, + "birdseye": { + "objectsModeDetectDisabled": "Birdseye staat ingesteld op de modus 'objects', maar objectdetectie is uitgeschakeld voor deze camera. De camera wordt niet weergegeven in Birdseye." + }, + "snapshots": { + "detectDisabled": "Objectdetectie is uitgeschakeld. Snapshots worden gegenereerd uit gevolgde objecten en worden daarom niet aangemaakt." + }, + "detectors": { + "mixedTypes": "Alle detectoren moeten hetzelfde type gebruiken. Verwijder bestaande detectoren om een ander type te gebruiken.", + "mixedTypesSuggestion": "Alle detectoren moeten hetzelfde type gebruiken. Verwijder bestaande detectoren of selecteer {{type}}." + }, + "semanticSearch": { + "jinav2SmallModelSize": "De 'small'-grootte met het Jina V2-model heeft hoge RAM- en inferentiekosten. Het 'large'-model met een aparte GPU wordt aanbevolen." + } } }