diff --git a/web/public/locales/fr/common.json b/web/public/locales/fr/common.json index 3cf25e977..dc14652d4 100644 --- a/web/public/locales/fr/common.json +++ b/web/public/locales/fr/common.json @@ -272,7 +272,9 @@ "back": "Retour", "hide": "Masquer {{item}}", "show": "Afficher {{item}}", - "ID": "ID" + "ID": "ID", + "none": "Aucun", + "all": "Tous" }, "unit": { "speed": { diff --git a/web/public/locales/fr/views/classificationModel.json b/web/public/locales/fr/views/classificationModel.json index 7d7d93ba3..9b7e8ef28 100644 --- a/web/public/locales/fr/views/classificationModel.json +++ b/web/public/locales/fr/views/classificationModel.json @@ -20,15 +20,18 @@ "deletedModel_one": "{{count}} modèle supprimé avec succès", "deletedModel_many": "{{count}} modèles supprimés avec succès", "deletedModel_other": "{{count}} modèles supprimés avec succès", - "updatedModel": "Configuration du modèle mise à jour avec succès" + "updatedModel": "Configuration du modèle mise à jour avec succès", + "renamedCategory": "Classe renommée en {{name}} avec succès" }, "error": { "deleteImageFailed": "Échec de la suppression : {{errorMessage}}", "deleteCategoryFailed": "Échec de la suppression de la classe : {{errorMessage}}", "categorizeFailed": "Échec de la catégorisation de l'image : {{errorMessage}}", - "trainingFailed": "Échec du démarrage de l'entraînement du modèle : {{errorMessage}}", + "trainingFailed": "L'entraînement du modèle a échoué. Consultez les journaux de Frigate pour plus de détails.", "deleteModelFailed": "Impossible de supprimer le modèle : {{errorMessage}}", - "updateModelFailed": "Impossible de mettre à jour le modèle : {{errorMessage}}" + "updateModelFailed": "Impossible de mettre à jour le modèle : {{errorMessage}}", + "renameCategoryFailed": "Impossible de renommer la classe : {{errorMessage}}", + "trainingFailedToStart": "Impossible de démarrer l'entraînement du modèle : {{errorMessage}}" } }, "deleteCategory": { @@ -37,11 +40,15 @@ }, "deleteDatasetImages": { "title": "Supprimer les images du jeu de données", - "desc": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}} ? Cette action est irréversible et nécessitera un réentraînement du modèle." + "desc_one": "Êtes-vous sûr de vouloir supprimer {{count}} image du jeu de données {{dataset}} ? Cette action est irréversible et nécessitera un réentraînement du modèle.", + "desc_many": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}} ? Cette action est irréversible et nécessitera un réentraînement du modèle.", + "desc_other": "Êtes-vous sûr de vouloir supprimer {{count}} images du jeu de données {{dataset}} ? Cette action est irréversible et nécessitera un réentraînement du modèle." }, "deleteTrainImages": { "title": "Supprimer les images d'entraînement", - "desc": "Êtes-vous sûr de vouloir supprimer {{count}} images ? Cette action est irréversible." + "desc_one": "Êtes-vous sûr de vouloir supprimer {{count}} image ? Cette action est irréversible.", + "desc_many": "Êtes-vous sûr de vouloir supprimer {{count}} images ? Cette action est irréversible.", + "desc_other": "Êtes-vous sûr de vouloir supprimer {{count}} images ? Cette action est irréversible." }, "renameCategory": { "title": "Renommer la classe", @@ -140,13 +147,18 @@ "generationFailed": "Échec de la génération. Veuillez réessayer.", "classifyFailed": "Échec de la classification des images : {{error}}" }, - "generateSuccess": "Génération des images d'exemple réussie" + "generateSuccess": "Génération des images d'exemple réussie", + "allImagesRequired_one": "Veuillez classifier toutes les images. {{count}} image restante.", + "allImagesRequired_many": "Veuillez classifier toutes les images. {{count}} images restantes.", + "allImagesRequired_other": "Veuillez classifier toutes les images. {{count}} images restantes." } }, "deleteModel": { "title": "Supprimer le modèle de classification", "single": "Voulez-vous vraiment supprimer {{name}} ? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.", - "desc": "Voulez-vous vraiment supprimer {{count}} modèle(s) ? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible." + "desc_one": "Voulez-vous vraiment supprimer {{count}} modèle ? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.", + "desc_many": "Voulez-vous vraiment supprimer {{count}} modèles ? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible.", + "desc_other": "Voulez-vous vraiment supprimer {{count}} modèles ? Cela supprimera définitivement toutes les données associées, y compris les images et les données d'entraînement. Cette action est irréversible." }, "menu": { "objects": "Objets", @@ -160,5 +172,10 @@ "descriptionState": "Modifier les classes pour ce modèle de classification d'état. Les modifications nécessiteront un réentraînement du modèle.", "descriptionObject": "Modifier le type d'objet et le type de classification pour ce modèle de classification d'objet", "stateClassesInfo": "Note : La modification des classes d'état nécessite un réentraînement du modèle avec les classes mises à jour." + }, + "tooltip": { + "trainingInProgress": "Modèle en cours d'entraînement", + "noNewImages": "Aucune nouvelle image pour l'entraînement. Veuillez d'abord classifier plus d'images dans le jeu de données.", + "modelNotReady": "Le modèle n'est pas prêt pour l'entraînement." } } diff --git a/web/public/locales/fr/views/explore.json b/web/public/locales/fr/views/explore.json index 015d7560b..ad9167b06 100644 --- a/web/public/locales/fr/views/explore.json +++ b/web/public/locales/fr/views/explore.json @@ -227,7 +227,9 @@ "error": "Échec de la suppression de l'objet suivi : {{errorMessage}}" } }, - "tooltip": "Correspondance : {{type}} à {{confidence}}%" + "tooltip": "Correspondance : {{type}} à {{confidence}}%", + "previousTrackedObject": "Objet suivi précédent", + "nextTrackedObject": "Objet suivi suivant" }, "exploreMore": "Explorer plus d'objets {{label}}", "aiAnalysis": { @@ -267,7 +269,7 @@ "offset": { "desc": "Ces données proviennent du flux de détection de votre caméra, mais elles sont superposées aux images du flux d'enregistrement. Il est peu probable que les deux flux soient parfaitement synchronisés. Par conséquent, le cadre de délimitation et la vidéo ne s'aligneront pas parfaitement. Vous pouvez utiliser ce paramètre pour décaler les annotations vers l'avant ou vers l'arrière dans le temps afin de mieux les aligner avec la vidéo enregistrée.", "millisecondsToOffset": "Millisecondes de décalage pour les annotations de détection. Par défaut : 0", - "tips": "ASTUCE : Imaginez une séquence d'événement avec une personne marchant de gauche à droite. Si le cadre de détection sur la chronologie de l'événement est constamment à gauche de la personne, la valeur doit être diminuée. De même, si une personne marche de gauche à droite et que le cadre de détection est constamment devant la personne, la valeur doit être augmentée.", + "tips": "Diminuez la valeur si la lecture vidéo est en avance sur les cadres de détection et les points de tracé, et augmentez-la si la lecture vidéo est en retard sur ceux-ci. Cette valeur peut être négative.", "toast": { "success": "Le décalage des annotations pour {{camera}} a été sauvegardé dans le fichier de configuration. Redémarrez Frigate pour appliquer vos modifications." }, diff --git a/web/public/locales/fr/views/faceLibrary.json b/web/public/locales/fr/views/faceLibrary.json index 7cdfb6c88..1fcf4d000 100644 --- a/web/public/locales/fr/views/faceLibrary.json +++ b/web/public/locales/fr/views/faceLibrary.json @@ -60,7 +60,7 @@ "deletedName_other": "{{count}} visages ont été supprimés avec succès.", "uploadedImage": "Image téléversée avec succès", "addFaceLibrary": "{{name}} a été ajouté avec succès à la bibliothèque de visages !", - "updatedFaceScore": "Score du visage mis à jour avec succès", + "updatedFaceScore": "Score du visage ({{score}}) de {{name}} mis à jour avec succès", "deletedFace_one": "{{count}} visage supprimé avec succès", "deletedFace_many": "{{count}} visages supprimés avec succès", "deletedFace_other": "{{count}} visages supprimés avec succès", diff --git a/web/public/locales/fr/views/settings.json b/web/public/locales/fr/views/settings.json index 61202dc6f..02bf1aa14 100644 --- a/web/public/locales/fr/views/settings.json +++ b/web/public/locales/fr/views/settings.json @@ -893,9 +893,9 @@ "createRole": "Rôle {{role}} créé avec succès", "updateCameras": "Caméras mis à jour pour le rôle {{role}}", "deleteRole": "Rôle {{role}} supprimé avec succès", - "userRolesUpdated_one": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras.", - "userRolesUpdated_many": "", - "userRolesUpdated_other": "" + "userRolesUpdated_one": "{{count}} utilisateur affecté à ce rôle a été mis à jour avec des droits \"Observateur\", et a accès à toutes les caméras.", + "userRolesUpdated_many": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras.", + "userRolesUpdated_other": "{{count}} utilisateurs affectés à ce rôle ont été mis à jour avec des droits \"Observateur\", et ont accès à toutes les caméras." }, "error": { "createRoleFailed": "Échec dans la création du rôle : {{errorMessage}}",