From efe0d2a9316f43e3881673d3523874a004d56fdd Mon Sep 17 00:00:00 2001 From: Hosted Weblate Date: Sun, 10 Aug 2025 13:59:21 +0200 Subject: [PATCH] Translated using Weblate (Portuguese (Brazil)) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Currently translated at 100.0% (114 of 114 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (352 of 352 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (48 of 48 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (62 of 62 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (66 of 66 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (50 of 50 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (427 of 427 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 88.5% (378 of 427 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 96.5% (340 of 352 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (62 of 62 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (115 of 115 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (25 of 25 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (183 of 183 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 88.5% (378 of 427 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 59.3% (209 of 352 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 59.3% (209 of 352 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (183 of 183 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (183 of 183 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 50.5% (216 of 427 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 50.5% (216 of 427 strings) Co-authored-by: Hosted Weblate Co-authored-by: Marcelo Popper Costa Co-authored-by: Rogério Mendes Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/audio/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/common/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-dialog/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-filter/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/components-player/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-explore/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-facelibrary/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-search/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-settings/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/frigate-nvr/views-system/pt_BR/ Translation: Frigate NVR/audio Translation: Frigate NVR/common Translation: Frigate NVR/components-dialog Translation: Frigate NVR/components-filter Translation: Frigate NVR/components-player Translation: Frigate NVR/views-explore Translation: Frigate NVR/views-facelibrary Translation: Frigate NVR/views-search Translation: Frigate NVR/views-settings Translation: Frigate NVR/views-system --- web/public/locales/pt-BR/audio.json | 272 +++++++++++++- web/public/locales/pt-BR/common.json | 74 +++- .../locales/pt-BR/components/dialog.json | 2 +- .../locales/pt-BR/components/filter.json | 12 +- .../locales/pt-BR/components/player.json | 2 +- web/public/locales/pt-BR/views/explore.json | 6 +- .../locales/pt-BR/views/faceLibrary.json | 8 +- web/public/locales/pt-BR/views/search.json | 4 +- web/public/locales/pt-BR/views/settings.json | 350 +++++++++++++++++- web/public/locales/pt-BR/views/system.json | 14 +- 10 files changed, 702 insertions(+), 42 deletions(-) diff --git a/web/public/locales/pt-BR/audio.json b/web/public/locales/pt-BR/audio.json index b8db8b374..04ee37d6b 100644 --- a/web/public/locales/pt-BR/audio.json +++ b/web/public/locales/pt-BR/audio.json @@ -6,7 +6,7 @@ "chant": "Canto", "babbling": "Balbuciando", "bellow": "Abaixo", - "whoop": "Grito", + "whoop": "Grito de Felicidade", "whispering": "Sussurrando", "laughter": "Risada", "snicker": "Risada", @@ -69,7 +69,7 @@ "bark": "Latido", "yip": "Latido / Grito Agudo", "howl": "Uivado", - "bow_wow": "Bow Wow", + "bow_wow": "Latido", "growling": "Rosnado", "whimper_dog": "Choro de Cachorro", "purr": "Ronronado", @@ -129,7 +129,7 @@ "frog": "Sapo", "croak": "Coaxado", "snake": "Cobra", - "rattle": "Guizo", + "rattle": "Chocalho", "whale_vocalization": "Vocalização de Baleia", "music": "Música", "musical_instrument": "Instrumento Musical", @@ -139,7 +139,7 @@ "bass_guitar": "Baixo", "acoustic_guitar": "Violão Acústico", "steel_guitar": "Guitarra Havaiana", - "tapping": "Tapping", + "tapping": "Batidas Leves", "strum": "Dedilhado", "banjo": "Banjo", "sitar": "Sitar", @@ -163,5 +163,267 @@ "drum_roll": "Tambores Rufando", "bass_drum": "Bumbo", "timpani": "Tímpanos (Instrumento Musical)", - "tabla": "Tabla" + "tabla": "Tabla", + "wood_block": "Bloco de Madeira", + "bagpipes": "Gaita de Fole", + "pop_music": "Música Pop", + "grunge": "Grunge", + "middle_eastern_music": "Música do Oriente Médio", + "jazz": "Jazz", + "disco": "Disco", + "classical_music": "Música Clássica", + "opera": "Ópera", + "electronic_music": "Música Eletrónica", + "house_music": "Música House", + "techno": "Techno", + "dubstep": "Dubstep", + "drum_and_bass": "Drum and Bass", + "electronica": "Eletrónica", + "cymbal": "Címbalo", + "hi_hat": "Chimbau", + "tambourine": "Pandeiro", + "maraca": "Maraca", + "gong": "Gongo", + "tubular_bells": "Sinos Tubulares", + "mallet_percussion": "Percussão de Martelo", + "marimba": "Marimba", + "glockenspiel": "Glockenspiel", + "vibraphone": "Vibrafone", + "steelpan": "Panela de Aço", + "orchestra": "Orquestra", + "brass_instrument": "Instrumento de Metal", + "french_horn": "Trompa Francesa", + "trumpet": "Trombeta", + "trombone": "Trombone", + "bowed_string_instrument": "Instrumento de Cordas Friccionadas", + "string_section": "Seção de Cordas", + "violin": "Violino", + "pizzicato": "Pizzicato", + "cello": "Violoncelo", + "double_bass": "Contrabaixo", + "wind_instrument": "Instrumento de Sopro", + "flute": "Flauta", + "saxophone": "Saxofone", + "clarinet": "Clarinete", + "harp": "Harpa", + "bell": "Sino", + "church_bell": "Sino de Igreja", + "jingle_bell": "Guizo", + "bicycle_bell": "Campainha de Bicicleta", + "tuning_fork": "Diapasão", + "chime": "Carrilhão", + "wind_chime": "Sinos de Vento", + "harmonica": "Gaita", + "accordion": "Acordeão", + "didgeridoo": "Didjeridu", + "theremin": "Teremim", + "scratching": "Arranhado", + "hip_hop_music": "Música Hip-Hop", + "beatboxing": "Beatbox", + "rock_music": "Rock", + "heavy_metal": "Heavy Metal", + "punk_rock": "Punk Rock", + "progressive_rock": "Rock Progressivo", + "rock_and_roll": "Rock and Roll", + "psychedelic_rock": "Rock Psicodélico", + "rhythm_and_blues": "Rhythm and Blues", + "soul_music": "Música Soul", + "music_of_latin_america": "Music of Latin America", + "salsa_music": "Música Salsa", + "flamenco": "Flamenco", + "blues": "Blues", + "music_for_children": "Música para Crianças", + "new-age_music": "Música New Age", + "vocal_music": "Música Vocal", + "a_capella": "A Capella", + "music_of_africa": "Music of Africa", + "afrobeat": "Afrobeat", + "christian_music": "Música Cristã", + "gospel_music": "Música Gospel", + "music_of_asia": "Music of Asia", + "carnatic_music": "Música Carnática", + "music_of_bollywood": "Música de Bollywood", + "ska": "Ska", + "traditional_music": "Música Tradicional", + "independent_music": "Música Independente", + "song": "Música", + "thunderstorm": "Tempestade", + "thunder": "Trovão", + "water": "Água", + "rain": "Chuva", + "raindrop": "Gota de Chuva", + "rain_on_surface": "Chuva na Superfície", + "stream": "Transmissão", + "waterfall": "Cachoeira", + "ocean": "Oceano", + "waves": "Ondas", + "steam": "Vapor", + "gurgling": "Borbulhado", + "fire": "Fogo", + "crackle": "Estalo", + "sailboat": "Veleiro", + "rowboat": "Barco a Remo", + "motorboat": "Lancha", + "ship": "Navio", + "motor_vehicle": "Veículo Motorizado", + "toot": "Buzinado", + "car_alarm": "Alarme de Carro", + "power_windows": "Vidros Elétricos", + "skidding": "Derrapado", + "singing_bowl": "Tigela Tibetana", + "reggae": "Reggae", + "country": "País", + "swing_music": "Música Swing", + "bluegrass": "Música Bluegrass", + "funk": "Funk", + "folk_music": "Música Folk", + "electronic_dance_music": "Música Eletrônica", + "ambient_music": "Música Ambiente", + "trance_music": "Música Trance", + "background_music": "Música de Fundo", + "theme_music": "Música Tema", + "jingle": "Jingle", + "soundtrack_music": "Música de Trilha Sonora", + "lullaby": "Canção de Ninar", + "video_game_music": "Música de Video Game", + "christmas_music": "Música Natalina", + "dance_music": "Música Dance", + "wedding_music": "Música de Casamento", + "happy_music": "Música Feliz", + "sad_music": "Música Triste", + "tender_music": "Música Suave", + "exciting_music": "Música Empolgante", + "angry_music": "Música Raivosa", + "scary_music": "Música Assustadora", + "wind": "Vento", + "rustling_leaves": "Folhas Farfalhantes", + "fixed-wing_aircraft": "Aeronave de Asa Fixa", + "engine": "Motor", + "light_engine": "Motor Leve", + "dental_drill's_drill": "Broca Odontológica", + "lawn_mower": "Cortador de Grama", + "chainsaw": "Motosserra", + "medium_engine": "Motor Médio", + "heavy_engine": "Motor Pesado", + "engine_knocking": "Motor Batendo", + "engine_starting": "Motor Partindo", + "idling": "Marcha Lenta", + "chopping": "Cortando", + "frying": "Fritando", + "microwave_oven": "Forno Microondas", + "water_tap": "Torneira de Água", + "bathtub": "Banheira", + "toilet_flush": "Descarga de Vaso Sanitário", + "computer_keyboard": "Teclado de Computador", + "writing": "Escrita", + "alarm": "Alarme", + "telephone": "Telefone", + "telephone_bell_ringing": "Telefone Tocando", + "ringtone": "Toque de Celular", + "telephone_dialing": "Telefone Discando", + "dial_tone": "Tom de Discagem", + "busy_signal": "Sinal de Ocupado", + "alarm_clock": "Despertador", + "siren": "Sirene", + "civil_defense_siren": "Sirene de Defesa Civil", + "wind_noise": "Ruído de Vento", + "tire_squeal": "Pneus Cantando", + "car_passing_by": "Carro Passando", + "race_car": "Carro de Corrida", + "truck": "Pickup / Caminhão", + "air_brake": "Freios a Ar", + "air_horn": "Buzina a Ar", + "reversing_beeps": "Alarme de Ré", + "ice_cream_truck": "Carro de Sorvete", + "emergency_vehicle": "Veículo de Emergência", + "police_car": "Carro de Polícia", + "ambulance": "Ambulância", + "fire_engine": "Caminhão de Bombeiros", + "traffic_noise": "Barulho de Tráfego", + "rail_transport": "Transporte Ferroviário", + "train_whistle": "Apito de Trem", + "train_horn": "Buzina de Trem", + "railroad_car": "Vagão de Trem", + "train_wheels_squealing": "Rodas de Trem Rangendo", + "subway": "Metrô", + "aircraft": "Aeronave", + "aircraft_engine": "Motor de Aeronave", + "jet_engine": "Motor a Jato", + "propeller": "Hélice", + "helicopter": "Helicóptero", + "accelerating": "Acelerando", + "doorbell": "Campainha", + "ding-dong": "Toque de Campainha", + "sliding_door": "Porta de Correr", + "slam": "Batida Forte", + "knock": "Batida na Porta", + "burst": "Estouro / Rajada", + "eruption": "Erupção", + "boom": "Estrondo", + "wood": "Madeira", + "chop": "Barulho de Corte", + "splinter": "Lascado", + "crack": "Rachado", + "glass": "Vidro", + "chink": "Fenda", + "shatter": "Estilhaçado", + "silence": "Silêncio", + "sound_effect": "Efeito Sonoro", + "environmental_noise": "Ruido Ambiente", + "static": "Estático", + "white_noise": "Ruido Branco", + "pink_noise": "Ruido Rosa", + "television": "Televisão", + "radio": "Rádio", + "field_recording": "Gravação de Campo", + "scream": "Grito", + "tap": "Toque", + "squeak": "Rangido", + "cupboard_open_or_close": "Cristaleira Abrindo ou Fechando", + "drawer_open_or_close": "Gaveteiro Abrindo ou Fechando", + "dishes": "Pratos", + "cutlery": "Talheres", + "electric_toothbrush": "Escova de Dentes Elétrica", + "vacuum_cleaner": "Aspirador de Pó", + "zipper": "Zíper", + "keys_jangling": "Chaves Chacoalhando", + "coin": "Moeda", + "electric_shaver": "Barbeador Elétrico", + "shuffling_cards": "Embaralhar de Cartas", + "typing": "Digitação", + "typewriter": "Máquina de Escrever", + "buzzer": "Zumbador", + "smoke_detector": "Detector de Fumaça", + "fire_alarm": "Alarme de Incêndio", + "foghorn": "Buzina de Nevoeiro", + "whistle": "Apito", + "steam_whistle": "Apito a Vapor", + "mechanisms": "Mecanismos", + "ratchet": "Catraca", + "tick": "Tique", + "tick-tock": "Tique-Toque", + "gears": "Engrenagens", + "pulleys": "Polias", + "sewing_machine": "Máquina de Costura", + "mechanical_fan": "Ventilador Mecânico", + "air_conditioning": "Ar-Condicionado", + "cash_register": "Caixa Registradora", + "printer": "Impressora", + "single-lens_reflex_camera": "Câmera Single-Lens Reflex", + "tools": "Ferramentas", + "hammer": "Martelo", + "jackhammer": "Britadeira", + "sawing": "Som de Serra", + "filing": "Som de Lima", + "sanding": "Lixamento", + "power_tool": "Ferramenta Elétrica", + "drill": "Furadeira", + "explosion": "Explosão", + "gunshot": "Tiro", + "machine_gun": "Metralhadora", + "fusillade": "Fuzilamento", + "artillery_fire": "Fogo de Artilharia", + "cap_gun": "Espoleta", + "fireworks": "Fogos de Artifício", + "firecracker": "Rojões" } diff --git a/web/public/locales/pt-BR/common.json b/web/public/locales/pt-BR/common.json index f9230f0cc..c5b789ccc 100644 --- a/web/public/locales/pt-BR/common.json +++ b/web/public/locales/pt-BR/common.json @@ -25,27 +25,27 @@ "yr": "{{time}}ano", "year_one": "{{time}} ano", "year_many": "{{time}} anos", - "year_other": "", + "year_other": "{{time}} anos", "mo": "{{time}}mês", "month_one": "{{time}} mês", "month_many": "{{time}} meses", - "month_other": "", + "month_other": "{{time}} meses", "d": "{{time}} dia", "day_one": "{{time}} dia", "day_many": "{{time}} dias", - "day_other": "", + "day_other": "{{time}} dias", "h": "{{time}}h", "hour_one": "{{time}} hora", "hour_many": "{{time}} horas", - "hour_other": "", + "hour_other": "{{time}} horas", "m": "{{time}}m", "minute_one": "{{time}} minuto", "minute_many": "{{time}} minutos", - "minute_other": "", + "minute_other": "{{time}} minutos", "s": "{{time}}s", "second_one": "{{time}} segundo", "second_many": "{{time}} segundos", - "second_other": "", + "second_other": "{{time}} segundos", "formattedTimestamp": { "12hour": "d MMM,h:mm:ss aaa", "24hour": "d MMM, HH:mm:ss" @@ -83,7 +83,7 @@ "selectItem": "Selecione {{item}}", "unit": { "speed": { - "mph": "mph", + "mph": "mi/h", "kph": "km/h" }, "length": { @@ -201,7 +201,65 @@ }, "restart": "Reiniciar o Frigate", "live": { - "title": "Ao Vivo" + "title": "Ao Vivo", + "allCameras": "Todas as câmeras", + "cameras": { + "title": "Câmeras", + "count_one": "{{count}} Câmera", + "count_many": "{{count}} Câmeras", + "count_other": "{{count}} Câmeras" + } + }, + "review": "Revisão", + "explore": "Explorar", + "export": "Exportar", + "uiPlayground": "Playground da UI", + "faceLibrary": "Biblioteca de Rostos", + "user": { + "title": "Usuário", + "account": "Conta", + "current": "Usuário Atual: {{user}}", + "anonymous": "anônimo", + "logout": "Sair", + "setPassword": "Definir Senha" } + }, + "toast": { + "copyUrlToClipboard": "URL copiada para a área de transferência.", + "save": { + "title": "Salvar", + "error": { + "title": "Falha ao salvar as alterações de configuração: {{errorMessage}}", + "noMessage": "Falha ao salvar as alterações de configuração" + } + } + }, + "role": { + "title": "Papel", + "admin": "Administrador", + "viewer": "Espectador", + "desc": "Administradores possuem acesso total a todos os recursos da interface do Frigate. Espectadores são limitados a ver as câmeras, revisar itens, e filmagens históricas na interface." + }, + "pagination": { + "label": "paginação", + "previous": { + "title": "Anterior", + "label": "Ir para a página anterior" + }, + "next": { + "title": "Próximo", + "label": "Ir para a próxima página" + }, + "more": "Mais páginas" + }, + "accessDenied": { + "documentTitle": "Acesso Negado - Frigate", + "title": "Acesso Negado", + "desc": "Você não possui permissão para visualizar essa página." + }, + "notFound": { + "documentTitle": "Não Encontrado - Frigate", + "title": "404", + "desc": "Página não encontrada" } } diff --git a/web/public/locales/pt-BR/components/dialog.json b/web/public/locales/pt-BR/components/dialog.json index c3e450f27..f180fe513 100644 --- a/web/public/locales/pt-BR/components/dialog.json +++ b/web/public/locales/pt-BR/components/dialog.json @@ -16,7 +16,7 @@ }, "review": { "question": { - "label": "Confirmar essa etiqueta para Frigate Plus", + "label": "Confirmar esse rótulo para Frigate Plus", "ask_a": "Este objeto é um {{label}}?", "ask_an": "Este objeto é um{{label}}?", "ask_full": "Este objeto é um{{untranslatedLabel}} ({{translatedLabel}})?" diff --git a/web/public/locales/pt-BR/components/filter.json b/web/public/locales/pt-BR/components/filter.json index 6e28b1c69..d503d3f13 100644 --- a/web/public/locales/pt-BR/components/filter.json +++ b/web/public/locales/pt-BR/components/filter.json @@ -3,11 +3,11 @@ "labels": { "label": "Rótulos", "all": { - "title": "Todas as Etiquetas", - "short": "Etiquetas" + "title": "Todos os Rótulos", + "short": "Rótulos" }, - "count_one": "{{count}} Etiqueta", - "count_other": "{{count}} Etiquetas" + "count_one": "{{count}} Rótulo", + "count_other": "{{count}} Rótulos" }, "zones": { "label": "Zonas", @@ -29,8 +29,8 @@ }, "timeRange": "Intervalo de Tempo", "subLabels": { - "label": "Sub-etiquetas", - "all": "Todas as Sub-etiquetas" + "label": "Sub-Rótulos", + "all": "Todos os Sub-Rótulos" }, "score": "Pontuação", "estimatedSpeed": "Velocidade Estimada {{unit}}", diff --git a/web/public/locales/pt-BR/components/player.json b/web/public/locales/pt-BR/components/player.json index 3d88725a5..370565b63 100644 --- a/web/public/locales/pt-BR/components/player.json +++ b/web/public/locales/pt-BR/components/player.json @@ -26,7 +26,7 @@ "value": "{{seconds}} segundos", "short": { "title": "Latência", - "value": "{{seconds}} segundos" + "value": "{{seconds}} s" } }, "totalFrames": "Total de Quadros:", diff --git a/web/public/locales/pt-BR/views/explore.json b/web/public/locales/pt-BR/views/explore.json index ee5098f5a..a43ee2b17 100644 --- a/web/public/locales/pt-BR/views/explore.json +++ b/web/public/locales/pt-BR/views/explore.json @@ -41,8 +41,8 @@ }, "tips": { "mismatch_one": "{{count}} objeto indisponível foi detectado e incluido nesse item de revisão. Esse objeto ou não se qualifica para um alerta ou detecção, ou já foi limpo/deletado.", - "mismatch_many": "{{count}} objetos indisponíveis foram detectados e incluídos nesse item de revisão. Esses objetos ou não se qualificam para um alerta ou detecção, ou já foi limpo/deletado.", - "mismatch_other": "", + "mismatch_many": "{{count}} objetos indisponíveis foram detectados e incluídos nesse item de revisão. Esses objetos ou não se qualificam para um alerta ou detecção, ou já foram limpos/deletados.", + "mismatch_other": "{{count}} objetos indisponíveis foram detectados e incluídos nesse item de revisão. Esses objetos ou não se qualificam para um alerta ou detecção, ou já foram limpos/deletados.", "hasMissingObjects": "Ajustar a sua configuração se quiser que o Frigate salve objetos rastreados com as seguintes categorias: {{objects}}" }, "toast": { @@ -196,7 +196,7 @@ "fetchingTrackedObjectsFailed": "Erro ao buscar por objetos rastreados: {{errorMessage}}", "trackedObjectsCount_one": "{{count}} objeto rastreado ", "trackedObjectsCount_many": "{{count}} objetos rastreados ", - "trackedObjectsCount_other": "", + "trackedObjectsCount_other": "{{count}} objetos rastreados ", "searchResult": { "tooltip": "Correspondência com {{type}} de {{confidence}}%", "deleteTrackedObject": { diff --git a/web/public/locales/pt-BR/views/faceLibrary.json b/web/public/locales/pt-BR/views/faceLibrary.json index 1ca2c5366..d08b38110 100644 --- a/web/public/locales/pt-BR/views/faceLibrary.json +++ b/web/public/locales/pt-BR/views/faceLibrary.json @@ -3,8 +3,8 @@ "person": "Pessoa", "unknown": "Desconhecido", "face": "Detalhes do Rosto", - "subLabelScore": "Pontuação do sub-rótulo", - "scoreInfo": "A pontuação da sub etiqueta é a pontuação ponderada de todas as confidências faciais reconhecidas, então a pontuação pode ser diferente da mostrada na foto instantânea.", + "subLabelScore": "Pontuação do Sub-Rótulo", + "scoreInfo": "A pontuação do sub-rótulo é a pontuação ponderada de todas as confidências faciais reconhecidas, então a pontuação pode ser diferente da mostrada na foto instantânea.", "faceDesc": "Detalhes do objeto rastreado que gerou este rosto", "timestamp": "Carimbo de data e hora" }, @@ -53,7 +53,7 @@ "faceName": "Digite o Nome do Rosto", "uploadFace": "Enviar Imagem de Rosto", "description": { - "uploadFace": "Faça o upload de uma imagem de {{name}} que mostre mostre seu rosto visto de frente. A imagem não precisa estar recortada apenas com o rosto." + "uploadFace": "Faça o upload de uma imagem de {{name}} que mostre seu rosto visto de frente. A imagem não precisa estar recortada apenas com o rosto." } }, "description": { @@ -87,7 +87,7 @@ "renamedFace": "O rosto foi renomeado com sucesso para {{name}}", "deletedName_one": "{{count}} rosto foi deletado com sucesso.", "deletedName_many": "{{count}} rostos foram deletados com sucesso.", - "deletedName_other": "" + "deletedName_other": "{{count}} rostos foram deletados com sucesso." }, "error": { "uploadingImageFailed": "Falha ao enviar a imagem: {{errorMessage}}", diff --git a/web/public/locales/pt-BR/views/search.json b/web/public/locales/pt-BR/views/search.json index 095503568..19bf1a205 100644 --- a/web/public/locales/pt-BR/views/search.json +++ b/web/public/locales/pt-BR/views/search.json @@ -13,7 +13,7 @@ "filter": { "label": { "cameras": "Câmeras", - "labels": "Etiquetas", + "labels": "Rótulos", "zones": "Zonas", "before": "Antes", "after": "Depois", @@ -21,7 +21,7 @@ "max_score": "Pontuação Máxima", "min_speed": "Velocidade Mínima", "max_speed": "Velocidade Máxima", - "sub_labels": "Sub-etiquetas", + "sub_labels": "Sub-Rótulos", "search_type": "Tipo de Busca", "time_range": "Intervalo de Tempo", "recognized_license_plate": "Placa de Carro Reconhecida", diff --git a/web/public/locales/pt-BR/views/settings.json b/web/public/locales/pt-BR/views/settings.json index b0b8b0a37..c5e0af438 100644 --- a/web/public/locales/pt-BR/views/settings.json +++ b/web/public/locales/pt-BR/views/settings.json @@ -5,7 +5,7 @@ "camera": "Configurações de Câmera - Frigate", "enrichments": "Configurações de Enriquecimento - Frigate", "masksAndZones": "Editor de Máscara e Zona - Frigate", - "motionTuner": "Virada de Movimento - Frigate", + "motionTuner": "Ajuste de Movimento - Frigate", "object": "Debug - Frigate", "general": "Configurações Gerais - Frigate", "frigatePlus": "Frigate+ Configurações- Frigate", @@ -18,8 +18,8 @@ "users": "Usuários", "notifications": "Notificações", "frigateplus": "Frigate+", - "motionTuner": "Ajuste de Detecção de Movimento", - "debug": "Depuração", + "motionTuner": "Ajuste de Movimento", + "debug": "Depurar", "enrichments": "Melhorias" }, "dialog": { @@ -254,7 +254,7 @@ "edit": "Editar Zona", "point_one": "{{count}} ponto", "point_many": "{{count}} pontos", - "point_other": "", + "point_other": "{{count}} pontos", "clickDrawPolygon": "Clique para desenhar um polígono na imagem.", "name": { "title": "Nome", @@ -275,8 +275,348 @@ }, "allObjects": "Todos os Objetos", "speedEstimation": { - "title": "Estimativa de Velocidade" + "title": "Estimativa de Velocidade", + "desc": "Habilitar estimativa de velocidade para objetos nesta zona. A zona deve ter exatamente 4 pontos.", + "docs": "Leia a documentação", + "lineADistance": "Distância da linha A ({{unit}})", + "lineBDistance": "Distância da Linha B ({{unit}})", + "lineCDistance": "Distância da linha C ({{unit}})", + "lineDDistance": "Distância da linha D ({{unit}})" + }, + "speedThreshold": { + "title": "Limiar de Velocidade ({{unit}})", + "desc": "Especifique a velocidade mínima para o objeto ser considerado nessa zona.", + "toast": { + "error": { + "pointLengthError": "A estimativa de velocidade foi desativada para essa zona. Zonas com estimação de velocidade devem ter exatamente 4 pontos.", + "loiteringTimeError": "Zonas com tempo de permanência acima de 0 não devem ser usadas com estimativa de velocidade." + } + } + }, + "toast": { + "success": "A zona ({{zoneName}}) foi salva. Reinicie o Frigate para aplicar as mudanças." } + }, + "objectMasks": { + "objects": { + "allObjectTypes": "Todos os tipos de objetos", + "title": "Objetos", + "desc": "O tipo de objeto que se aplica para essa máscara de objeto." + }, + "toast": { + "success": { + "title": "{{polygonName}} foi salvo. Reinicie o Frigate para aplicar as alterações.", + "noName": "A máscara de objeto foi salva. Reinicie o Frigate para aplicar as alterações." + } + }, + "label": "Máscaras de Objeto", + "documentTitle": "Editar Máscara de Objeto - Frigate", + "desc": { + "title": "Máscaras de filtro de objetos são usadas para filtrar falsos positivos para um determinado tipo de objeto baseado na localização.", + "documentation": "Documentação" + }, + "add": "Adicionar Máscara de Objeto", + "edit": "Editar Máscara de Objeto", + "context": "Filtro de máscaras de objeto são usados para filtrar falsos positivos para um dado tipo de objeto baseado na localização.", + "point_one": "{{count}} ponto", + "point_many": "{{count}} pontos", + "point_other": "{{count}} pontos", + "clickDrawPolygon": "Clique para desenhar um polígono na imagem." + }, + "motionMasks": { + "label": "Máscara de Movimento", + "documentTitle": "Editar Máscara de Movimento - Frigate", + "desc": { + "title": "Máscaras de movimento são usadas para prevenir tipos de movimento de ativarem uma detecção. Excesso de mascaramento tornará mais difícil que objetos sejam rastreados.", + "documentation": "Documentação" + }, + "add": "Nova Máscara de Movimento", + "edit": "Editar Máscara de Movimento", + "context": { + "title": "Máscaras de movimento são usadas para prevenir typos de movimento não desejados de ativarem uma detecção (exemplo: galhos de árvores, timestamps de câmeras). Máscaras de movimento devem ser usadas com muita parcimônia, excesso de mascaramento tornará mais difícil de objetos serem rastreados.", + "documentation": "Leia a documentação" + }, + "point_one": "{{count}} ponto", + "point_many": "{{count}} pontos", + "point_other": "{{count}} pontos", + "clickDrawPolygon": "Clique para desenhar um polígono na imagem.", + "polygonAreaTooLarge": { + "title": "A máscara de movimento está cobrindo {{polygonArea}}% do quadro da câmera. Máscaras de movimento grandes não são recomendadas.", + "tips": "Máscaras de movimento não previnem objetos de serem detectados. Em vez disso você deve usar uma zona obrigatória.", + "documentation": "Leia a documentação" + }, + "toast": { + "success": { + "title": "{{polygonName}} foi salvo. Reinicie o Frigate para aplicar as alterações.", + "noName": "Máscara de Movimento salva. Reinicie o Frigate para aplicar as alterações." + } + } + } + }, + "motionDetectionTuner": { + "desc": { + "title": "O Frigate usa a detecção de movimento como uma verificação de primeira linha para ver se há algo acontecendo no quadro que valha a pena verificar com a detecção de objetos.", + "documentation": "Leia o Guia de Ajuste de Movimento" + }, + "Threshold": { + "title": "Limite", + "desc": "O valor do limiar dita o quanto de mudança na luminância de um pixel é requerida para ser considerada movimento. Padrão: 30" + }, + "contourArea": { + "title": "Área de contorno", + "desc": "O valor do contorno da área é usado para decidir quais grupos de mudança de pixel se qualificam como movimento. Padrão: 10" + }, + "improveContrast": { + "title": "Melhorar o contraste", + "desc": "Melhorar contraste para cenas escuras. Padrão: ON" + }, + "toast": { + "success": "As configurações de movimento foram salvas." + }, + "title": "Ajuste de Detecção de Movimento", + "unsavedChanges": "Alterações do Ajuste de Movimento Não Salvas ({{camera}})" + }, + "debug": { + "detectorDesc": "O Frigate usa seus detectores ({{detectors}}) para detectar objetos no fluxo de vídeo da sua câmera.", + "desc": "A visualização de depuração mostra uma visão em tempo real dos objetos rastreados e suas estatísticas. A lista de objetos mostra um resumo com atraso de tempo dos objetos detectados.", + "objectList": "Lista de Objetos", + "boundingBoxes": { + "desc": "Mostrar caixas delimitadoras ao redor de objetos rastreados", + "colors": { + "label": "Cores da caixa delimitadora de objetos", + "info": "
  • Na inicialização, cores diferentes serão atribuídas a cada rótulo de objeto
  • Uma linha fina azul escura indica que o objeto não foi detectado neste momento
  • Uma linha fina cinza indica que o objeto foi detectado como estacionário
  • Uma linha grossa indica que o objeto está sujeito ao rastreamento automático (quando ativado)
  • " + }, + "title": "Caixas delimitadoras" + }, + "zones": { + "title": "Zonas", + "desc": "Mostrar um esboço de quaisquer zonas definidas" + }, + "mask": { + "title": "Máscaras de movimento", + "desc": "Mostrar polígonos de máscara de movimento" + }, + "motion": { + "title": "Caixas de movimento", + "desc": "Mostrar caixas ao redor das áreas onde o movimento é detectado", + "tips": "

    Caixas de movimento


    Caixas vermelhas serão sobrepostas em áreas do quadro onde o movimento está sendo detectado

    " + }, + "regions": { + "title": "Regiões", + "desc": "Mostrar uma caixa da região de interesse enviada ao detector de objetos", + "tips": "

    Caixas de Região


    Caixas verdes claras serão sobrepostas em áreas de interesse no quadro que está sendo enviado ao detector de objetos.

    " + }, + "title": "Depuração", + "debugging": "Depuração", + "objectShapeFilterDrawing": { + "desc": "Desenhe um retângulo na imagem para ver os detalhes da área e proporções", + "tips": "Habilite essa opção para desenhar um retângulo na imagem da camera para mostrar a sua área e proporção. Esses valores podem ser usados para estabelecer parâmetros de filtro de formato de objetos na sua configuração.", + "document": "Leia a documentação ", + "score": "Pontuação", + "ratio": "Proporção", + "area": "Área", + "title": "Desenho de Filtro de Formato de Objeto" + }, + "noObjects": "Nenhum Objeto", + "timestamp": { + "title": "Timestamp", + "desc": "Sobreponha um timestamp na imagem" + } + }, + "users": { + "title": "Usuários", + "management": { + "title": "Gerenciamento de Usuário", + "desc": "Gerencias as contas de usuário dessa instância do Frigate." + }, + "addUser": "Adicionar Usuário", + "updatePassword": "Atualizar Senha", + "toast": { + "success": { + "createUser": "Usuário {{user}} criado com sucesso", + "deleteUser": "Usuário {{user}} deletado com sucesso", + "updatePassword": "Senha atualizada com sucesso.", + "roleUpdated": "Papel atualizado para {{user}}" + }, + "error": { + "setPasswordFailed": "Falha ao salvar a senha: {{errorMessage}}", + "createUserFailed": "Falha ao criar usuário: {{errorMessage}}", + "deleteUserFailed": "Falha ao deletar usuário: {{errorMessage}}", + "roleUpdateFailed": "Falha ao atualizar papel: {{errorMessage}}" + } + }, + "dialog": { + "form": { + "password": { + "match": "As senhas correspondem", + "notMatch": "As senhas são diferentes", + "title": "Senha", + "placeholder": "Digita a senha", + "confirm": { + "title": "Confirmar Senha", + "placeholder": "Confirmar Senha" + }, + "strength": { + "title": "Nível de segurança da senha: ", + "weak": "Fraca", + "medium": "Mediana", + "strong": "Forte", + "veryStrong": "Muito Forte" + } + }, + "newPassword": { + "title": "Senha Nova", + "placeholder": "Digite uma senha nova", + "confirm": { + "placeholder": "Digite a senha novamente" + } + }, + "usernameIsRequired": "Nome de usuário requerido", + "passwordIsRequired": "Senha requerida", + "user": { + "title": "Nome de Usuário", + "desc": "Apenas letras, números, pontos e sublinhados são permitidos.", + "placeholder": "Digite o nome de usuário" + } + }, + "createUser": { + "title": "Criar Novo Usuário", + "desc": "Adicionar um novo usuário e especificar um papel para acesso às áreas da interface do Frigate.", + "usernameOnlyInclude": "O nome de usuário pode conter apenas letras, números, . ou _", + "confirmPassword": "Por favor confirme a sua senha" + }, + "deleteUser": { + "title": "Deletar Usuário", + "desc": "Essa ação não pode ser desfeita. Isso irá deletar permanentemente a conta do usuário e remover todos os dados associados.", + "warn": "Tem certeza que quer deletar {{username}}?" + }, + "passwordSetting": { + "cannotBeEmpty": "A senha não pode estar vazia", + "doNotMatch": "As senhas não correspondem", + "updatePassword": "Atualizar Senha para {{username}}", + "setPassword": "Definir Senha", + "desc": "Crie uma senha forte para proteger essa conta." + }, + "changeRole": { + "title": "Alterar Papel do Usuário", + "select": "Selecionar um papel", + "desc": "Atualizar permissões para {{username}}", + "roleInfo": { + "intro": "Selecione o papel apropriado para esse usuário:", + "admin": "Administrador", + "adminDesc": "Acesso total a todos os recursos.", + "viewer": "Espectador", + "viewerDesc": "Limitado aos Painéis ao Vivo, Revisar, Explorar, e Exportar somente." + } + } + }, + "table": { + "username": "Nome de Usuário", + "actions": "Ações", + "role": "Papel", + "noUsers": "Nenhum usuário encontrado.", + "changeRole": "Mudar papel do usuário", + "password": "Senha", + "deleteUser": "Deletar usuário" + } + }, + "notification": { + "suspendTime": { + "10minutes": "Suspender por 10 minutos", + "30minutes": "Suspender por 30 minutos", + "1hour": "Suspender por 1 hora", + "12hours": "Suspender por 12 horas", + "24hours": "Suspender por 24 horas", + "untilRestart": "Suspender até reiniciar", + "suspend": "Suspender", + "5minutes": "Suspender por 5 minutos" + }, + "cancelSuspension": "Cancelar Suspensão", + "toast": { + "success": { + "registered": "Registrados para notificações com sucesso. É necessário reiniciar o Frigate para que as notificações possam ser enviadas (incluindo a notificação de teste).", + "settingSaved": "As configurações de notificações foram salvas." + }, + "error": { + "registerFailed": "Falha ao salvar o registro para notificações." + } + }, + "title": "Notificações", + "notificationSettings": { + "title": "Configurações de Notificação", + "desc": "O Frigate pode enviar notificações push nativamente ao seu dispositivo quando estiver sendo executado no navegador ou instalado como um PWA.", + "documentation": "Leia a Documentação" + }, + "notificationUnavailable": { + "title": "Notificações Indisponíveis", + "desc": "Notificações push da Web exigem um contexto seguro (https://…). Essa é uma limitação do navegador. Acesse o Frigate com seguraça para usar as notificações.", + "documentation": "Leia a Documentação" + }, + "globalSettings": { + "title": "Configurações Globais", + "desc": "Suspender as notificações temporáriamente para câmeras específicas em todos os dispositivos registrados." + }, + "email": { + "title": "Email", + "placeholder": "ex: exemplo@email.com", + "desc": "Um email válido é requerido e será usado para notificar você caso haja algum problema com o serviço push." + }, + "cameras": { + "title": "Câmeras", + "noCameras": "Nenhuma câmera disponível", + "desc": "Selecionar para quais câmeras habilitar as notificações." + }, + "deviceSpecific": "Configurações Específicas do Dispositivo", + "registerDevice": "Registre Esse Dispositivo", + "unregisterDevice": "Cancelar Registro Desse Dispositivo", + "sendTestNotification": "Enviar uma notificação de teste", + "unsavedRegistrations": "Registros de Notificações Não Salvos", + "unsavedChanges": "Alterações de Notificações Não Salvas", + "active": "Notificações Ativas", + "suspended": "Notificações suspensas {{time}}" + }, + "frigatePlus": { + "title": "Configurações do Frigate+", + "apiKey": { + "title": "Chave de API do Frigate+", + "validated": "A chave de API do Frigate+ detectada e validada", + "notValidated": "A chave de API do Frigate+ não detectada ou não validada", + "desc": "A chave de API do Frigate+ habilita a integração com o serviço do Frigate+.", + "plusLink": "Leia mais sobre o Frigate+" + }, + "modelInfo": { + "plusModelType": { + "baseModel": "Modelo Base", + "userModel": "Ajuste Refinado" + }, + "supportedDetectors": "Detectores Suportados", + "cameras": "Câmeras", + "loading": "Carregando informações do modelo…", + "error": "Falha ao carregar as informações do modelo", + "availableModels": "Modelos Disponíveis", + "loadingAvailableModels": "Carregando modelos disponíveis…", + "title": "Informação do Modelo", + "modelType": "Tipo de Modelo", + "trainDate": "Data do Treinamento", + "baseModel": "Modelo Base", + "modelSelect": "Os seus modelos disponíveis no Frigate+ podem ser selecionados aqui. Note que apenas modelos compatíveis com a sua configuração atual de detector podem ser selecionados." + }, + "snapshotConfig": { + "title": "Configuração de Captura de Imagem", + "desc": "Enviar ao Frigate+ requer tanto a captura de imagem quanto a captura de imagem clean_copy estarem habilitadas na sua configuração.", + "documentation": "Leia a documentação", + "cleanCopyWarning": "Algumas câmeras possuem captura de imagem habilitada porém têm a cópia limpa desabilitada. Você precisa habilitar a clean_copy nas suas configurações de captura de imagem para poder submeter imagems dessa câmera ao Frigate+.", + "table": { + "camera": "Câmera", + "snapshots": "Capturas de Imagem", + "cleanCopySnapshots": "Capturas de Imagem clean_copy" + } + }, + "unsavedChanges": "Alterações de configurações do Frigate+ não salvas", + "restart_required": "Reinicialização necessária (modelo do Frigate+ foi alterado)", + "toast": { + "success": "As configurações do Frigate+ foram salvas. Reinicie o Frigate para aplicar as alterações.", + "error": "Falha ao salvar as alterações de configuração: {{errorMessage}}" } } } diff --git a/web/public/locales/pt-BR/views/system.json b/web/public/locales/pt-BR/views/system.json index ce0727459..74a2c4564 100644 --- a/web/public/locales/pt-BR/views/system.json +++ b/web/public/locales/pt-BR/views/system.json @@ -24,7 +24,7 @@ "type": { "label": "Tipo", "timestamp": "Marca temporal", - "tag": "Etiqueta", + "tag": "Marcador", "message": "Mensagem" }, "tips": "Os Registros estão sendo transmitidos do servidor", @@ -157,7 +157,7 @@ "detectHighCpuUsage": "{{camera}} possui alta utilização de CPU para detecção ({{detectAvg}}%)", "healthy": "O sistema está saudável", "cameraIsOffline": "{{camera}} está offline", - "reindexingEmbeddings": "Reindexando embeddings ({{processed}}% completado)", + "reindexingEmbeddings": "Reindexando os vetores de característica de imagens ({{processed}}% completado)", "detectIsSlow": "{{detect}} está lento ({{speed}} ms)" }, "enrichments": { @@ -167,13 +167,13 @@ "face_recognition": "Reconhecimento Facial", "plate_recognition": "Reconhecimento de Placa", "plate_recognition_speed": "Velocidade de Reconhecimento de Placas", - "text_embedding_speed": "Velocidade de Incorporação de Textos", + "text_embedding_speed": "Velocidade de Geração de Vetores de Texto", "yolov9_plate_detection_speed": "Velocidade de Reconhecimento de Placas do YOLOv9", "yolov9_plate_detection": "Detecção de Placas do YOLOv9", - "image_embedding": "Incorporação de Imagem", - "text_embedding": "Incorporação de Texto", - "image_embedding_speed": "Velocidade de Incorporação de Imagem", - "face_embedding_speed": "Velocidade de Incorporação de Rosto", + "image_embedding": "Vetores de Características de Imagens", + "text_embedding": "Vetor de Característica de Texto", + "image_embedding_speed": "Velocidade de Geração de Vetores de Imagem", + "face_embedding_speed": "Velocidade de Geração de Vetores de Rostos", "face_recognition_speed": "Velocidade de Reconhecimento de Rostos" } }