diff --git a/web/public/locales/pt-BR/audio.json b/web/public/locales/pt-BR/audio.json index 552a135650..1444d4d6a4 100644 --- a/web/public/locales/pt-BR/audio.json +++ b/web/public/locales/pt-BR/audio.json @@ -497,5 +497,6 @@ "echo": "Eco", "mains_hum": "Zumbido Elétrico", "sidetone": "Retorno de Voz", - "throbbing": "Latejante" + "throbbing": "Latejante", + "sodeling": "Soldagem" } diff --git a/web/public/locales/pt-BR/common.json b/web/public/locales/pt-BR/common.json index b2ebe49c28..3ce687cc73 100644 --- a/web/public/locales/pt-BR/common.json +++ b/web/public/locales/pt-BR/common.json @@ -210,7 +210,8 @@ "id": "Bahasa Indonesia (Indonésio)", "ur": "اردو (Urdu)", "hr": "Hrvatski (Croata)", - "bs": "Bosanski (Bósnio)" + "bs": "Bosanski (Bósnio)", + "zhHant": "Chinês Tradicional" }, "systemLogs": "Logs de sistema", "settings": "Configurações", diff --git a/web/public/locales/pt-BR/components/camera.json b/web/public/locales/pt-BR/components/camera.json index f82636861d..a746960980 100644 --- a/web/public/locales/pt-BR/components/camera.json +++ b/web/public/locales/pt-BR/components/camera.json @@ -68,7 +68,10 @@ } }, "birdseye": "Visão Panorâmica" - } + }, + "showAll": "Exibir todos os grupos de câmeras", + "showLess": "Mostrar menos", + "editGroups": "Editar grupos de câmeras" }, "debug": { "options": { diff --git a/web/public/locales/pt-BR/components/dialog.json b/web/public/locales/pt-BR/components/dialog.json index 788fe118d7..196a091760 100644 --- a/web/public/locales/pt-BR/components/dialog.json +++ b/web/public/locales/pt-BR/components/dialog.json @@ -24,6 +24,9 @@ }, "state": { "submitted": "Enviado" + }, + "toast": { + "error": "Falha ao enviar para o Frigate+. Verifique sua conexão de rede e tente novamente." } } }, @@ -56,15 +59,24 @@ "toast": { "success": "Exportação iniciada com sucesso. Veja o arquivo na tela exportar.", "error": { - "failed": "Falha em iniciar exportação: {{error}}", + "failed": "Falha ao iniciar exportação: {{error}}", "endTimeMustAfterStartTime": "Tempo de finalização deve ser após tempo de início", "noVaildTimeSelected": "Nenhuma faixa de tempo válida selecionada" }, - "view": "Ver" + "view": "Ver", + "batchQueuedSuccess_one": "1 exportação na fila. Abrindo o caso agora.", + "batchQueuedSuccess_many": "{{count}} exportações colocadas na fila. Abrindo o caso agora.", + "batchQueuedSuccess_other": "", + "batchQueuedPartial": "{{successful}} de {{total}} exportações na fila. Câmeras com falha: {{failedCameras}}", + "batchQueueFailed": "Falha ao enfileirar {{total}} exportações. Câmeras com falha: {{failedCameras}}", + "batchPartial": "Iniciadas {{successful}} de {{total}} exportações. Câmeras com falha: {{failedCameras}}", + "batchFailed": "Falha ao iniciar {{total}} exportações. Câmeras com falha: {{failedCameras}}" }, "fromTimeline": { "saveExport": "Salvar Exportação", - "previewExport": "Pré-Visualizar Exportação" + "previewExport": "Pré-Visualizar Exportação", + "queueingExport": "Enfileirando exportação...", + "useThisRange": "Use esta faixa" }, "case": { "label": "Caso", @@ -94,7 +106,14 @@ "queueingButton": "Exportações na fila...", "exportButton_one": "Exportar câmera", "exportButton_many": "Exportar {{count}} câmeras", - "exportButton_other": "Exportar {{count}} câmeras" + "exportButton_other": "Exportar {{count}} câmeras", + "searchOrSelectGroup": "Procurar, ou selecionar um grupo de câmeras...", + "selectAll": "Selecionar todas as câmeras", + "clearSelection": "Limpar seleção", + "selectWithActivity": "Câmeras com rastreamento de objetos", + "selectGroup": "Selecione grupo", + "noMatchingCameras": "Nenhuma câmera corresponde à sua pesquisa", + "selectedCount": "{{selected}} / {{total}} selecionados" }, "multi": { "title_one": "Exportar análise", @@ -106,7 +125,12 @@ "exportButton_one": "Exportar análise", "exportButton_many": "Exportar {{count}} análises", "exportButton_other": "Exportar {{count}} análises", - "exportingButton": "Exportando..." + "exportingButton": "Exportando...", + "toast": { + "started_one": "Uma exportação iniciada. Abrindo o caso agora.", + "started_many": "Iniciadas {{count}} exportações. Abrindo o caso agora.", + "started_other": "" + } } }, "streaming": { @@ -154,6 +178,14 @@ "export": "Exportar", "deleteNow": "Deletar Agora", "markAsUnreviewed": "Marcar como não revisado" + }, + "shareTimestamp": { + "label": "Compartilhar marca de tempo", + "title": "Compartilhar marca de tempo", + "description": "Compartilhe uma URL com marca de tempo da posição atual da reprodução ou escolha uma marca de tempo personalizada. Observe que esta não é uma URL de compartilhamento público e só pode ser acessada por usuários que tenham acesso ao Frigate e a esta câmera.", + "custom": "Marcação de data/hora personalizado", + "button": "Compartilhar URL com marcação de tempo", + "shareTitle": "Marcação de data/hora da análise do Frigate: {{camera}}" } }, "imagePicker": { diff --git a/web/public/locales/pt-BR/components/player.json b/web/public/locales/pt-BR/components/player.json index 370565b633..e783725e8b 100644 --- a/web/public/locales/pt-BR/components/player.json +++ b/web/public/locales/pt-BR/components/player.json @@ -4,7 +4,8 @@ "noPreviewFoundFor": "Nenhuma Pré-Visualização Encontrada em {{cameraName}}", "submitFrigatePlus": { "title": "Enviar esse frame para Frigate+?", - "submit": "Enviar" + "submit": "Enviar", + "previewError": "Não foi possível carregar a prévia do instantâneo. A gravação pode não estar disponível no momento." }, "livePlayerRequiredIOSVersion": "iOS 17.1 ou superior é necessário para esse tipo de transmissão ao vivo.", "streamOffline": { @@ -47,5 +48,6 @@ "error": { "submitFrigatePlusFailed": "Falha em submeter quadro ao Frigate+" } - } + }, + "cameraOff": "A câmera está desligada" } diff --git a/web/public/locales/pt-BR/config/cameras.json b/web/public/locales/pt-BR/config/cameras.json index 48b0de7d78..94f65b8168 100644 --- a/web/public/locales/pt-BR/config/cameras.json +++ b/web/public/locales/pt-BR/config/cameras.json @@ -12,7 +12,7 @@ "description": "Habilitado" }, "audio": { - "label": "Eventos de áudio", + "label": "Detecção de áudio", "description": "Configurações para detecção de eventos baseados em áudio para esta câmera.", "enabled": { "label": "Habilitar detecção de áudio", @@ -28,11 +28,15 @@ }, "listen": { "label": "Tipos de escuta", - "description": "Lista de tipos de eventos de áudio a serem detectados (por exemplo: latido, alarme de incêndio, grito, fala, berro)." + "description": "Lista de tipos de eventos de áudio a serem detectados (por exemplo: latido, alarme de incêndio, fala, grito)." }, "filters": { "label": "Filtros de áudio", - "description": "Configurações de filtro por tipo de áudio, como limites de confiança, usadas para reduzir falsos positivos." + "description": "Configurações de filtro por tipo de áudio, como limites de confiança, usadas para reduzir falsos positivos.", + "threshold": { + "label": "Confiança mínima do áudio", + "description": "Limite mínimo de confiança para que o evento de áudio seja contabilizado." + } }, "enabled_in_config": { "label": "Estado de áudio original", @@ -47,11 +51,122 @@ "audio_transcription": { "label": "Transcrição de áudio", "enabled": { - "label": "Habilitar transcrição" + "label": "Habilitar transcrição", + "description": "Ative ou desative a transcrição de eventos de áudio acionada manualmente." }, "live_enabled": { - "label": "Transcrição em tempo real" + "label": "Transcrição em tempo real", + "description": "Ative a transcrição ao vivo por streaming para o áudio à medida que ele é recebido." }, - "description": "Configurações de transcrição de áudio e voz ao vivo para eventos e legendas em tempo real." + "description": "Configurações de transcrição de áudio e voz ao vivo para eventos e legendas em tempo real.", + "enabled_in_config": { + "label": "Estado original da transcrição" + } + }, + "detect": { + "enabled": { + "label": "Ativar detecção de objetos", + "description": "Ative ou desative a detecção de objetos para esta câmera." + }, + "height": { + "label": "Detectar altura", + "description": "Altura (em pixels) dos quadros usados para o fluxo de detecção; deixe em branco para usar a resolução nativa do fluxo." + }, + "width": { + "label": "Detectar largura", + "description": "Largura (em pixels) dos quadros usados para o fluxo de detecção; deixe em branco para usar a resolução nativa do fluxo." + }, + "fps": { + "label": "Detectar FPS", + "description": "Taxa de quadros por segundo desejada para a execução da detecção; valores mais baixos reduzem o uso da CPU (o valor recomendado é 5; defina um valor mais alto — no máximo 10 — apenas se estiver rastreando objetos que se movem extremamente rápido)." + }, + "min_initialized": { + "label": "Quadros de inicialização mínimos", + "description": "Número de detecções consecutivas necessárias antes de criar um objeto rastreado. Aumente esse valor para reduzir inicializações falsas. O valor padrão é o fps dividido por 2." + }, + "max_disappeared": { + "label": "Máximo de quadros perdidos", + "description": "Número de quadros sem detecção antes que um objeto rastreado seja considerado desaparecido." + }, + "stationary": { + "label": "Configuração de objetos estáticos", + "description": "Configurações para detectar e gerenciar objetos que permanecem parados por um período de tempo.", + "interval": { + "label": "Intervalo estacionário", + "description": "Com que frequência (em quadros) realizar uma verificação de detecção para confirmar um objeto estacionário." + }, + "threshold": { + "label": "Limiar estacionário", + "description": "Número de quadros sem alteração de posição necessários para marcar um objeto como estacionário." + }, + "max_frames": { + "label": "Quadros máximos", + "description": "Limita por quanto tempo objetos estacionários são rastreados antes de serem descartados.", + "default": { + "label": "Máximo de quadros padrão", + "description": "Número máximo padrão de quadros para rastrear um objeto estacionário antes de parar." + }, + "objects": { + "label": "Quadros máximos do objeto", + "description": "Substituições por objeto para o número máximo de quadros de rastreamento de objetos estacionários." + } + }, + "classifier": { + "label": "Ativar classificador visual", + "description": "Use um classificador visual para detectar objetos verdadeiramente estacionários, mesmo quando as caixas delimitadoras oscilam." + } + }, + "annotation_offset": { + "label": "Deslocamento da anotação", + "description": "Milissegundos para deslocar as anotações de detecção, a fim de alinhar melhor as caixas delimitadoras da linha do tempo com as gravações; pode ser um valor positivo ou negativo." + }, + "label": "Detecção de Objetos", + "description": "Configurações para a função de detecção (*detect*) usada para executar a detecção de objetos e inicializar rastreadores." + }, + "face_recognition": { + "label": "Reconhecimento facial", + "description": "Configurações de detecção e reconhecimento facial para esta câmera.", + "enabled": { + "label": "Ativar reconhecimento facial", + "description": "Ative ou desative o reconhecimento facial." + }, + "min_area": { + "label": "Área mínima do rosto", + "description": "Área mínima (em pixels) da caixa delimitadora de um rosto detectado necessária para tentar o reconhecimento." + } + }, + "ffmpeg": { + "label": "Fluxos (FFmpeg)", + "description": "Entradas de fluxo de câmera e opções do FFmpeg, incluindo caminho do binário, argumentos, aceleração de hardware (hwaccel) e argumentos de saída por função.", + "path": { + "label": "Caminho do FFmpeg", + "description": "Caminho para o binário do FFmpeg a ser utilizado ou um alias de versão (\"7.0\" ou \"8.0\")." + }, + "global_args": { + "label": "Argumentos globais do FFmpeg", + "description": "Argumentos globais passados para processos do FFmpeg." + }, + "hwaccel_args": { + "label": "Argumentos de aceleração de hardware", + "description": "Argumentos de aceleração de hardware para o FFmpeg. Recomenda-se o uso de predefinições específicas do provedor." + }, + "input_args": { + "label": "Argumentos de entrada" + } + }, + "birdseye": { + "mode": { + "label": "Modo de rastreamento", + "description": "Modo de inclusão de câmeras no Birdseye: 'objetos', 'movimento' ou 'contínuo'." + }, + "order": { + "label": "Posição", + "description": "Posição numérica que controla a ordem da câmera no layout de vista aérea (Birdseye)." + }, + "label": "Birdseye", + "description": "Configurações para a visualização composta \"Birdseye\", que combina múltiplas transmissões de câmera em um único layout.", + "enabled": { + "label": "Ativar Birdseye" + } } } diff --git a/web/public/locales/pt-BR/config/global.json b/web/public/locales/pt-BR/config/global.json index a503c8ee94..28efbe2af5 100644 --- a/web/public/locales/pt-BR/config/global.json +++ b/web/public/locales/pt-BR/config/global.json @@ -34,11 +34,15 @@ }, "listen": { "label": "Tipos de escuta", - "description": "Lista de tipos de eventos de áudio a serem detectados (por exemplo: latido, alarme de incêndio, grito, fala, berro)." + "description": "Lista de tipos de eventos de áudio a serem detectados (por exemplo: latido, alarme de incêndio, fala, grito)." }, "filters": { "label": "Filtros de áudio", - "description": "Configurações de filtro por tipo de áudio, como limites de confiança, usadas para reduzir falsos positivos." + "description": "Configurações de filtro por tipo de áudio, como limites de confiança, usadas para reduzir falsos positivos.", + "threshold": { + "label": "Confiança mínima do áudio", + "description": "Limite mínimo de confiança para que o evento de áudio seja contabilizado." + } }, "enabled_in_config": { "label": "Estado de áudio original", @@ -47,7 +51,8 @@ "num_threads": { "label": "Threads de detecção", "description": "Número de threads a serem usadas para o processamento de detecção de áudio." - } + }, + "label": "Detecção de áudio" }, "auth": { "label": "Autenticação", @@ -82,8 +87,110 @@ "audio_transcription": { "label": "Transcrição de áudio", "live_enabled": { - "label": "Transcrição em tempo real" + "label": "Transcrição em tempo real", + "description": "Ative a transcrição ao vivo por streaming para o áudio à medida que ele é recebido." }, "description": "Configurações de transcrição de áudio e voz ao vivo para eventos e legendas em tempo real." + }, + "detect": { + "enabled": { + "label": "Ativar detecção de objetos" + }, + "height": { + "label": "Detectar altura", + "description": "Altura (em pixels) dos quadros usados para o fluxo de detecção; deixe em branco para usar a resolução nativa do fluxo." + }, + "width": { + "label": "Detectar largura", + "description": "Largura (em pixels) dos quadros usados para o fluxo de detecção; deixe em branco para usar a resolução nativa do fluxo." + }, + "fps": { + "label": "Detectar FPS", + "description": "Taxa de quadros por segundo desejada para a execução da detecção; valores mais baixos reduzem o uso da CPU (o valor recomendado é 5; defina um valor mais alto — no máximo 10 — apenas se estiver rastreando objetos que se movem extremamente rápido)." + }, + "min_initialized": { + "label": "Quadros de inicialização mínimos", + "description": "Número de detecções consecutivas necessárias antes de criar um objeto rastreado. Aumente esse valor para reduzir inicializações falsas. O valor padrão é o fps dividido por 2." + }, + "max_disappeared": { + "label": "Máximo de quadros perdidos", + "description": "Número de quadros sem detecção antes que um objeto rastreado seja considerado desaparecido." + }, + "stationary": { + "label": "Configuração de objetos estáticos", + "description": "Configurações para detectar e gerenciar objetos que permanecem parados por um período de tempo.", + "interval": { + "label": "Intervalo estacionário", + "description": "Com que frequência (em quadros) realizar uma verificação de detecção para confirmar um objeto estacionário." + }, + "threshold": { + "label": "Limiar estacionário", + "description": "Número de quadros sem alteração de posição necessários para marcar um objeto como estacionário." + }, + "max_frames": { + "label": "Quadros máximos", + "description": "Limita por quanto tempo objetos estacionários são rastreados antes de serem descartados.", + "default": { + "label": "Máximo de quadros padrão", + "description": "Número máximo padrão de quadros para rastrear um objeto estacionário antes de parar." + }, + "objects": { + "label": "Quadros máximos do objeto", + "description": "Substituições por objeto para o número máximo de quadros de rastreamento de objetos estacionários." + } + }, + "classifier": { + "label": "Ativar classificador visual", + "description": "Use um classificador visual para detectar objetos verdadeiramente estacionários, mesmo quando as caixas delimitadoras oscilam." + } + }, + "annotation_offset": { + "label": "Deslocamento da anotação", + "description": "Milissegundos para deslocar as anotações de detecção, a fim de alinhar melhor as caixas delimitadoras da linha do tempo com as gravações; pode ser um valor positivo ou negativo." + }, + "label": "Detecção de Objetos", + "description": "Configurações para a função de detecção (*detect*) usada para executar a detecção de objetos e inicializar rastreadores." + }, + "face_recognition": { + "label": "Reconhecimento facial", + "enabled": { + "label": "Ativar reconhecimento facial" + }, + "min_area": { + "label": "Área mínima do rosto", + "description": "Área mínima (em pixels) da caixa delimitadora de um rosto detectado necessária para tentar o reconhecimento." + } + }, + "ffmpeg": { + "path": { + "label": "Caminho do FFmpeg", + "description": "Caminho para o binário do FFmpeg a ser utilizado ou um alias de versão (\"7.0\" ou \"8.0\")." + }, + "global_args": { + "label": "Argumentos globais do FFmpeg", + "description": "Argumentos globais passados para processos do FFmpeg." + }, + "hwaccel_args": { + "label": "Argumentos de aceleração de hardware", + "description": "Argumentos de aceleração de hardware para o FFmpeg. Recomenda-se o uso de predefinições específicas do provedor." + }, + "input_args": { + "label": "Argumentos de entrada" + } + }, + "birdseye": { + "mode": { + "label": "Modo de rastreamento", + "description": "Modo de inclusão de câmeras no Birdseye: 'objetos', 'movimento' ou 'contínuo'." + }, + "order": { + "label": "Posição", + "description": "Posição numérica que controla a ordem da câmera no layout de vista aérea (Birdseye)." + }, + "label": "Birdseye", + "description": "Configurações para a visualização composta \"Birdseye\", que combina múltiplas transmissões de câmera em um único layout.", + "enabled": { + "label": "Ativar Birdseye" + } } } diff --git a/web/public/locales/pt-BR/config/groups.json b/web/public/locales/pt-BR/config/groups.json index a392ecc761..cfe1a88297 100644 --- a/web/public/locales/pt-BR/config/groups.json +++ b/web/public/locales/pt-BR/config/groups.json @@ -64,5 +64,10 @@ "retention": "Retenção", "events": "Eventos" } + }, + "ffmpeg": { + "cameras": { + "cameraFfmpeg": "Argumentos do FFmpeg específicos para a câmera" + } } } diff --git a/web/public/locales/pt-BR/config/validation.json b/web/public/locales/pt-BR/config/validation.json index 3fc8086682..073d1a5785 100644 --- a/web/public/locales/pt-BR/config/validation.json +++ b/web/public/locales/pt-BR/config/validation.json @@ -28,5 +28,8 @@ "detectRequired": "Pelo menos um fluxo de entrada deve ter a função 'detectar' atribuída.", "hwaccelDetectOnly": "Somente o fluxo de entrada com a função de detecção pode definir argumentos de aceleração de hardware." } + }, + "detect": { + "dimensionMustBeEven": "Deve ser um número par." } } diff --git a/web/public/locales/pt-BR/views/chat.json b/web/public/locales/pt-BR/views/chat.json index 0967ef424b..8f63a9e1a2 100644 --- a/web/public/locales/pt-BR/views/chat.json +++ b/web/public/locales/pt-BR/views/chat.json @@ -1 +1,63 @@ -{} +{ + "documentTitle": "Frigate-Chat", + "title": "Chat-Frigate", + "subtitle": "Seu assistente de IA para gerenciamento de câmeras e insights", + "placeholder": "Pergunte o que quiser...", + "error": "Algo deu errado. Por favor, tente novamente.", + "processing": "Processando...", + "toolsUsed": "Usado: {{tools}}", + "showTools": "Mostrar ferramentas ({{count}})", + "hideTools": "Ocultar ferramentas", + "call": "Chamar", + "result": "Resultado", + "arguments": "Argumentos:", + "response": "Resposta:", + "attachment_chip_label": "{{label}} em {{camera}}", + "attachment_chip_remove": "Remover anexo", + "open_in_explore": "Abrir no Explorar", + "attach_event_aria": "Anexar evento {{eventId}}", + "attachment_picker_paste_label": "Ou cole o ID do evento", + "attachment_picker_attach": "Anexar", + "attachment_picker_placeholder": "Anexar um evento", + "quick_reply_find_similar": "Encontre avistamentos semelhantes", + "quick_reply_tell_me_more": "Conte-me mais sobre isso", + "quick_reply_when_else": "Em que outra ocasião isso foi visto?", + "quick_reply_find_similar_text": "Encontre avistamentos semelhantes a este.", + "quick_reply_tell_me_more_text": "Conte-me mais sobre este.", + "quick_reply_when_else_text": "Em que outra ocasião isso foi visto?", + "anchor": "Referência", + "similarity_score": "Semelhança", + "no_similar_objects_found": "Nenhum objeto semelhante encontrado.", + "semantic_search_required": "A busca semântica deve estar habilitada para encontrar objetos semelhantes.", + "send": "Enviar", + "suggested_requests": "Experimente perguntar:", + "starting_requests": { + "show_recent_events": "Mostrar eventos recentes", + "show_camera_status": "Mostrar status da câmera", + "recap": "O que aconteceu enquanto eu estava fora?", + "watch_camera": "Monitore uma câmera em busca de atividade" + }, + "starting_requests_prompts": { + "show_recent_events": "Mostre-me os eventos recentes da última hora", + "show_camera_status": "Qual é o status atual das minhas câmeras?", + "recap": "O que aconteceu enquanto eu estava fora?", + "watch_camera": "Fique de olho na porta da frente e me avise se alguém aparecer" + }, + "new_chat": "Novo chat", + "settings": { + "title": "Configurações do chat", + "show_stats": { + "title": "Mostrar estatísticas", + "desc": "Exibir a taxa de geração e o tamanho do contexto para respostas de chat.", + "while_generating": "Durante a geração", + "always": "Sempre" + }, + "auto_scroll": { + "title": "Rolagem automática", + "desc": "Acompanhe as novas mensagens à medida que chegam." + } + }, + "stats": { + "context": "{{tokens}} tokens" + } +} diff --git a/web/public/locales/pt-BR/views/classificationModel.json b/web/public/locales/pt-BR/views/classificationModel.json index 36f3539a04..39bc880a87 100644 --- a/web/public/locales/pt-BR/views/classificationModel.json +++ b/web/public/locales/pt-BR/views/classificationModel.json @@ -13,7 +13,7 @@ "toast": { "success": { "deletedCategory_one": "Classe Apagada", - "deletedCategory_many": "", + "deletedCategory_many": "Classes apagadas", "deletedCategory_other": "", "deletedImage_one": "Imagen Apagada", "deletedImage_many": "Imagens Apagadas", @@ -94,7 +94,14 @@ }, "noModels": { "object": { - "title": "Nenhum Modelo de Classificação de Objetos" + "title": "Nenhum Modelo de Classificação de Objetos", + "description": "Crie um modelo personalizado para classificar objetos detectados.", + "buttonText": "Criar modelo de objeto" + }, + "state": { + "title": "Modelos de Classificação Sem Estado", + "description": "Crie um modelo personalizado para monitorar e classificar mudanças de estado em áreas específicas da câmera.", + "buttonText": "Criar modelo de estado" } }, "deleteDatasetImages": { @@ -104,5 +111,13 @@ "title": "Editar Modelo de Classificação", "descriptionState": "Edite as classes deste modelo de classificação de estado. As alterações exigirão treinar novamente o modelo.", "descriptionObject": "Edite o tipo de objeto e tipo de classificação para este modelo de classificação de objeto." + }, + "reclassifyImageAs": "Reclassificar imagem como:", + "reclassifyImage": "Reclassificar imagem", + "wizard": { + "title": "Criar nova classificação", + "steps": { + "nameAndDefine": "Nomear e definir" + } } } diff --git a/web/public/locales/pt-BR/views/faceLibrary.json b/web/public/locales/pt-BR/views/faceLibrary.json index 7e8c8f56c3..9e7a5b34c2 100644 --- a/web/public/locales/pt-BR/views/faceLibrary.json +++ b/web/public/locales/pt-BR/views/faceLibrary.json @@ -72,7 +72,11 @@ "title": "Reconhecimentos Recentes", "aria": "Selecionar reconhecimentos recentes", "empty": "Não há tentativas recentes de reconhecimento facial", - "titleShort": "Recente" + "titleShort": "Recente", + "emptyNoLibrary": { + "title": "Carregue uma foto de rosto", + "description": "Você deve adicionar pelo menos um rosto à biblioteca para que o reconhecimento facial funcione." + } }, "selectFace": "Selecionar Rosto", "trainFaceAs": "Treinar Rosto como:", @@ -89,7 +93,8 @@ "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": "{{count}} rostos foram deletados com sucesso." + "deletedName_other": "{{count}} rostos foram deletados com sucesso.", + "reclassifiedFace": "Rosto reclassificado com sucesso." }, "error": { "uploadingImageFailed": "Falha ao enviar a imagem: {{errorMessage}}", @@ -98,7 +103,10 @@ "deleteNameFailed": "Falha ao deletar nome: {{errorMessage}}", "renameFaceFailed": "Falha ao renomear rosto: {{errorMessage}}", "trainFailed": "Falha ao treinar: {{errorMessage}}", - "updateFaceScoreFailed": "Falha ao atualizar pontuação de rosto: {{errorMessage}}" + "updateFaceScoreFailed": "Falha ao atualizar pontuação de rosto: {{errorMessage}}", + "reclassifyFailed": "Falha ao reclassificar o rosto: {{errorMessage}}" } - } + }, + "reclassifyFaceAs": "Reclassificar rosto como:", + "reclassifyFace": "Reclassificar rosto" } diff --git a/web/public/locales/pt-BR/views/live.json b/web/public/locales/pt-BR/views/live.json index a1b72767f4..79d446d5f5 100644 --- a/web/public/locales/pt-BR/views/live.json +++ b/web/public/locales/pt-BR/views/live.json @@ -58,7 +58,9 @@ }, "camera": { "enable": "Ativar Câmera", - "disable": "Desabilitar Câmera" + "disable": "Desabilitar Câmera", + "turnOn": "Ligar a câmera", + "turnOff": "Desligar a câmera" }, "muteCameras": { "enable": "Silenciar Todas as Câmeras", @@ -70,7 +72,8 @@ }, "recording": { "enable": "Ativar Gravação", - "disable": "Desativar Gravação" + "disable": "Desativar Gravação", + "disabledInConfig": "A gravação deve ser habilitada primeiro nas configurações desta câmera." }, "snapshots": { "enable": "Permitir Capturas de Imagem", @@ -150,7 +153,8 @@ "snapshots": "Capturas de Imagem", "audioDetection": "Detecção de Áudio", "autotracking": "Auto Rastreamento", - "transcription": "Transcrição de Áudio" + "transcription": "Transcrição de Áudio", + "camera": "Câmera" }, "history": { "label": "Exibir gravação histórica"