diff --git a/web/public/locales/km/common.json b/web/public/locales/km/common.json index 0967ef424b..1ae4da9d25 100644 --- a/web/public/locales/km/common.json +++ b/web/public/locales/km/common.json @@ -1 +1,6 @@ -{} +{ + "menu": { + "system": "ប្រព័ន្ធ", + "profiles": "ទម្រង់" + } +} diff --git a/web/public/locales/km/components/auth.json b/web/public/locales/km/components/auth.json index 0967ef424b..d4d92e3efb 100644 --- a/web/public/locales/km/components/auth.json +++ b/web/public/locales/km/components/auth.json @@ -1 +1,16 @@ -{} +{ + "form": { + "user": "ឈ្មោះ Username", + "password": "ពាក្យសម្ងាត់", + "login": "ចូល", + "firstTimeLogin": "ព្យាយាមចូលប្រើប្រាស់ជាលើកដំបូងមែនទេ? ព័ត៌មានសម្ងាត់ត្រូវបានបង្ហាញនៅក្នុង Frigate logs។", + "errors": { + "usernameRequired": "សូមបញ្ជូល Username", + "passwordRequired": "សូមបញ្ជូល ពាក្យសម្ងាត់", + "rateLimit": "ហួសដែនកំណត់សំណើហើយ។ សូមព្យាយាមម្តងទៀតនៅពេលក្រោយ។", + "loginFailed": "ចូលអាខោន បរាជ័យ", + "unknownError": "កំហុសមិនស្គាល់ប្រភព។ សូមពិនិត្យមើល logs។", + "webUnknownError": "កំហុសមិនស្គាល់ប្រភព។ សូមពិនិត្យមើល console logs។" + } + } +} diff --git a/web/public/locales/km/components/filter.json b/web/public/locales/km/components/filter.json index 0967ef424b..c5c5fa996b 100644 --- a/web/public/locales/km/components/filter.json +++ b/web/public/locales/km/components/filter.json @@ -1 +1,3 @@ -{} +{ + "filter": "តម្រង់" +} diff --git a/web/public/locales/km/components/icons.json b/web/public/locales/km/components/icons.json index 0967ef424b..ca35337cbf 100644 --- a/web/public/locales/km/components/icons.json +++ b/web/public/locales/km/components/icons.json @@ -1 +1,8 @@ -{} +{ + "iconPicker": { + "selectIcon": "ជ្រើសរើស រូបតំណាង", + "search": { + "placeholder": "ស្វែងរក រូបតំណាង…" + } + } +} diff --git a/web/public/locales/km/components/input.json b/web/public/locales/km/components/input.json index 0967ef424b..42ab22583e 100644 --- a/web/public/locales/km/components/input.json +++ b/web/public/locales/km/components/input.json @@ -1 +1,10 @@ -{} +{ + "button": { + "downloadVideo": { + "label": "ទាញយក វីដេអូ", + "toast": { + "success": "វីដេអូសម្រាប់ពិនិត្យឡើងវិញរបស់អ្នក បានចាប់ផ្តើមទាញយកហើយ។" + } + } + } +} diff --git a/web/public/locales/km/views/recording.json b/web/public/locales/km/views/recording.json index 0967ef424b..48b94ae5a3 100644 --- a/web/public/locales/km/views/recording.json +++ b/web/public/locales/km/views/recording.json @@ -1 +1,12 @@ -{} +{ + "export": "នាំចេញ", + "calendar": "ប្រតិទិន", + "filter": "តម្រង់", + "filters": "តម្រង", + "toast": { + "error": { + "noValidTimeSelected": "មិនបានជ្រើសរើសចន្លោះពេលត្រឹមត្រូវទេ", + "endTimeMustAfterStartTime": "ពេលវេលាបញ្ចប់ ត្រូវតែនៅក្រោយពេលវេលាចាប់ផ្តើម" + } + } +} diff --git a/web/public/locales/km/views/settings.json b/web/public/locales/km/views/settings.json index 0967ef424b..6b89306123 100644 --- a/web/public/locales/km/views/settings.json +++ b/web/public/locales/km/views/settings.json @@ -1 +1,1921 @@ -{} +{ + "documentTitle": { + "default": "ការកំណត់ - Frigate", + "authentication": "ការកំណត់ការផ្ទៀងផ្ទាត់អត្តសញ្ញាណ - Frigate", + "cameraManagement": "គ្រប់គ្រងកាមេរ៉ា - Frigate", + "cameraReview": "ការកំណត់ការពិនិត្យកាមេរ៉ា - Frigate", + "enrichments": "ការកំណត់ការបន្ថែមព័ត៌មាន - Frigate", + "masksAndZones": "កម្មវិធីកែសម្រួលរបាំង និងតំបន់ - Frigate", + "motionTuner": "ការកែតម្រូវចលនា - Frigate", + "object": "បំបាត់កំហុស - Frigate", + "general": "ការកំណត់ចំណុចប្រទាក់ - Frigate", + "globalConfig": "ការកំណត់រចនាសម្ព័ន្ធសកល - Frigate", + "cameraConfig": "ការកំណត់រចនាសម្ព័ន្ធកាមេរ៉ា - Frigate", + "frigatePlus": "ការកំណត់ Frigate+ - Frigate", + "detectorsAndModel": "ឧបករណ៍ចាប់សញ្ញា និងម៉ូដែល - Frigate", + "notifications": "ការកំណត់ការជូនដំណឹង - Frigate", + "maintenance": "ការថែទាំ - Frigate", + "profiles": "ទម្រង់ - Frigate" + }, + "button": { + "overriddenGlobal": "បានបដិសេធ (សកល)", + "overriddenGlobalTooltip": "កាមេរ៉ានេះបានបដិសេធការកំណត់រចនាសម្ព័ន្ធសកលនៅក្នុងផ្នែកនេះ", + "overriddenGlobalHeading_other": "កាមេរ៉ានេះបានបដិសេធ {{count}} វាលពីការកំណត់រចនាសម្ព័ន្ធសកល៖", + "overriddenGlobalNoDeltas": "កាមេរ៉ានេះបានបដិសេធការកំណត់រចនាសម្ព័ន្ធសកល ប៉ុន្តែគ្មានតម្លៃវាលណាខុសគ្នាទេ។", + "overriddenBaseConfig": "បានបដិសេធ (ការកំណត់រចនាសម្ព័ន្ធមូលដ្ឋាន)", + "overriddenBaseConfigTooltip": "ទម្រង់ {{profile}} បានបដិសេធការកំណត់រចនាសម្ព័ន្ធនៅក្នុងផ្នែកនេះ", + "overriddenBaseConfigHeading_other": "ទម្រង់ {{profile}} បានបដិសេធ {{count}} វាលពីការកំណត់រចនាសម្ព័ន្ធមូលដ្ឋាន៖", + "overriddenBaseConfigNoDeltas": "ទម្រង់ {{profile}} បានបដិសេធផ្នែកនេះ ប៉ុន្តែគ្មានតម្លៃវាលណាខុសពីការកំណត់រចនាសម្ព័ន្ធមូលដ្ឋានទេ។", + "overriddenInCameras": { + "label_other": "បានបដិសេធនៅក្នុង {{count}} កាមេរ៉ា", + "tooltip_other": "{{count}} កាមេរ៉ាបានបដិសេធតម្លៃនៅក្នុងផ្នែកនេះ។ ចុចដើម្បីមើលព័ត៌មានលម្អិត។", + "heading_other": "ផ្នែកសកលនេះមានវាលដែលត្រូវបានបដិសេធនៅក្នុង {{count}} កាមេរ៉ា។", + "othersField_other": "{{count}} ផ្សេងទៀត", + "profilePrefix": "ទម្រង់ {{profile}}៖ {{fields}}" + } + }, + "menuDot": { + "overrideGlobal": "ផ្នែកនេះបានបដិសេធការកំណត់រចនាសម្ព័ន្ធសកល", + "overrideProfile": "ផ្នែកនេះត្រូវបានបដិសេធដោយទម្រង់ {{profile}}", + "unsaved": "ផ្នែកនេះមានការផ្លាស់ប្តូរដែលមិនទាន់បានរក្សាទុក" + }, + "menu": { + "general": "ទូទៅ", + "globalConfig": "ការកំណត់រចនាសម្ព័ន្ធសកល", + "system": "ប្រព័ន្ធ", + "integrations": "ការរួមបញ្ចូល", + "cameras": "ការកំណត់រចនាសម្ព័ន្ធកាមេរ៉ា", + "ui": "ចំណុចប្រទាក់", + "uiSettings": "ការកំណត់ចំណុចប្រទាក់", + "profiles": "ទម្រង់", + "globalDetect": "ការចាប់សញ្ញាវត្ថុ", + "globalRecording": "ការថត", + "globalSnapshots": "រូបថត", + "globalFfmpeg": "FFmpeg", + "globalMotion": "ការចាប់សញ្ញាចលនា", + "globalObjects": "វត្ថុ", + "globalReview": "ពិនិត្យ", + "globalAudioEvents": "ការចាប់សញ្ញាសំឡេង", + "globalLivePlayback": "ការចាក់ផ្សាយបន្តផ្ទាល់", + "globalTimestampStyle": "រចនាប័ទ្មត្រាពេលវេលា", + "systemDatabase": "មូលដ្ឋានទិន្នន័យ", + "systemTls": "TLS", + "systemAuthentication": "ការផ្ទៀងផ្ទាត់អត្តសញ្ញាណ", + "systemNetworking": "បណ្តាញ", + "systemProxy": "ប្រូកស៊ី", + "systemUi": "ចំណុចប្រទាក់", + "systemLogging": "ការកត់ត្រា", + "systemEnvironmentVariables": "អថេរបរិស្ថាន", + "systemTelemetry": "តេឡេម៉ែត្រ", + "systemBirdseye": "Birdseye", + "systemFfmpeg": "FFmpeg", + "systemDetectorsAndModel": "ឧបករណ៍ចាប់សញ្ញា និងម៉ូដែល", + "systemMqtt": "MQTT", + "systemGo2rtcStreams": "ស្ទ្រីម go2rtc", + "integrationSemanticSearch": "ការស្វែងរកតាមអត្ថន័យ", + "integrationGenerativeAi": "AI បង្កើត", + "integrationFaceRecognition": "ការសម្គាល់មុខ", + "integrationLpr": "ការសម្គាល់ផ្លាកលេខ", + "integrationObjectClassification": "ការចំណាត់ថ្នាក់វត្ថុ", + "integrationAudioTranscription": "ការបកស្រាយសំឡេង", + "cameraDetect": "ការចាប់សញ្ញាវត្ថុ", + "cameraFfmpeg": "ស្ទ្រីម (FFmpeg)", + "cameraRecording": "ការថត", + "cameraSnapshots": "រូបថត", + "cameraMotion": "ការចាប់សញ្ញាចលនា", + "cameraObjects": "វត្ថុ", + "cameraConfigReview": "ពិនិត្យ", + "cameraAudioEvents": "ការចាប់សញ្ញាសំឡេង", + "cameraAudioTranscription": "ការបកស្រាយសំឡេង", + "cameraNotifications": "ការជូនដំណឹង", + "cameraLivePlayback": "ការចាក់ផ្សាយបន្តផ្ទាល់", + "cameraBirdseye": "Birdseye", + "cameraFaceRecognition": "ការសម្គាល់មុខ", + "cameraLpr": "ការសម្គាល់ផ្លាកលេខ", + "cameraMqttConfig": "MQTT", + "cameraOnvif": "ONVIF", + "cameraUi": "ចំណុចប្រទាក់កាមេរ៉ា", + "cameraTimestampStyle": "រចនាប័ទ្មត្រាពេលវេលា", + "cameraMqtt": "MQTT កាមេរ៉ា", + "cameraManagement": "ការគ្រប់គ្រងកាមេរ៉ា", + "cameraReview": "ពិនិត្យ", + "masksAndZones": "របាំង / តំបន់", + "motionTuner": "ការកែតម្រូវចលនា", + "enrichments": "ការបន្ថែមព័ត៌មាន", + "users": "អ្នកប្រើប្រាស់", + "roles": "តួនាទី", + "notifications": "ការជូនដំណឹង", + "triggers": "កេះ", + "debug": "បំបាត់កំហុស", + "frigateplus": "Frigate+", + "maintenance": "ការថែទាំ", + "mediaSync": "ការធ្វើសមកាលកម្មមេឌៀ", + "regionGrid": "ក្រឡាតំបន់" + }, + "dialog": { + "unsavedChanges": { + "title": "អ្នកមានការផ្លាស់ប្តូរដែលមិនទាន់បានរក្សាទុក។", + "desc": "តើអ្នកចង់រក្សាទុកការផ្លាស់ប្តូររបស់អ្នកមុននឹងបន្តដែរឬទេ?" + } + }, + "saveAllPreview": { + "title": "ការផ្លាស់ប្តូរដែលត្រូវរក្សាទុក", + "triggerLabel": "ពិនិត្យការផ្លាស់ប្តូរដែលកំពុងរង់ចាំ", + "empty": "គ្មានការផ្លាស់ប្តូរដែលកំពុងរង់ចាំទេ។", + "scope": { + "label": "វិសាលភាព", + "global": "សកល", + "camera": "កាមេរ៉ា៖ {{cameraName}}" + }, + "profile": { + "label": "ទម្រង់" + }, + "field": { + "label": "វាល" + }, + "value": { + "label": "តម្លៃថ្មី", + "reset": "កំណត់ឡើងវិញ" + } + }, + "cameraSetting": { + "camera": "កាមេរ៉ា", + "noCamera": "គ្មានកាមេរ៉ា" + }, + "general": { + "title": "ការកំណត់ចំណុចប្រទាក់", + "liveDashboard": { + "title": "ផ្ទាំងគ្រប់គ្រងបន្តផ្ទាល់", + "automaticLiveView": { + "label": "ការមើលបន្តផ្ទាល់ដោយស្វ័យប្រវត្តិ", + "desc": "ប្តូរទៅការមើលបន្តផ្ទាល់របស់កាមេរ៉ាដោយស្វ័យប្រវត្តិនៅពេលមានសកម្មភាពត្រូវបានចាប់សញ្ញា។ ការបិទជម្រើសនេះនឹងធ្វើឱ្យរូបភាពកាមេរ៉ានៅលើផ្ទាំងគ្រប់គ្រងបន្តផ្ទាល់ធ្វើបច្ចុប្បន្នភាពតែម្តងក្នុងមួយនាទីប៉ុណ្ណោះ។" + }, + "playAlertVideos": { + "label": "ចាក់វីដេអូជូនដំណឹង", + "desc": "ជាលំនាំដើម ការជូនដំណឹងថ្មីៗនៅលើផ្ទាំងគ្រប់គ្រងបន្តផ្ទាល់នឹងចាក់ជាវីដេអូខ្លីៗ។ បិទជម្រើសនេះដើម្បីបង្ហាញតែរូបភាពនៃការជូនដំណឹងថ្មីៗនៅលើឧបករណ៍/កម្មវិធីរុករកនេះប៉ុណ្ណោះ។" + }, + "displayCameraNames": { + "label": "បង្ហាញឈ្មោះកាមេរ៉ាជានិច្ច", + "desc": "បង្ហាញឈ្មោះកាមេរ៉ាជានិច្ចនៅក្នុងបន្ទះស្លាកនៅលើផ្ទាំងគ្រប់គ្រងការមើលបន្តផ្ទាល់កាមេរ៉ាច្រើន។" + }, + "liveFallbackTimeout": { + "label": "ម៉ោងកំណត់ការបម្រុងទុកកម្មវិធីចាក់បន្តផ្ទាល់", + "desc": "នៅពេលដែលស្ទ្រីមបន្តផ្ទាល់គុណភាពខ្ពស់របស់កាមេរ៉ាមិនអាចប្រើបាន សូមប្តូរទៅរបៀបប្រើប្រាស់បណ្តាញទាបបន្ទាប់ពីចំនួនវិនាទីនេះ។ លំនាំដើម៖ 3។" + } + }, + "storedLayouts": { + "title": "ប្លង់ដែលបានរក្សាទុក", + "desc": "ប្លង់កាមេរ៉ានៅក្នុងក្រុមកាមេរ៉ាអាចត្រូវបានអូស ឬប្តូរទំហំ។ ទីតាំងត្រូវបានរក្សាទុកនៅក្នុងឃ្លាំងទិន្នន័យក្នុងតំបន់របស់កម្មវិធីរុករករបស់អ្នក។", + "clearAll": "សម្អាតប្លង់ទាំងអស់" + }, + "cameraGroupStreaming": { + "title": "ការកំណត់ការចាក់ស្ទ្រីមក្រុមកាមេរ៉ា", + "desc": "ការកំណត់ការចាក់ស្ទ្រីមសម្រាប់ក្រុមកាមេរ៉ានីមួយៗត្រូវបានរក្សាទុកនៅក្នុងឃ្លាំងទិន្នន័យក្នុងតំបន់របស់កម្មវិធីរុករករបស់អ្នក។", + "clearAll": "សម្អាតការកំណត់ការចាក់ស្ទ្រីមទាំងអស់" + }, + "recordingsViewer": { + "title": "កម្មវិធីមើលការថត", + "defaultPlaybackRate": { + "label": "ល្បឿនចាក់លំនាំដើម", + "desc": "ល្បឿនចាក់លំនាំដើមសម្រាប់ការចាក់ការថត។" + } + }, + "calendar": { + "title": "ប្រតិទិន", + "firstWeekday": { + "label": "ថ្ងៃដំបូងនៃសប្តាហ៍", + "desc": "ថ្ងៃដែលសប្តាហ៍នៃប្រតិទិនពិនិត្យចាប់ផ្តើម។", + "sunday": "ថ្ងៃអាទិត្យ", + "monday": "ថ្ងៃចន្ទ" + } + }, + "toast": { + "success": { + "clearStoredLayout": "បានសម្អាតប្លង់ដែលបានរក្សាទុកសម្រាប់ {{cameraName}}", + "clearStreamingSettings": "បានសម្អាតការកំណត់ការចាក់ស្ទ្រីមសម្រាប់ក្រុមកាមេរ៉ាទាំងអស់។" + }, + "error": { + "clearStoredLayoutFailed": "បរាជ័យក្នុងការសម្អាតប្លង់ដែលបានរក្សាទុក៖ {{errorMessage}}", + "clearStreamingSettingsFailed": "បរាជ័យក្នុងការសម្អាតការកំណត់ការចាក់ស្ទ្រីម៖ {{errorMessage}}" + } + } + }, + "enrichments": { + "title": "ការកំណត់ការបន្ថែមព័ត៌មាន", + "unsavedChanges": "ការផ្លាស់ប្តូរការកំណត់ការបន្ថែមព័ត៌មានដែលមិនទាន់បានរក្សាទុក", + "birdClassification": { + "title": "ការចំណាត់ថ្នាក់បក្សី", + "desc": "ការចំណាត់ថ្នាក់បក្សីសម្គាល់បក្សីដែលស្គាល់ដោយប្រើម៉ូដែល Tensorflow ដែលបានកាត់បន្ថយ។ នៅពេលដែលបក្សីដែលស្គាល់ត្រូវបានសម្គាល់ ឈ្មោះទូទៅរបស់វានឹងត្រូវបានបន្ថែមជា sub_label។ ព័ត៌មាននេះត្រូវបានរួមបញ្ចូលនៅក្នុងចំណុចប្រទាក់ តម្រង និងការជូនដំណឹង។" + }, + "semanticSearch": { + "title": "ការស្វែងរកតាមអត្ថន័យ", + "desc": "ការស្វែងរកតាមអត្ថន័យនៅក្នុង Frigate អនុញ្ញាតឱ្យអ្នកស្វែងរកវត្ថុដែលបានតាមដាននៅក្នុងធាតុពិនិត្យរបស់អ្នក ដោយប្រើរូបភាពខ្លួនឯង ការពិពណ៌នាអត្ថបទដែលកំណត់ដោយអ្នកប្រើប្រាស់ ឬការពិពណ៌នាដែលបានបង្កើតដោយស្វ័យប្រវត្តិ។", + "reindexNow": { + "label": "ធ្វើសន្ទស្សន៍ឡើងវិញឥឡូវនេះ", + "desc": "ការធ្វើសន្ទស្សន៍ឡើងវិញនឹងបង្កើត embeddings ឡើងវិញសម្រាប់វត្ថុដែលបានតាមដានទាំងអស់។ ដំណើរការនេះដំណើរការនៅផ្ទៃខាងក្រោយ ហើយអាចប្រើប្រាស់ CPU របស់អ្នកពេញកម្រិត និងចំណាយពេលយូរអាស្រ័យលើចំនួនវត្ថុដែលបានតាមដានដែលអ្នកមាន។", + "confirmTitle": "បញ្ជាក់ការធ្វើសន្ទស្សន៍ឡើងវិញ", + "confirmDesc": "តើអ្នកប្រាកដជាចង់ធ្វើសន្ទស្សន៍ឡើងវិញនូវ embeddings វត្ថុដែលបានតាមដានទាំងអស់មែនឬទេ? ដំណើរការនេះនឹងដំណើរការនៅផ្ទៃខាងក្រោយ ប៉ុន្តែវាអាចប្រើប្រាស់ CPU របស់អ្នកពេញកម្រិត និងចំណាយពេលយូរ។ អ្នកអាចមើលវឌ្ឍនភាពនៅលើទំព័រ Explore។", + "confirmButton": "ធ្វើសន្ទស្សន៍ឡើងវិញ", + "success": "ការធ្វើសន្ទស្សន៍ឡើងវិញបានចាប់ផ្តើមដោយជោគជ័យ។", + "alreadyInProgress": "ការធ្វើសន្ទស្សន៍ឡើងវិញកំពុងដំណើរការរួចហើយ។", + "error": "បរាជ័យក្នុងការចាប់ផ្តើមធ្វើសន្ទស្សន៍ឡើងវិញ៖ {{errorMessage}}" + }, + "modelSize": { + "label": "ទំហំម៉ូដែល", + "desc": "ទំហំនៃម៉ូដែលដែលប្រើសម្រាប់ embeddings ការស្វែងរកតាមអត្ថន័យ។", + "small": { + "title": "តូច", + "desc": "ការប្រើប្រាស់ តូច ប្រើកំណែម៉ូដែលដែលបានកាត់បន្ថយ ដែលប្រើ RAM តិចជាង និងដំណើរការលឿនជាងនៅលើ CPU ដោយមានភាពខុសគ្នាតិចតួចបំផុតនៅក្នុងគុណភាព embedding។" + }, + "large": { + "title": "ធំ", + "desc": "ការប្រើប្រាស់ large ប្រើម៉ូដែល Jina ពេញលេញ ហើយនឹងដំណើរការដោយស្វ័យប្រវត្តិនៅលើ GPU ប្រសិនបើអាច។" + } + } + }, + "faceRecognition": { + "title": "ការសម្គាល់មុខ", + "desc": "ការសម្គាល់មុខអនុញ្ញាតឱ្យមនុស្សត្រូវបានកំណត់ឈ្មោះ ហើយនៅពេលដែលមុខរបស់ពួកគេត្រូវបានសម្គាល់ Frigate នឹងកំណត់ឈ្មោះរបស់បុគ្គលនោះជាស្លាករង។ ព័ត៌មាននេះត្រូវបានរួមបញ្ចូលនៅក្នុងចំណុចប្រទាក់ តម្រង និងការជូនដំណឹង។", + "modelSize": { + "label": "ទំហំម៉ូដែល", + "desc": "ទំហំនៃម៉ូដែលដែលប្រើសម្រាប់ការសម្គាល់មុខ។", + "small": { + "title": "តូច", + "desc": "ការប្រើប្រាស់ តូច ប្រើម៉ូដែល face embedding FaceNet ដែលដំណើរការប្រកបដោយប្រសិទ្ធភាពនៅលើ CPU ភាគច្រើន។" + }, + "large": { + "title": "ធំ", + "desc": "ការប្រើប្រាស់ large ប្រើម៉ូដែល face embedding ArcFace ហើយនឹងដំណើរការដោយស្វ័យប្រវត្តិនៅលើ GPU ប្រសិនបើអាច។" + } + } + }, + "licensePlateRecognition": { + "title": "ការសម្គាល់ផ្លាកលេខ", + "desc": "Frigate អាចសម្គាល់ផ្លាកលេខនៅលើយានយន្ត ហើយបន្ថែមតួអក្សរដែលបានចាប់សញ្ញាដោយស្វ័យប្រវត្តិទៅក្នុងវាល recognized_license_plate ឬឈ្មោះដែលស្គាល់ជា sub_label ទៅវត្ថុដែលជាប្រភេទរថយន្ត។ ករណីប្រើប្រាស់ទូទៅអាចជាការអានផ្លាកលេខរថយន្តដែលចូលមកផ្ទះ ឬរថយន្តដែលបើកកាត់តាមផ្លូវ។" + }, + "restart_required": "តម្រូវឱ្យចាប់ផ្តើមឡើងវិញ (ការកំណត់ការបន្ថែមព័ត៌មានបានផ្លាស់ប្តូរ)", + "toast": { + "success": "ការកំណត់ការបន្ថែមព័ត៌មានត្រូវបានរក្សាទុក។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូររបស់អ្នក។", + "error": "បរាជ័យក្នុងការរក្សាទុកការផ្លាស់ប្តូរការកំណត់រចនាសម្ព័ន្ធ៖ {{errorMessage}}" + } + }, + "cameraWizard": { + "title": "បន្ថែមកាមេរ៉ា", + "description": "អនុវត្តតាមជំហានខាងក្រោមដើម្បីបន្ថែមកាមេរ៉ាថ្មីទៅក្នុងការដំឡើង Frigate របស់អ្នក។", + "steps": { + "nameAndConnection": "ឈ្មោះ និងការតភ្ជាប់", + "probeOrSnapshot": "ស្វែងរក ឬរូបថត", + "streamConfiguration": "ការកំណត់រចនាសម្ព័ន្ធស្ទ្រីម", + "validationAndTesting": "ការផ្ទៀងផ្ទាត់ និងការសាកល្បង" + }, + "save": { + "success": "បានរក្សាទុកកាមេរ៉ាថ្មី {{cameraName}} ដោយជោគជ័យ។", + "failure": "កំហុសក្នុងការរក្សាទុក {{cameraName}}។" + }, + "testResultLabels": { + "resolution": "កម្រិតបង្ហាញ", + "video": "វីដេអូ", + "audio": "សំឡេង", + "fps": "FPS" + }, + "commonErrors": { + "noUrl": "សូមផ្តល់ URL ស្ទ្រីមដែលត្រឹមត្រូវ", + "testFailed": "ការសាកល្បងស្ទ្រីមបានបរាជ័យ៖ {{error}}" + }, + "step1": { + "description": "បញ្ចូលព័ត៌មានលម្អិតកាមេរ៉ារបស់អ្នក ហើយជ្រើសរើសស្វែងរកកាមេរ៉ា ឬជ្រើសរើសម៉ាកដោយដៃ។", + "cameraName": "ឈ្មោះកាមេរ៉ា", + "cameraNamePlaceholder": "ឧ. front_door ឬ Back Yard Overview", + "host": "Host/IP Address", + "port": "Port", + "username": "ឈ្មោះអ្នកប្រើប្រាស់", + "usernamePlaceholder": "ជាជម្រើស", + "password": "ពាក្យសម្ងាត់", + "passwordPlaceholder": "ជាជម្រើស", + "selectTransport": "ជ្រើសរើសពិធីការដឹកជញ្ជូន", + "cameraBrand": "ម៉ាកកាមេរ៉ា", + "selectBrand": "ជ្រើសរើសម៉ាកកាមេរ៉ាសម្រាប់គំរូ URL", + "customUrl": "URL ស្ទ្រីមផ្ទាល់ខ្លួន", + "brandInformation": "ព័ត៌មានម៉ាក", + "brandUrlFormat": "សម្រាប់កាមេរ៉ាដែលមានទម្រង់ URL RTSP ដូចជា៖ {{exampleUrl}}", + "customUrlPlaceholder": "rtsp://username:password@host:port/path", + "connectionSettings": "ការកំណត់ការតភ្ជាប់", + "detectionMethod": "វិធីសាស្ត្រចាប់សញ្ញាស្ទ្រីម", + "onvifPort": "ONVIF Port", + "probeMode": "ស្វែងរកកាមេរ៉ា", + "manualMode": "ការជ្រើសរើសដោយដៃ", + "detectionMethodDescription": "ស្វែងរកកាមេរ៉ាជាមួយ ONVIF (ប្រសិនបើគាំទ្រ) ដើម្បីស្វែងរក URL ស្ទ្រីមកាមេរ៉ា ឬជ្រើសរើសម៉ាកកាមេរ៉ាដោយដៃដើម្បីប្រើ URL ដែលបានកំណត់ជាមុន។ ដើម្បីបញ្ចូល URL RTSP ផ្ទាល់ខ្លួន សូមជ្រើសរើសវិធីសាស្ត្រដោយដៃ ហើយជ្រើសរើស \"Other\"។", + "onvifPortDescription": "សម្រាប់កាមេរ៉ាដែលគាំទ្រ ONVIF នេះជាធម្មតាគឺ 80 ឬ 8080។", + "useDigestAuth": "ប្រើការផ្ទៀងផ្ទាត់អត្តសញ្ញាណ digest", + "useDigestAuthDescription": "ប្រើការផ្ទៀងផ្ទាត់អត្តសញ្ញាណ HTTP digest សម្រាប់ ONVIF។ កាមេរ៉ាមួយចំនួនអាចតម្រូវឱ្យមានឈ្មោះអ្នកប្រើប្រាស់/ពាក្យសម្ងាត់ ONVIF ពិសេស ជំនួសឱ្យអ្នកគ្រប់គ្រងស្តង់ដារ។", + "errors": { + "brandOrCustomUrlRequired": "ជ្រើសរើសម៉ាកកាមេរ៉ាជាមួយ host/IP ឬជ្រើសរើស 'Other' ជាមួយ URL ផ្ទាល់ខ្លួន", + "nameRequired": "ឈ្មោះកាមេរ៉ាត្រូវបានទាមទារ", + "nameLength": "ឈ្មោះកាមេរ៉ាត្រូវតែមាន 64 តួអក្សរ ឬតិចជាង", + "invalidCharacters": "ឈ្មោះកាមេរ៉ាមានតួអក្សរមិនត្រឹមត្រូវ", + "nameExists": "ឈ្មោះកាមេរ៉ាមានរួចហើយ", + "customUrlRtspRequired": "URL ផ្ទាល់ខ្លួនត្រូវតែចាប់ផ្តើមដោយ \"rtsp://\" ឬ \"rtsps://\"។ ការកំណត់រចនាសម្ព័ន្ធដោយដៃត្រូវបានទាមទារសម្រាប់ស្ទ្រីមកាមេរ៉ាដែលមិនមែនជា RTSP។" + } + }, + "step2": { + "description": "ស្វែងរកកាមេរ៉ាសម្រាប់ស្ទ្រីមដែលមាន ឬកំណត់រចនាសម្ព័ន្ធដោយដៃដោយផ្អែកលើវិធីសាស្ត្រចាប់សញ្ញាដែលអ្នកបានជ្រើសរើស។", + "testSuccess": "ការសាកល្បងការតភ្ជាប់បានជោគជ័យ!", + "testFailed": "ការសាកល្បងការតភ្ជាប់បានបរាជ័យ។ សូមពិនិត្យមើលការបញ្ចូលរបស់អ្នក ហើយព្យាយាមម្តងទៀត។", + "testFailedTitle": "ការសាកល្បងបានបរាជ័យ", + "streamDetails": "ព័ត៌មានលម្អិតស្ទ្រីម", + "probing": "កំពុងស្វែងរកកាមេរ៉ា...", + "retry": "ព្យាយាមម្តងទៀត", + "testing": { + "probingMetadata": "កំពុងស្វែងរកទិន្នន័យមេតាកាមេរ៉ា...", + "fetchingSnapshot": "កំពុងទាញយករូបថតកាមេរ៉ា..." + }, + "probeFailed": "បរាជ័យក្នុងការស្វែងរកកាមេរ៉ា៖ {{error}}", + "probingDevice": "កំពុងស្វែងរកឧបករណ៍...", + "probeSuccessful": "ការស្វែងរកបានជោគជ័យ", + "probeError": "កំហុសការស្វែងរក", + "probeNoSuccess": "ការស្វែងរកមិនបានជោគជ័យ", + "deviceInfo": "ព័ត៌មានឧបករណ៍", + "manufacturer": "ក្រុមហ៊ុនផលិត", + "model": "ម៉ូដែល", + "firmware": "Firmware", + "profiles": "ទម្រង់", + "ptzSupport": "ការគាំទ្រ PTZ", + "autotrackingSupport": "ការគាំទ្រ Autotracking", + "presets": "ការកំណត់ជាមុន", + "rtspCandidates": "បេក្ខភាព RTSP", + "rtspCandidatesDescription": "URL RTSP ខាងក្រោមត្រូវបានរកឃើញពីការស្វែងរកកាមេរ៉ា។ សាកល្បងការតភ្ជាប់ដើម្បីមើលទិន្នន័យមេតាស្ទ្រីម។", + "noRtspCandidates": "គ្មាន URL RTSP ត្រូវបានរកឃើញពីកាមេរ៉ាទេ។ ព័ត៌មានសម្ងាត់របស់អ្នកអាចមិនត្រឹមត្រូវ ឬកាមេរ៉ាអាចមិនគាំទ្រ ONVIF ឬវិធីសាស្ត្រដែលប្រើដើម្បីទាញយក URL RTSP។ សូមត្រឡប់ក្រោយ ហើយបញ្ចូល URL RTSP ដោយដៃ។", + "candidateStreamTitle": "បេក្ខភាព {{number}}", + "useCandidate": "ប្រើ", + "uriCopy": "ចម្លង", + "uriCopied": "URI ត្រូវបានចម្លងទៅ clipboard", + "testConnection": "សាកល្បងការតភ្ជាប់", + "toggleUriView": "ចុចដើម្បីបិទ/បើកការមើល URI ពេញលេញ", + "connected": "បានតភ្ជាប់", + "notConnected": "មិនបានតភ្ជាប់", + "errors": { + "hostRequired": "Host/IP address ត្រូវបានទាមទារ" + } + }, + "step3": { + "description": "កំណត់រចនាសម្ព័ន្ធតួនាទីស្ទ្រីម និងបន្ថែមស្ទ្រីមបន្ថែមសម្រាប់កាមេរ៉ារបស់អ្នក។", + "streamsTitle": "ស្ទ្រីមកាមេរ៉ា", + "addStream": "បន្ថែមស្ទ្រីម", + "addAnotherStream": "បន្ថែមស្ទ្រីមមួយទៀត", + "streamTitle": "ស្ទ្រីម {{number}}", + "streamUrl": "URL ស្ទ្រីម", + "streamUrlPlaceholder": "rtsp://username:password@host:port/path", + "selectStream": "ជ្រើសរើសស្ទ្រីម", + "searchCandidates": "ស្វែងរកបេក្ខភាព...", + "noStreamFound": "រកមិនឃើញស្ទ្រីម", + "url": "URL", + "resolution": "កម្រិតបង្ហាញ", + "selectResolution": "ជ្រើសរើសកម្រិតបង្ហាញ", + "quality": "គុណភាព", + "selectQuality": "ជ្រើសរើសគុណភាព", + "roles": "តួនាទី", + "roleLabels": { + "detect": "ការចាប់សញ្ញាវត្ថុ", + "record": "ការថត", + "audio": "សំឡេង" + }, + "testStream": "សាកល្បងការតភ្ជាប់", + "testSuccess": "ការសាកល្បងស្ទ្រីមបានជោគជ័យ!", + "testFailed": "ការសាកល្បងស្ទ្រីមបានបរាជ័យ", + "testFailedTitle": "ការសាកល្បងបានបរាជ័យ", + "connected": "បានតភ្ជាប់", + "notConnected": "មិនបានតភ្ជាប់", + "featuresTitle": "មុខងារ", + "go2rtc": "កាត់បន្ថយការតភ្ជាប់ទៅកាមេរ៉ា", + "detectRoleWarning": "យ៉ាងហោចណាស់ស្ទ្រីមមួយត្រូវតែមានតួនាទី \"detect\" ដើម្បីបន្ត។", + "rolesPopover": { + "title": "តួនាទីស្ទ្រីម", + "detect": "មតិព័ត៌មានសំខាន់សម្រាប់ការចាប់សញ្ញាវត្ថុ។", + "record": "រក្សាទុកផ្នែកនៃមតិព័ត៌មានវីដេអូដោយផ្អែកលើការកំណត់រចនាសម្ព័ន្ធ។", + "audio": "មតិព័ត៌មានសម្រាប់ការចាប់សញ្ញាដោយផ្អែកលើសំឡេង។" + }, + "featuresPopover": { + "title": "មុខងារស្ទ្រីម", + "description": "ប្រើការចាក់ស្ទ្រីមឡើងវិញ go2rtc ដើម្បីកាត់បន្ថយការតភ្ជាប់ទៅកាមេរ៉ារបស់អ្នក។" + } + }, + "step4": { + "description": "ការផ្ទៀងផ្ទាត់ និងការវិភាគចុងក្រោយមុនពេលរក្សាទុកកាមេរ៉ាថ្មីរបស់អ្នក។ តភ្ជាប់ស្ទ្រីមនីមួយៗមុនពេលរក្សាទុក។", + "validationTitle": "ការផ្ទៀងផ្ទាត់ស្ទ្រីម", + "connectAllStreams": "តភ្ជាប់ស្ទ្រីមទាំងអស់", + "reconnectionSuccess": "ការតភ្ជាប់ឡើងវិញបានជោគជ័យ។", + "reconnectionPartial": "ស្ទ្រីមមួយចំនួនបរាជ័យក្នុងការតភ្ជាប់ឡើងវិញ។", + "streamUnavailable": "ការមើលជាមុនស្ទ្រីមមិនមាន", + "reload": "ផ្ទុកឡើងវិញ", + "connecting": "កំពុងតភ្ជាប់...", + "streamTitle": "ស្ទ្រីម {{number}}", + "valid": "ត្រឹមត្រូវ", + "failed": "បរាជ័យ", + "notTested": "មិនបានសាកល្បង", + "connectStream": "តភ្ជាប់", + "connectingStream": "កំពុងតភ្ជាប់", + "disconnectStream": "ផ្តាច់", + "estimatedBandwidth": "កម្រិតបញ្ជូនដែលបានប៉ាន់ស្មាន", + "roles": "តួនាទី", + "ffmpegModule": "ប្រើរបៀប tương thích ស្ទ្រីម", + "ffmpegModuleDescription": "ប្រសិនបើស្ទ្រីមមិនផ្ទុកបន្ទាប់ពីការព្យាយាមជាច្រើនដង សូមព្យាយាមបើកវា។ នៅពេលបើក Frigate នឹងប្រើម៉ូឌុល ffmpeg ជាមួយ go2rtc។ នេះអាចផ្តល់ភាពឆបគ្នាប្រសើរជាងមុនជាមួយស្ទ្រីមកាមេរ៉ាមួយចំនួន។", + "none": "គ្មាន", + "error": "កំហុស", + "streamValidated": "ស្ទ្រីម {{number}} ត្រូវបានផ្ទៀងផ្ទាត់ដោយជោគជ័យ", + "streamValidationFailed": "ការផ្ទៀងផ្ទាត់ស្ទ្រីម {{number}} បានបរាជ័យ", + "saveAndApply": "រក្សាទុកកាមេរ៉ាថ្មី", + "saveError": "ការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវ។ សូមពិនិត្យមើលការកំណត់របស់អ្នក។", + "issues": { + "title": "ការផ្ទៀងផ្ទាត់ស្ទ្រីម", + "videoCodecGood": "កូឌិកវីដេអូគឺ {{codec}}។", + "audioCodecGood": "កូឌិកសំឡេងគឺ {{codec}}។", + "resolutionHigh": "កម្រិតបង្ហាញ {{resolution}} អាចបណ្តាលឱ្យការប្រើប្រាស់ធនធានកើនឡើង។", + "resolutionLow": "កម្រិតបង្ហាញ {{resolution}} អាចទាបពេកសម្រាប់ការចាប់សញ្ញាវត្ថុតូចៗដោយអាចទុកចិត្តបាន។", + "resolutionUnknown": "កម្រិតបង្ហាញនៃស្ទ្រីមនេះមិនអាចត្រូវបានស្វែងរកទេ។ អ្នកគួរតែកំណត់កម្រិតបង្ហាញការចាប់សញ្ញាដោយដៃនៅក្នុងការកំណត់ ឬការកំណត់រចនាសម្ព័ន្ធរបស់អ្នក។", + "noAudioWarning": "រកមិនឃើញសំឡេងសម្រាប់ស្ទ្រីមនេះទេ ការថតនឹងគ្មានសំឡេង។", + "audioCodecRecordError": "កូឌិកសំឡេង AAC ត្រូវបានទាមទារដើម្បីគាំទ្រសំឡេងនៅក្នុងការថត។", + "audioCodecRequired": "ស្ទ្រីមសំឡេងត្រូវបានទាមទារដើម្បីគាំទ្រការចាប់សញ្ញាសំឡេង។", + "restreamingWarning": "ការកាត់បន្ថយការតភ្ជាប់ទៅកាមេរ៉ាសម្រាប់ស្ទ្រីមថតអាចបង្កើនការប្រើប្រាស់ CPU បន្តិចបន្តួច។", + "brands": { + "reolink-rtsp": "Reolink RTSP មិនត្រូវបានណែនាំទេ។ បើក HTTP នៅក្នុងការកំណត់ firmware របស់កាមេរ៉ា ហើយចាប់ផ្តើមអ្នកជំនួយការឡើងវិញ។", + "reolink-http": "ស្ទ្រីម Reolink HTTP គួរតែប្រើ FFmpeg សម្រាប់ភាពឆបគ្នាប្រសើរជាងមុន។ បើក 'Use stream compatibility mode' សម្រាប់ស្ទ្រីមនេះ។" + }, + "dahua": { + "substreamWarning": "Substream 1 ត្រូវបានចាក់សោទៅកម្រិតបង្ហាញទាប។ កាមេរ៉ា Dahua / Amcrest / EmpireTech ជាច្រើនគាំទ្រ substreams បន្ថែមដែលត្រូវការបើកនៅក្នុងការកំណត់របស់កាមេរ៉ា។ វាត្រូវបានណែនាំឱ្យពិនិត្យ និងប្រើប្រាស់ស្ទ្រីមទាំងនោះប្រសិនបើមាន។" + }, + "hikvision": { + "substreamWarning": "ស្ទ្រីមរង 1 ត្រូវបានកំណត់ឱ្យនៅកម្រិតបង្ហាញទាប។ កាមេរ៉ា Hikvision ជាច្រើនគាំទ្រស្ទ្រីមរងបន្ថែម ដែលត្រូវការបើកនៅក្នុងការកំណត់របស់កាមេរ៉ា។ អ្នកគួរតែពិនិត្យ និងប្រើប្រាស់ស្ទ្រីមទាំងនោះប្រសិនបើមាន។" + } + } + } + }, + "cameraManagement": { + "title": "គ្រប់គ្រងកាមេរ៉ា", + "description": "បន្ថែម កែសម្រួល និងលុបកាមេរ៉ា គ្រប់គ្រងស្ថានភាពនៃកាមេរ៉ានីមួយៗ និងកំណត់ការផ្លាស់ប្តូរតាមប្រវត្តិរូប និងប្រភេទកាមេរ៉ា។ ដើម្បីកំណត់ស្ទ្រីម ការរកឃើញ ចលនា และการตั้งค่าเฉพาะคาเมราอื่นๆ โปรดเลือกส่วนที่เจาะจงภายใต้ การกำหนดค่าคาเมรา។", + "addCamera": "បន្ថែមកាមេរ៉ាថ្មី", + "deleteCamera": "លុបកាមេរ៉ា", + "deleteCameraDialog": { + "title": "លុបកាមេរ៉ា", + "description": "ការលុបកាមេរ៉ានឹងលុបចោលជាអចិន្ត្រៃយ៍នូវការថតវីដេអូ វត្ថុដែលបានតាមដាន និងការកំណត់ទាំងអស់សម្រាប់កាមេរ៉ានោះ។ ស្ទ្រីម go2rtc ទាំងឡាយណាដែលពាក់ព័ន្ធជាមួយកាមេរ៉ានេះ អាចនៅតែត្រូវការលុបចេញដោយផ្ទាល់ដៃ។", + "selectPlaceholder": "ជ្រើសរើសកាមេរ៉ា…", + "confirmTitle": "តើអ្នកប្រាកដដែរឬទេ?", + "confirmWarning": "ការលុប {{cameraName}} មិនអាចត្រឡប់វិញបានទេ។", + "deleteExports": "លុបការនាំចេញសម្រាប់កាមេរ៉ានេះផងដែរ", + "confirmButton": "លុបជាអចិន្ត្រៃយ៍", + "success": "កាមេរ៉ា {{cameraName}} ត្រូវបានលុបដោយជោគជ័យ", + "error": "បរាជ័យក្នុងការលុបកាមេរ៉ា {{cameraName}}" + }, + "editCamera": "កែសម្រួលកាមេរ៉ា៖", + "selectCamera": "ជ្រើសរើសកាមេរ៉ា", + "backToSettings": "ត្រឡប់ទៅការកំណត់កាមេរ៉ា", + "streams": { + "title": "ស្ថានភាព និងព័ត៌មានលម្អិតនៃកាមេរ៉ា", + "label": "ស្ថានភាពកាមេរ៉ា", + "description": "កំណត់ស្ថានភាពប្រតិបត្តិការសម្រាប់កាមេរ៉ានីមួយៗ។

បើក: ស្ទ្រីមត្រូវបានដំណើរការជាធម្មតា។
បើក : ផ្អាកការដំណើរការជាបណ្តោះអាសន្ន។ មិនរក្សាទុកនៅពេលចាប់ផ្តើម Frigate ឡើងវិញទេ។
បិទជាអចិន្ត្រៃយ៍: បញ្ឈប់ការដំណើរការ និងរក្សាទុកការផ្លាស់ប្តូរទៅក្នុងការកំណត់របស់អ្នក។ ត្រូវការចាប់ផ្តើមឡើងវិញដើម្បីបើកកាមេរ៉ាដែលបានបិទជាអចិន្ត្រៃយ៍។

សម្គាល់៖ ការបិទជាអចិន្ត្រៃយ៍មិនប៉ះពាល់ដល់ការ restream របស់ go2rtc ទេ។

អូសដៃគ្រប់គ្រងដើម្បីតម្រៀបកាមេរ៉ាដែលកំពុងសកម្មឡើងវិញ នៅពេលដែលវាលេចឡើងពេញផ្ទៃអេក្រង់ រួមទាំងផ្ទាំងបញ្ជាផ្ទាល់ និងបញ្ជីធ្លាក់ចុះនៃការជ្រើសរើសកាមេរ៉ា។", + "disabledSubheading": "បានបិទនៅក្នុងការកំណត់", + "status": { + "on": "បើក", + "off": "បិទ", + "disabled": "បានបិទ" + }, + "enableSuccess": "បានបើក {{cameraName}}។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្ត។", + "disableSuccess": "បានបិទ {{cameraName}} និងរក្សាទុកក្នុងការកំណត់។", + "reorderHandle": "អូសដើម្បីតម្រៀបឡើងវិញ", + "saving": "កំពុងរក្សាទុក…", + "saved": "បានរក្សាទុក", + "details": { + "edit": "កែសម្រួលព័ត៌មានលម្អិតនៃកាមេរ៉ា", + "title": "កែសម្រួលព័ត៌មានលម្អិតនៃកាមេរ៉ា", + "description": "ធ្វើបច្ចុប្បន្នភាពឈ្មោះបង្ហាញ URL ខាងក្រៅ និងភាពមើលឃើញដែលប្រើសម្រាប់កាមេរ៉ានេះ នៅទូទាំងផ្ទៃអេក្រង់ Frigate។", + "friendlyNameLabel": "ឈ្មោះបង្ហាញ", + "friendlyNameHelp": "ឈ្មោះងាយស្រួលដែលបង្ហាញសម្រាប់កាមេរ៉ានេះនៅទូទាំងផ្ទៃអេក្រង់ Frigate។ ទុកឱ្យនៅទទេដើម្បីប្រើលេខសម្គាល់កាមេរ៉ា។", + "webuiUrlLabel": "URL ផ្ទៃអេក្រង់វេបរបស់កាមេរ៉ា", + "webuiUrlHelp": "URL ដើម្បីចូលទៅកាន់ផ្ទៃអេក្រង់វេបរបស់កាមេរ៉ាដោយផ្ទាល់ពីទិដ្ឋភាព Debug។ ទុកឱ្យនៅទទេដើម្បីបិទតំណភ្ជាប់។", + "webuiUrlInvalid": "ត្រូវតែជា URL ត្រឹមត្រូវ (ឧ. https://example.com)។", + "dashboardLabel": "បង្ហាញលើផ្ទាំងបញ្ជាផ្ទាល់", + "dashboardHelp": "បង្ហាញកាមេរ៉ានេះលើផ្ទាំងបញ្ជាផ្ទាល់នៃកាមេរ៉ាទាំងអស់ដែលបានកំណត់ជាលំនាំដើម។ វានៅតែអាចប្រើបាននៅគ្រប់ទីកន្លែងផ្សេងទៀត រួមទាំងក្រុមកាមេរ៉ាផងដែរ។", + "reviewLabel": "បង្ហាញក្នុងការត្រួតពិនិត្យ", + "reviewHelp": "បង្ហាញកាមេរ៉ានេះក្នុងការត្រួតពិនិត្យ រួមទាំងតម្រងកាមេរ៉ា ការត្រួតពិនិត្យចលនា និងទិដ្ឋភាពប្រវត្តិ។" + } + }, + "cameraConfig": { + "add": "បន្ថែមកាមេរ៉ា", + "edit": "កែសម្រួលកាមេរ៉ា", + "description": "កំណត់ការកំណត់កាមេរ៉ា រួមទាំងបញ្ចូលស្ទ្រីម និងតួនាទី។", + "name": "ឈ្មោះកាមេរ៉ា", + "nameRequired": "ឈ្មោះកាមេរ៉ាគឺចាំបាច់", + "nameLength": "ឈ្មោះកាមេរ៉ាត្រូវតែមានតិចជាង ៦៤ តួអក្សរ។", + "namePlaceholder": "ឧ. front_door ឬ Back Yard Overview", + "enabled": "បានបើក", + "ffmpeg": { + "inputs": "ស្ទ្រីមបញ្ចូល", + "path": "ផ្លូវស្ទ្រីម", + "pathRequired": "ផ្លូវស្ទ្រីមគឺចាំបាច់", + "pathPlaceholder": "rtsp://...", + "roles": "តួនាទី", + "rolesRequired": "ត្រូវការយ៉ាងហោចណាស់មួយតួនាទី", + "rolesUnique": "តួនាទីនីមួយៗ (សំឡេង, រកឃើញ, ថត) អាចត្រូវបានកំណត់ឱ្យតែមួយស្ទ្រីមប៉ុណ្ណោះ", + "addInput": "បន្ថែមស្ទ្រីមបញ្ចូល", + "removeInput": "ដកស្ទ្រីមបញ្ចូលចេញ", + "inputsRequired": "ត្រូវការយ៉ាងហោចណាស់មួយស្ទ្រីមបញ្ចូល" + }, + "go2rtcStreams": "ស្ទ្រីម go2rtc", + "streamUrls": "URL ស្ទ្រីម", + "addUrl": "បន្ថែម URL", + "addGo2rtcStream": "បន្ថែមស្ទ្រីម go2rtc", + "toast": { + "success": "កាមេរ៉ា {{cameraName}} ត្រូវបានរក្សាទុកដោយជោគជ័យ" + } + }, + "profiles": { + "title": "ការផ្លាស់ប្តូរកាមេរ៉ាតាមប្រវត្តិរូប", + "selectLabel": "ជ្រើសរើសប្រវត្តិរូប", + "description": "កំណត់ថាកាមេរ៉ាណាខ្លះត្រូវបើក ឬបិទ នៅពេលដែលប្រវត្តិរូបត្រូវបានដំណើរការ។ កាមេរ៉ាដែលបានកំណត់ជា \"ទទួលមរតក\" នឹងរក្សាស្ថានភាពលំនាំដើមរបស់វា។", + "inherit": "ទទួលមរតក", + "on": "បើក", + "off": "បិទ" + }, + "cameraType": { + "title": "ប្រភេទកាមេរ៉ា", + "label": "ប្រភេទកាមេរ៉ា", + "description": "កំណត់ប្រភេទសម្រាប់កាមេរ៉ានីមួយៗ។ កាមេរ៉ា LPR ពិសេសគឺជាកាមេរ៉ាដែលមានគោលបំណងតែមួយ ដែលមានការពង្រីកអុបទិកខ្លាំង ដើម្បីចាប់យកផ្លាកលេខនៅលើយានយន្តដែលនៅឆ្ងាយ។ កាមេរ៉ាភាគច្រើនគួរតែប្រើប្រភេទកាមេរ៉ាធម្មតា លើកលែងតែកាមេរ៉ានោះមានគោលបំណងពិសេសសម្រាប់ LPR ហើយមានទិដ្ឋភាពផ្តោតយ៉ាងច្បាស់លាស់លើផ្លាកលេខ។", + "normal": "ធម្មតា", + "dedicatedLpr": "LPR ពិសេស", + "saveSuccess": "បានធ្វើបច្ចុប្បន្នភាពប្រភេទកាមេរ៉ាសម្រាប់ {{cameraName}}។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរ។" + }, + "clone": { + "sectionTitle": "ការកំណត់ចម្លង", + "sectionDescription": "ចម្លងការកំណត់ពីកាមេរ៉ាមួយទៅកាមេរ៉ាមួយទៀត ឬកាមេរ៉ាថ្មី។", + "button": "ចម្លងការកំណត់", + "title": "ចម្លងការកំណត់កាមេរ៉ា", + "description": "ចម្លងការកំណត់របស់កាមេរ៉ាទៅកាន់កាមេរ៉ាផ្សេងទៀតមួយ ឬច្រើន ឬកាមេរ៉ាថ្មី។ អត្តសញ្ញាណ (ឈ្មោះ, ឈ្មោះងាយស្រួល, URL ផ្ទៃអេក្រង់វេប, លំដាប់បង្ហាញ) មិនត្រូវបានចម្លងទេ។", + "source": { + "label": "កាមេរ៉ាប្រភព", + "placeholder": "ជ្រើសរើសកាមេរ៉ាប្រភព", + "required": "ជ្រើសរើសកាមេរ៉ាប្រភព" + }, + "target": { + "legend": "គោលដៅ", + "newRadio": "កាមេរ៉ាថ្មី", + "newNameLabel": "ឈ្មោះកាមេរ៉ា", + "newNamePlaceholder": "ឧ. back_door ឬ Back Door", + "newNameRequired": "ឈ្មោះកាមេរ៉ាគឺចាំបាច់", + "newNameInvalid": "ឈ្មោះកាមេរ៉ាមិនត្រឹមត្រូវ", + "newNameCollision": "កាមេរ៉ាដែលមានឈ្មោះនេះមានរួចហើយ", + "newStreamsForced": "ស្ទ្រីមត្រូវបានចម្លងជានិច្ចសម្រាប់កាមេរ៉ាថ្មី។", + "existingCamerasRadio": "កាមេរ៉ាដែលមានស្រាប់", + "allCameras": "កាមេរ៉ាទាំងអស់", + "existingPlaceholder": "ជ្រើសរើសយ៉ាងហោចណាស់មួយកាមេរ៉ា", + "existingDisabled": "មិនមានកាមេរ៉ាផ្សេងទៀតដើម្បីចម្លងទៅ" + }, + "categories": { + "legend": "ការកំណត់ដើម្បីចម្លង", + "description": "ជ្រើសរើសការកំណត់ណាដែលត្រូវចម្លងពីកាមេរ៉ាប្រភព។", + "selectAll": "ជ្រើសរើសទាំងអស់", + "selectNone": "មិនជ្រើសរើស", + "resetDefaults": "កំណត់ឡើងវិញទៅលំនាំដើម", + "general": "ទូទៅ", + "spatial": "ការកំណត់លំហ", + "streams": "ស្ទ្រីម", + "spatialWarningTitle": "កម្រិតបង្ហាញមិនត្រូវគ្នា", + "spatialWarning": "កម្រិតបង្ហាញរកឃើញរបស់កាមេរ៉ាប្រភព {{srcCamera}} ({{srcWidth}}×{{srcHeight}}) ខុសពី៖ {{cameras}}។ ពហុកោណអាចនឹងមិនតម្រឹមគ្នានៅលើកាមេរ៉ាទាំងនោះទេ។ លំនាំដើមទាំងនេះត្រូវបានបិទ; បើកដើម្បីចម្លងដូចដើម។", + "restartHint": "ត្រូវការចាប់ផ្តើមឡើងវិញ", + "items": { + "record": "ការថត", + "snapshots": "រូបថត", + "review": "ការត្រួតពិនិត្យ", + "motion": "ការរកឃើញចលនា", + "objects": "វត្ថុ", + "audio": "ការរកឃើញសំឡេង", + "audio_transcription": "ការចម្លងសំឡេង", + "notifications": "ការជូនដំណឹង", + "birdseye": "Birdseye", + "mqtt": "MQTT", + "timestamp_style": "រចនាប័ទ្មពេលវេលា", + "onvif": "ONVIF", + "lpr": "ការសម្គាល់ផ្លាកលេខ", + "face_recognition": "ការសម្គាល់មុខ", + "semantic_search": "ការស្វែងរកតាមអត្ថន័យ", + "genai": "បង្កើតដោយ AI", + "type": "ប្រភេទកាមេរ៉ា (ធម្មតា / LPR ពិសេស)", + "profiles": "ប្រវត្តិរូប", + "detect": "វិមាត្ររកឃើញ", + "zones": "តំបន់", + "motion_mask": "ម៉ាសចលនា", + "object_masks": "ម៉ាសវត្ថុ", + "ffmpeg_live": "URL ស្ទ្រីម និងតួនាទី" + } + }, + "footer": { + "changeCount_other": "ការផ្លាស់ប្តូរ {{count}} នឹងត្រូវបានអនុវត្ត", + "restartNeeded": "ការចាប់ផ្តើមឡើងវិញនឹងត្រូវបានទាមទារសម្រាប់ការផ្លាស់ប្តូរមួយចំនួន។", + "liveOnly": "ការផ្លាស់ប្តូរទាំងអស់នឹងអនុវត្តភ្លាមៗដោយមិនចាំបាច់ចាប់ផ្តើមឡើងវិញ។", + "submit": "ចម្លង", + "submitting": "កំពុងចម្លង…" + }, + "toast": { + "success": "ការកំណត់ត្រូវបានចម្លងទៅ {{cameraName}}", + "successWithRestart": "ការកំណត់ត្រូវបានចម្លងទៅ {{cameraName}}។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរទាំងអស់។", + "successMulti_other": "ការកំណត់ត្រូវបានចម្លងទៅកាមេរ៉ា {{count}}", + "successMultiWithRestart_other": "ការកំណត់ត្រូវបានចម្លងទៅកាមេរ៉ា {{count}}។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរទាំងអស់។", + "partialFailure": "ផ្នែក {{successCount}} ត្រូវបានអនុវត្ត; '{{failedSection}}' បានបរាជ័យ៖ {{errorMessage}}", + "partialFailureMulti": "បានចម្លងទៅកាមេរ៉ា {{successCount}}; បានបរាជ័យសម្រាប់ {{failed}}៖ {{errorMessage}}", + "newCameraPartialFailure": "កាមេរ៉ា {{cameraName}} ត្រូវបានបង្កើត ប៉ុន្តែការកំណត់មួយចំនួនបានបរាជ័យក្នុងការចម្លង៖ {{errorMessage}}", + "sourceMissing": "កាមេរ៉ាប្រភពលែងមានទៀតហើយ", + "submitError": "បរាជ័យក្នុងការចម្លងកាមេរ៉ា៖ {{errorMessage}}" + } + } + }, + "cameraReview": { + "title": "ការកំណត់ការត្រួតពិនិត្យកាមេរ៉ា", + "object_descriptions": { + "title": "ការពិពណ៌នាវត្ថុ Generative AI", + "desc": "បើក/បិទ ការពិពណ៌នាវត្ថុ Generative AI សម្រាប់កាមេរ៉ានេះជាបណ្តោះអាសន្ន រហូតដល់ Frigate ចាប់ផ្តើមឡើងវិញ។ នៅពេលបិទ ការពិពណ៌នាដែលបង្កើតដោយ AI នឹងមិនត្រូវបានស្នើសុំសម្រាប់វត្ថុដែលបានតាមដាននៅលើកាមេរ៉ានេះទេ។" + }, + "review_descriptions": { + "title": "ការពិពណ៌នាការត្រួតពិនិត្យ Generative AI", + "desc": "បើក/បិទ ការពិពណ៌នាការត្រួតពិនិត្យ Generative AI សម្រាប់កាមេរ៉ានេះជាបណ្តោះអាសន្ន រហូតដល់ Frigate ចាប់ផ្តើមឡើងវិញ។ នៅពេលបិទ ការពិពណ៌នាដែលបង្កើតដោយ AI នឹងមិនត្រូវបានស្នើសុំសម្រាប់ធាតុត្រួតពិនិត្យនៅលើកាមេរ៉ានេះទេ។" + }, + "review": { + "title": "ការត្រួតពិនិត្យ", + "desc": "បើក/បិទ ការជូនដំណឹង និងការរកឃើញសម្រាប់កាមេរ៉ានេះជាបណ្តោះអាសន្ន រហូតដល់ Frigate ចាប់ផ្តើមឡើងវិញ។ នៅពេលបិទ ធាតុត្រួតពិនិត្យថ្មីនឹងមិនត្រូវបានបង្កើតទេ។ ", + "alerts": "ការជូនដំណឹង ", + "detections": "ការរកឃើញ " + }, + "reviewClassification": { + "title": "ការចាត់ថ្នាក់ការត្រួតពិនិត្យ", + "desc": "Frigate ចាត់ថ្នាក់ធាតុត្រួតពិនិត្យជា ការជូនដំណឹង និង ការរកឃើញ។ ជាលំនាំដើម វត្ថុ មនុស្ស និង រថយន្ត ទាំងអស់ត្រូវបានចាត់ទុកថាជាការជូនដំណឹង។ អ្នកអាចកែលម្អការចាត់ថ្នាក់នៃធាតុត្រួតពិនិត្យរបស់អ្នក ដោយកំណត់តំបន់ដែលត្រូវការសម្រាប់ពួកវា។", + "noDefinedZones": "មិនមានតំបន់ណាមួយត្រូវបានកំណត់សម្រាប់កាមេរ៉ានេះទេ។", + "objectAlertsTips": "វត្ថុ {{alertsLabels}} ទាំងអស់នៅលើ {{cameraName}} នឹងត្រូវបានបង្ហាញជាការជូនដំណឹង។", + "zoneObjectAlertsTips": "វត្ថុ {{alertsLabels}} ទាំងអស់ដែលបានរកឃើញនៅក្នុង {{zone}} នៅលើ {{cameraName}} នឹងត្រូវបានបង្ហាញជាការជូនដំណឹង។", + "objectDetectionsTips": "វត្ថុ {{detectionsLabels}} ទាំងអស់ដែលមិនបានចាត់ថ្នាក់នៅលើ {{cameraName}} នឹងត្រូវបានបង្ហាញជាការរកឃើញ ដោយមិនគិតពីតំបន់ដែលពួកវាស្ថិតនៅ។", + "zoneObjectDetectionsTips": { + "text": "វត្ថុ {{detectionsLabels}} ទាំងអស់ដែលមិនបានចាត់ថ្នាក់នៅក្នុង {{zone}} នៅលើ {{cameraName}} នឹងត្រូវបានបង្ហាញជាការរកឃើញ។", + "notSelectDetections": "វត្ថុ {{detectionsLabels}} ទាំងអស់ដែលបានរកឃើញនៅក្នុង {{zone}} នៅលើ {{cameraName}} ដែលមិនបានចាត់ថ្នាក់ជាការជូនដំណឹង នឹងត្រូវបានបង្ហាញជាការរកឃើញ ដោយមិនគិតពីតំបន់ដែលពួកវាស្ថិតនៅ។", + "regardlessOfZoneObjectDetectionsTips": "វត្ថុ {{detectionsLabels}} ទាំងអស់ដែលមិនបានចាត់ថ្នាក់នៅលើ {{cameraName}} នឹងត្រូវបានបង្ហាញជាការរកឃើញ ដោយមិនគិតពីតំបន់ដែលពួកវាស្ថិតនៅ។" + }, + "unsavedChanges": "ការកំណត់ការចាត់ថ្នាក់ការត្រួតពិនិត្យដែលមិនបានរក្សាទុកសម្រាប់ {{camera}}", + "selectAlertsZones": "ជ្រើសរើសតំបន់សម្រាប់ការជូនដំណឹង", + "selectDetectionsZones": "ជ្រើសរើសតំបន់សម្រាប់ការរកឃើញ", + "limitDetections": "កំណត់ការរកឃើញចំពោះតំបន់ជាក់លាក់", + "toast": { + "success": "ការកំណត់ការចាត់ថ្នាក់ការត្រួតពិនិត្យត្រូវបានរក្សាទុក។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរ។" + } + } + }, + "masksAndZones": { + "filter": { + "all": "ម៉ាស និងតំបន់ទាំងអស់" + }, + "restart_required": "ត្រូវការចាប់ផ្តើមឡើងវិញ (ម៉ាស/តំបន់ បានផ្លាស់ប្តូរ)", + "disabledInConfig": "ធាតុត្រូវបានបិទនៅក្នុងឯកសារកំណត់", + "addDisabledProfile": "បន្ថែមទៅក្នុងការកំណត់មូលដ្ឋានជាមុនសិន បន្ទាប់មកផ្លាស់ប្តូរនៅក្នុងប្រវត្តិរូប", + "profileBase": "(មូលដ្ឋាន)", + "profileOverride": "(ផ្លាស់ប្តូរ)", + "toast": { + "success": { + "copyCoordinates": "បានចម្លងកូអរដោនេសម្រាប់ {{polyName}} ទៅក្ដារតម្បៀត។" + }, + "error": { + "copyCoordinatesFailed": "មិនអាចចម្លងកូអរដោនេទៅក្ដារតម្បៀតបានទេ។" + } + }, + "motionMaskLabel": "ម៉ាសចលនា {{number}}", + "objectMaskLabel": "ម៉ាសវត្ថុ {{number}}", + "form": { + "id": { + "error": { + "mustNotBeEmpty": "ID មិនត្រូវទទេទេ។", + "alreadyExists": "ម៉ាសដែលមាន ID នេះមានរួចហើយសម្រាប់កាមេរ៉ានេះ។" + } + }, + "name": { + "error": { + "mustNotBeEmpty": "ឈ្មោះមិនត្រូវទទេទេ។" + } + }, + "zoneName": { + "error": { + "mustBeAtLeastTwoCharacters": "ឈ្មោះតំបន់ត្រូវតែមានយ៉ាងហោចណាស់ ២ តួអក្សរ។", + "mustNotBeSameWithCamera": "ឈ្មោះតំបន់មិនត្រូវដូចគ្នានឹងឈ្មោះកាមេរ៉ាទេ។", + "alreadyExists": "តំបន់ដែលមានឈ្មោះនេះមានរួចហើយសម្រាប់កាមេរ៉ានេះ។", + "mustNotContainPeriod": "ឈ្មោះតំបន់មិនត្រូវមានសញ្ញាចុចទេ។", + "hasIllegalCharacter": "ឈ្មោះតំបន់មានតួអក្សរដែលមិនអនុញ្ញាត។", + "mustHaveAtLeastOneLetter": "ឈ្មោះតំបន់ត្រូវតែមានយ៉ាងហោចណាស់មួយតួអក្សរ។" + } + }, + "distance": { + "error": { + "text": "ចម្ងាយត្រូវតែធំជាង ឬស្មើនឹង 0.1។", + "mustBeFilled": "វាលចម្ងាយទាំងអស់ត្រូវតែបំពេញ ដើម្បីប្រើការប៉ាន់ស្មានល្បឿន។" + } + }, + "inertia": { + "error": { + "mustBeAboveZero": "និចលភាពត្រូវតែធំជាង 0។" + } + }, + "loiteringTime": { + "error": { + "mustBeGreaterOrEqualZero": "រយៈពេលរង់ចាំត្រូវតែធំជាង ឬស្មើនឹង 0។" + } + }, + "speed": { + "error": { + "mustBeGreaterOrEqualTo": "កម្រិតល្បឿនត្រូវតែធំជាង ឬស្មើនឹង 0.1។" + } + }, + "polygonDrawing": { + "type": { + "zone": "តំបន់", + "motion_mask": "ម៉ាសចលនា", + "object_mask": "ម៉ាសវត្ថុ" + }, + "removeLastPoint": "ដកចំណុចចុងក្រោយចេញ", + "reset": { + "label": "សម្អាតចំណុចទាំងអស់" + }, + "snapPoints": { + "true": "ចាប់ចំណុច", + "false": "កុំចាប់ចំណុច" + }, + "delete": { + "title": "បញ្ជាក់ការលុប", + "desc": "តើអ្នកប្រាកដថាចង់លុប {{type}} {{name}} ដែរឬទេ?", + "success": "{{name}} ត្រូវបានលុប។" + }, + "revertOverride": { + "title": "ត្រឡប់ទៅការកំណត់មូលដ្ឋាន", + "desc": "សកម្មភាពនេះនឹងដកការផ្លាស់ប្តូរប្រវត្តិរូបសម្រាប់ {{type}} {{name}} ហើយត្រឡប់ទៅការកំណត់មូលដ្ឋានវិញ។" + }, + "error": { + "mustBeFinished": "ការគូរពហុកោណត្រូវតែបញ្ចប់ មុនពេលរក្សាទុក។" + } + } + }, + "zones": { + "label": "តំបន់", + "documentTitle": "កែសម្រួលតំបន់ - Frigate", + "desc": { + "title": "តំបន់អនុញ្ញាតឱ្យអ្នកកំណត់ផ្ទៃជាក់លាក់នៃ frame ដើម្បីឱ្យអ្នកអាចកំណត់បានថា វត្ថុមួយស្ថិតនៅក្នុងផ្ទៃជាក់លាក់ណាមួយឬអត់។", + "documentation": "ឯកសារ" + }, + "add": "បន្ថែមតំបន់", + "edit": "កែសម្រួលតំបន់", + "point_other": "{{count}} ចំណុច", + "clickDrawPolygon": "ចុចដើម្បីគូរពហុកោណនៅលើរូបភាព។", + "name": { + "title": "ឈ្មោះ", + "inputPlaceHolder": "បញ្ចូលឈ្មោះ…", + "tips": "ឈ្មោះត្រូវតែមានយ៉ាងហោចណាស់ ២ តួអក្សរ ត្រូវតែមានយ៉ាងហោចណាស់មួយតួអក្សរ ហើយមិនត្រូវជាឈ្មោះរបស់កាមេរ៉ា ឬតំបន់ផ្សេងទៀតនៅលើកាមេរ៉ានេះទេ។" + }, + "enabled": { + "title": "បានបើក", + "description": "ថាតើតំបន់នេះកំពុងសកម្ម និងបានបើកនៅក្នុងឯកសារកំណត់ឬអត់។ ប្រសិនបើបិទ វាមិនអាចត្រូវបានបើកដោយ MQTT ទេ។ តំបន់ដែលបានបិទត្រូវបានមិនអើពើនៅពេលដំណើរការ។" + }, + "inertia": { + "title": "និចលភាព", + "desc": "កំណត់ចំនួនស៊ុមដែលវត្ថុមួយត្រូវតែស្ថិតនៅក្នុងតំបន់ មុនពេលវាត្រូវបានចាត់ទុកថានៅក្នុងតំបន់។ លំនាំដើម៖ 3" + }, + "loiteringTime": { + "title": "រយៈពេលរង់ចាំ", + "desc": "កំណត់រយៈពេលអប្បបរមាជាវិនាទី ដែលវត្ថុត្រូវតែស្ថិតនៅក្នុងតំបន់ ដើម្បីឱ្យវាដំណើរការ។ លំនាំដើម៖ 0" + }, + "objects": { + "title": "វត្ថុ", + "desc": "បញ្ជីវត្ថុដែលអនុវត្តចំពោះតំបន់នេះ។" + }, + "allObjects": "វត្ថុទាំងអស់", + "speedEstimation": { + "title": "ការប៉ាន់ស្មានល្បឿន", + "desc": "បើកការប៉ាន់ស្មានល្បឿនសម្រាប់វត្ថុនៅក្នុងតំបន់នេះ។ តំបន់ត្រូវតែមាន ៤ ចំណុចគត់។", + "lineADistance": "ចម្ងាយបន្ទាត់ A ({{unit}})", + "lineBDistance": "ចម្ងាយបន្ទាត់ B ({{unit}})", + "lineCDistance": "ចម្ងាយបន្ទាត់ C ({{unit}})", + "lineDDistance": "ចម្ងាយបន្ទាត់ D ({{unit}})" + }, + "speedThreshold": { + "title": "កម្រិតល្បឿន ({{unit}})", + "desc": "កំណត់ល្បឿនអប្បបរមាសម្រាប់វត្ថុ ដើម្បីចាត់ទុកថានៅក្នុងតំបន់នេះ។", + "toast": { + "error": { + "pointLengthError": "ការប៉ាន់ស្មានល្បឿនត្រូវបានបិទសម្រាប់តំបន់នេះ។ តំបន់ដែលមានការប៉ាន់ស្មានល្បឿនត្រូវតែមាន ៤ ចំណុចគត់។", + "loiteringTimeError": "តំបន់ដែលមានរយៈពេលរង់ចាំធំជាង 0 មិនគួរប្រើជាមួយការប៉ាន់ស្មានល្បឿនទេ។" + } + } + }, + "toast": { + "success": "តំបន់ ({{zoneName}}) ត្រូវបានរក្សាទុក។" + } + }, + "motionMasks": { + "label": "ម៉ាសចលនា", + "documentTitle": "កែសម្រួលម៉ាសចលនា - Frigate", + "desc": { + "title": "ម៉ាសចលនាត្រូវបានប្រើដើម្បីការពារចលនាដែលមិនចង់បាន ពីការធ្វើឱ្យការរកឃើញដំណើរការ។ ការប្រើម៉ាសច្រើនពេកនឹងធ្វើឱ្យការតាមដានវត្ថុកាន់តែពិបាក។", + "documentation": "ឯកសារ" + }, + "add": "ម៉ាសចលនាថ្មី", + "edit": "កែសម្រួលម៉ាសចលនា", + "defaultName": "ម៉ាសចលនា {{number}}", + "context": { + "title": "ម៉ាសចលនាត្រូវបានប្រើដើម្បីការពារចលនាដែលមិនចង់បាន ពីការធ្វើឱ្យការរកឃើញដំណើរការ (ឧទាហរណ៍៖ មែកឈើ, ពេលវេលានៅលើកាមេរ៉ា)។ ម៉ាសចលនាគួរតែត្រូវបានប្រើ តិចតួចបំផុត ការប្រើម៉ាសច្រើនពេកនឹងធ្វើឱ្យការតាមដានវត្ថុកាន់តែពិបាក។" + }, + "point_other": "{{count}} ចំណុច", + "clickDrawPolygon": "ចុចដើម្បីគូរពហុកោណនៅលើរូបភាព។", + "name": { + "title": "ឈ្មោះ", + "description": "ឈ្មោះងាយស្រួលជាជម្រើសសម្រាប់ម៉ាសចលនានេះ។", + "placeholder": "បញ្ចូលឈ្មោះ..." + }, + "polygonAreaTooLarge": { + "title": "ម៉ាសចលនាកំពុងគ្របដណ្តប់ {{polygonArea}}% នៃស៊ុមកាមេរ៉ា។ ម៉ាសចលនាធំមិនត្រូវបានណែនាំទេ។", + "tips": "ម៉ាសចលនាមិនការពារវត្ថុពីការរកឃើញទេ។ អ្នកគួរតែប្រើតំបន់ដែលត្រូវការជំនួសវិញ។" + }, + "toast": { + "success": { + "title": "{{polygonName}} ត្រូវបានរក្សាទុក។", + "noName": "ម៉ាសចលនាត្រូវបានរក្សាទុក។" + } + } + }, + "objectMasks": { + "label": "ម៉ាសវត្ថុ", + "documentTitle": "កែសម្រួលម៉ាសវត្ថុ - Frigate", + "desc": { + "title": "ម៉ាសតម្រងវត្ថុត្រូវបានប្រើដើម្បីច្រោះយកការរកឃើញខុសសម្រាប់ប្រភេទវត្ថុជាក់លាក់ ដោយផ្អែកលើទីតាំង។", + "documentation": "ឯកសារ" + }, + "add": "បន្ថែមម៉ាសវត្ថុ", + "edit": "កែសម្រួលម៉ាសវត្ថុ", + "context": "ម៉ាសតម្រងវត្ថុត្រូវបានប្រើដើម្បីច្រោះយកការរកឃើញខុសសម្រាប់ប្រភេទវត្ថុជាក់លាក់ ដោយផ្អែកលើទីតាំង។", + "point_other": "{{count}} ចំណុច", + "clickDrawPolygon": "ចុចដើម្បីគូរពហុកោណនៅលើរូបភាព។", + "name": { + "title": "ឈ្មោះ", + "description": "ឈ្មោះងាយស្រួលជាជម្រើសសម្រាប់ម៉ាសវត្ថុនេះ។", + "placeholder": "បញ្ចូលឈ្មោះ..." + }, + "objects": { + "title": "វត្ថុ", + "desc": "ប្រភេទវត្ថុដែលអនុវត្តចំពោះម៉ាសវត្ថុនេះ។", + "allObjectTypes": "ប្រភេទវត្ថុទាំងអស់" + }, + "toast": { + "success": { + "title": "{{polygonName}} ត្រូវបានរក្សាទុក។", + "noName": "ម៉ាសវត្ថុត្រូវបានរក្សាទុក។" + } + } + }, + "masks": { + "enabled": { + "title": "បានបើក", + "description": "ថាតើម៉ាសនេះត្រូវបានបើកនៅក្នុងឯកសារកំណត់ឬអត់។ ប្រសិនបើបិទ វាមិនអាចត្រូវបានបើកដោយ MQTT ទេ។ ម៉ាសដែលបានបិទត្រូវបានមិនអើពើនៅពេលដំណើរការ។" + } + } + }, + "motionDetectionTuner": { + "title": "កម្មវិធីកែតម្រូវការរកឃើញចលនា", + "unsavedChanges": "ការផ្លាស់ប្តូរកម្មវិធីកែតម្រូវចលនាដែលមិនបានរក្សាទុក ({{camera}})", + "desc": { + "title": "Frigate ប្រើការរកឃើញចលនាជាការត្រួតពិនិត្យដំបូង ដើម្បីមើលថាតើមានអ្វីកើតឡើងនៅក្នុងស៊ុមដែលគួរឱ្យពិនិត្យជាមួយការរកឃើញវត្ថុឬអត់។", + "documentation": "អានមគ្គុទ្ទេសក៍កែតម្រូវចលនា" + }, + "Threshold": { + "title": "កម្រិត", + "desc": "តម្លៃកម្រិតកំណត់ថាតើការផ្លាស់ប្តូរពន្លឺនៃភីកសែលកម្រិតណា ដែលត្រូវបានចាត់ទុកថាជាចលនា។ លំនាំដើម៖ 30" + }, + "contourArea": { + "title": "ផ្ទៃគន្លង", + "desc": "តម្លៃផ្ទៃគន្លងត្រូវបានប្រើដើម្បីសម្រេចថាក្រុមភីកសែលដែលបានផ្លាស់ប្តូរណាខ្លះ ដែលមានលក្ខណៈគ្រប់គ្រាន់ជាចលនា។ លំនាំដើម៖ 10" + }, + "improveContrast": { + "title": "បង្កើនកម្រិតពណ៌", + "desc": "បង្កើនកម្រិតពណ៌សម្រាប់ឈុតឆាកងងឹត។ លំនាំដើម៖ បើក" + }, + "toast": { + "success": "ការកំណត់ចលនាត្រូវបានរក្សាទុក។" + } + }, + "debug": { + "title": "Debug", + "detectorDesc": "Frigate ប្រើឧបករណ៍រកឃើញរបស់អ្នក ({{detectors}}) ដើម្បីរកឃើញវត្ថុនៅក្នុងស្ទ្រីមវីដេអូរបស់កាមេរ៉ាអ្នក។", + "desc": "ទិដ្ឋភាព Debug បង្ហាញទិដ្ឋភាពពេលវេលាជាក់ស្តែងនៃវត្ថុដែលបានតាមដាន និងស្ថិតិរបស់ពួកវា។ បញ្ជីវត្ថុបង្ហាញសេចក្តីសង្ខេបនៃវត្ថុដែលបានរកឃើញ ដោយមានការពន្យារពេល។", + "openCameraWebUI": "បើកផ្ទៃអេក្រង់វេបរបស់ {{camera}}", + "debugging": "ការ Debug", + "objectList": "បញ្ជីវត្ថុ", + "noObjects": "មិនមានវត្ថុ", + "audio": { + "title": "សំឡេង", + "noAudioDetections": "មិនមានការរកឃើញសំឡេង", + "score": "ពិន្ទុ", + "currentRMS": "RMS បច្ចុប្បន្ន", + "currentdbFS": "dbFS បច្ចុប្បន្ន" + }, + "boundingBoxes": { + "title": "ប្រអប់កំណត់", + "desc": "បង្ហាញប្រអប់កំណត់នៅជុំវិញវត្ថុដែលបានតាមដាន", + "colors": { + "label": "ពណ៌ប្រអប់កំណត់វត្ថុ", + "info": "
  • នៅពេលចាប់ផ្តើម ពណ៌ផ្សេងៗគ្នានឹងត្រូវបានកំណត់ឱ្យស្លាកវត្ថុនីមួយៗ
  • បន្ទាត់ស្តើងពណ៌ខៀវចាស់បង្ហាញថាវត្ថុមិនត្រូវបានរកឃើញនៅពេលបច្ចុប្បន្ននេះទេ
  • បន្ទាត់ស្តើងពណ៌ប្រផេះបង្ហាញថាវត្ថុត្រូវបានរកឃើញថានៅស្ងៀ
  • បន្ទាត់ក្រាស់បង្ហាញថាវត្ថុគឺជាគោលដៅនៃការតាមដានស្វ័យប្រវត្តិ (នៅពេលបើក)
  • " + } + }, + "timestamp": { + "title": "ពេលវេលា", + "desc": "ដាក់ពេលវេលានៅលើរូបភាព" + }, + "zones": { + "title": "តំបន់", + "desc": "បង្ហាញគ្រោងនៃតំបន់ដែលបានកំណត់" + }, + "mask": { + "title": "ម៉ាសចលនា", + "desc": "បង្ហាញពហុកោណម៉ាសចលនា" + }, + "motion": { + "title": "ប្រអប់ចលនា", + "desc": "បង្ហាញប្រអប់នៅជុំវិញផ្ទៃដែលមានការរកឃើញចលនា", + "tips": "

    ប្រអប់ចលនា


    ប្រអប់ពណ៌ក្រហមនឹងត្រូវបានដាក់នៅលើ ផ្ទៃនៃស៊ុមដែលកំពុងមានការរកឃើញចលនា

    " + }, + "regions": { + "title": "តំបន់", + "desc": "បង្ហាញប្រអប់នៃតំបន់ដែលចាប់អារម្មណ៍ ដែលបានបញ្ជូនទៅឧបករណ៍រកឃើញវត្ថុ", + "tips": "

    ប្រអប់តំបន់


    ប្រអប់ពណ៌បៃតងភ្លឺនឹងត្រូវបានដាក់នៅលើ ផ្ទៃដែលចាប់អារម្មណ៍នៅក្នុងស៊ុម ដែលកំពុងត្រូវបានបញ្ជូនទៅឧបករណ៍រកឃើញវត្ថុ។

    " + }, + "paths": { + "title": "ផ្លូវ", + "desc": "បង្ហាញចំណុចសំខាន់នៃផ្លូវរបស់វត្ថុដែលបានតាមដាន", + "tips": "

    ផ្លូវ


    បន្ទាត់ និងរង្វង់នឹងបង្ហាញចំណុចសំខាន់ ដែលវត្ថុដែលបានតាមដានបានផ្លាស់ទីក្នុងអំឡុងពេលវាមានវត្តមាន។

    " + }, + "objectShapeFilterDrawing": { + "title": "ការគូរតម្រងរាងវត្ថុ", + "desc": "គូរចតុកោណកែងនៅលើរូបភាព ដើម្បីមើលព័ត៌មានលម្អិតនៃផ្ទៃ និងសមាមាត្រ", + "tips": "បើកជម្រើសនេះដើម្បីគូរចតុកោណកែងនៅលើរូបភាពកាមេរ៉ា ដើម្បីបង្ហាញផ្ទៃ និងសមាមាត្ររបស់វា។ តម្លៃទាំងនេះអាចត្រូវបានប្រើដើម្បីកំណត់ប៉ារ៉ាម៉ែត្រតម្រងរាងវត្ថុនៅក្នុងការកំណត់របស់អ្នក។", + "score": "ពិន្ទុ", + "ratio": "សមាមាត្រ", + "area": "ផ្ទៃ" + } + }, + "timestampPosition": { + "tl": "កំពូលខាងឆ្វេង", + "tr": "កំពូលខាងស្តាំ", + "bl": "បាតខាងឆ្វេង", + "br": "បាតខាងស្តាំ" + }, + "users": { + "title": "អ្នកប្រើប្រាស់", + "management": { + "title": "ការគ្រប់គ្រងអ្នកប្រើប្រាស់", + "desc": "គ្រប់គ្រងគណនីអ្នកប្រើប្រាស់នៃ Frigate នេះ។" + }, + "addUser": "បន្ថែមអ្នកប្រើប្រាស់", + "updatePassword": "កំណត់ពាក្យសម្ងាត់ឡើងវិញ", + "toast": { + "success": { + "createUser": "អ្នកប្រើប្រាស់ {{user}} ត្រូវបានបង្កើតដោយជោគជ័យ", + "deleteUser": "អ្នកប្រើប្រាស់ {{user}} ត្រូវបានលុបដោយជោគជ័យ", + "updatePassword": "ពាក្យសម្ងាត់ត្រូវបានធ្វើបច្ចុប្បន្នភាពដោយជោគជ័យ។", + "roleUpdated": "តួនាទីត្រូវបានធ្វើបច្ចុប្បន្នភាពសម្រាប់ {{user}}" + }, + "error": { + "setPasswordFailed": "បរាជ័យក្នុងការរក្សាទុកពាក្យសម្ងាត់៖ {{errorMessage}}", + "createUserFailed": "បរាជ័យក្នុងការបង្កើតអ្នកប្រើប្រាស់៖ {{errorMessage}}", + "deleteUserFailed": "បរាជ័យក្នុងការលុបអ្នកប្រើប្រាស់៖ {{errorMessage}}", + "roleUpdateFailed": "បរាជ័យក្នុងការធ្វើបច្ចុប្បន្នភាពតួនាទី៖ {{errorMessage}}" + } + }, + "table": { + "username": "ឈ្មោះអ្នកប្រើប្រាស់", + "actions": "សកម្មភាព", + "role": "តួនាទី", + "noUsers": "រកមិនឃើញអ្នកប្រើប្រាស់ទេ។", + "changeRole": "ផ្លាស់ប្តូរតួនាទីអ្នកប្រើប្រាស់", + "password": "កំណត់ពាក្យសម្ងាត់ឡើងវិញ", + "deleteUser": "លុបអ្នកប្រើប្រាស់" + }, + "dialog": { + "form": { + "user": { + "title": "ឈ្មោះអ្នកប្រើប្រាស់", + "desc": "អនុញ្ញាតតែអក្សរ លេខ សញ្ញាចុច និងសញ្ញា _ ប៉ុណ្ណោះ។", + "placeholder": "បញ្ចូលឈ្មោះអ្នកប្រើប្រាស់" + }, + "password": { + "title": "ពាក្យសម្ងាត់", + "placeholder": "បញ្ចូលពាក្យសម្ងាត់", + "show": "បង្ហាញពាក្យសម្ងាត់", + "hide": "លាក់ពាក្យសម្ងាត់", + "confirm": { + "title": "បញ្ជាក់ពាក្យសម្ងាត់", + "placeholder": "បញ្ជាក់ពាក្យសម្ងាត់" + }, + "strength": { + "title": "កម្រិតខ្លាំងនៃពាក្យសម្ងាត់៖ ", + "weak": "ខ្សោយ", + "medium": "មធ្យម", + "strong": "ខ្លាំង", + "veryStrong": "ខ្លាំងណាស់" + }, + "requirements": { + "title": "តម្រូវការពាក្យសម្ងាត់៖", + "length": "យ៉ាងហោចណាស់ ១២ តួអក្សរ" + }, + "match": "ពាក្យសម្ងាត់ត្រូវគ្នា", + "notMatch": "ពាក្យសម្ងាត់មិនត្រូវគ្នា" + }, + "newPassword": { + "title": "ពាក្យសម្ងាត់ថ្មី", + "placeholder": "បញ្ចូលពាក្យសម្ងាត់ថ្មី", + "confirm": { + "placeholder": "បញ្ចូលពាក្យសម្ងាត់ថ្មីម្តងទៀត" + } + }, + "currentPassword": { + "title": "ពាក្យសម្ងាត់បច្ចុប្បន្ន", + "placeholder": "បញ្ចូលពាក្យសម្ងាត់បច្ចុប្បន្នរបស់អ្នក" + }, + "usernameIsRequired": "ឈ្មោះអ្នកប្រើប្រាស់គឺចាំបាច់", + "passwordIsRequired": "ពាក្យសម្ងាត់គឺចាំបាច់" + }, + "createUser": { + "title": "បង្កើតអ្នកប្រើប្រាស់ថ្មី", + "desc": "បន្ថែមគណនីអ្នកប្រើប្រាស់ថ្មី និងកំណត់តួនាទីសម្រាប់ការចូលប្រើប្រាស់ផ្នែកនានានៃផ្ទៃអេក្រង់ Frigate។", + "usernameOnlyInclude": "ឈ្មោះអ្នកប្រើប្រាស់អាចមានតែអក្សរ លេខ . ឬ _ ប៉ុណ្ណោះ", + "confirmPassword": "សូមបញ្ជាក់ពាក្យសម្ងាត់របស់អ្នក" + }, + "deleteUser": { + "title": "លុបអ្នកប្រើប្រាស់", + "desc": "សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។ វានឹងលុបគណនីអ្នកប្រើប្រាស់ជាអចិន្ត្រៃយ៍ និងដកទិន្នន័យដែលពាក់ព័ន្ធទាំងអស់ចេញ។", + "warn": "តើអ្នកប្រាកដថាចង់លុប {{username}} ដែរឬទេ?" + }, + "passwordSetting": { + "cannotBeEmpty": "ពាក្យសម្ងាត់មិនអាចទទេបានទេ", + "doNotMatch": "ពាក្យសម្ងាត់មិនត្រូវគ្នា", + "currentPasswordRequired": "ពាក្យសម្ងាត់បច្ចុប្បន្នគឺចាំបាច់", + "incorrectCurrentPassword": "ពាក្យសម្ងាត់បច្ចុប្បន្នមិនត្រឹមត្រូវ", + "passwordVerificationFailed": "បរាជ័យក្នុងការផ្ទៀងផ្ទាត់ពាក្យសម្ងាត់", + "updatePassword": "ធ្វើបច្ចុប្បន្នភាពពាក្យសម្ងាត់សម្រាប់ {{username}}", + "setPassword": "កំណត់ពាក្យសម្ងាត់", + "desc": "បង្កើតពាក្យសម្ងាត់ខ្លាំង ដើម្បីការពារគណនីនេះ។", + "multiDeviceWarning": "ឧបករណ៍ផ្សេងទៀតដែលអ្នកបានចូល នឹងត្រូវបានទាមទារឱ្យចូលឡើងវិញក្នុងរយៈពេល {{refresh_time}}។", + "multiDeviceAdmin": "អ្នកក៏អាចបង្ខំអ្នកប្រើប្រាស់ទាំងអស់ឱ្យផ្ទៀងផ្ទាត់អត្តសញ្ញាណឡើងវិញភ្លាមៗ ដោយការបង្វិល JWT secret របស់អ្នក។" + }, + "changeRole": { + "title": "ផ្លាស់ប្តូរតួនាទីអ្នកប្រើប្រាស់", + "select": "ជ្រើសរើសតួនាទី", + "desc": "ធ្វើបច្ចុប្បន្នភាពការអនុញ្ញាតសម្រាប់ {{username}}", + "roleInfo": { + "intro": "ជ្រើសរើសតួនាទីដែលសមស្របសម្រាប់អ្នកប្រើប្រាស់នេះ៖", + "admin": "អ្នកគ្រប់គ្រង", + "adminDesc": "ចូលប្រើប្រាស់ពេញលេញនូវមុខងារទាំងអស់។", + "viewer": "អ្នកមើល", + "viewerDesc": "កំណត់ត្រឹមតែផ្ទាំងបញ្ជាផ្ទាល់ ការត្រួតពិនិត្យ ការរុករក និងការនាំចេញប៉ុណ្ណោះ។", + "customDesc": "តួនាទីផ្ទាល់ខ្លួនដែលមានការចូលប្រើកាមេរ៉ាជាក់លាក់។" + } + } + } + }, + "roles": { + "management": { + "title": "ការគ្រប់គ្រងតួនាទីអ្នកមើល", + "desc": "គ្រប់គ្រងតួនាទីអ្នកមើលផ្ទាល់ខ្លួន និងការអនុញ្ញាតចូលប្រើកាមេរ៉ារបស់ពួកគេ សម្រាប់ Frigate នេះ។" + }, + "addRole": "បន្ថែមតួនាទី", + "table": { + "role": "តួនាទី", + "cameras": "កាមេរ៉ា", + "actions": "សកម្មភាព", + "noRoles": "រកមិនឃើញតួនាទីផ្ទាល់ខ្លួនទេ។", + "editCameras": "កែសម្រួលកាមេរ៉ា", + "deleteRole": "លុបតួនាទី" + }, + "toast": { + "success": { + "createRole": "តួនាទី {{role}} ត្រូវបានបង្កើតដោយជោគជ័យ", + "updateCameras": "កាមេរ៉ាត្រូវបានធ្វើបច្ចុប្បន្នភាពសម្រាប់តួនាទី {{role}}", + "deleteRole": "តួនាទី {{role}} ត្រូវបានលុបដោយជោគជ័យ", + "userRolesUpdated_other": "អ្នកប្រើប្រាស់ {{count}} នាក់ដែលបានកំណត់ឱ្យតួនាទីនេះ ត្រូវបានធ្វើបច្ចុប្បន្នភាពទៅជា 'អ្នកមើល' ដែលមានសិទ្ធិចូលប្រើកាមេរ៉ាទាំងអស់។" + }, + "error": { + "createRoleFailed": "បរាជ័យក្នុងការបង្កើតតួនាទី៖ {{errorMessage}}", + "updateCamerasFailed": "បរាជ័យក្នុងការធ្វើបច្ចុប្បន្នភាពកាមេរ៉ា៖ {{errorMessage}}", + "deleteRoleFailed": "បរាជ័យក្នុងការលុបតួនាទី៖ {{errorMessage}}", + "userUpdateFailed": "បរាជ័យក្នុងការធ្វើបច្ចុប្បន្នភាពតួនាទីអ្នកប្រើប្រាស់៖ {{errorMessage}}" + } + }, + "dialog": { + "createRole": { + "title": "បង្កើតតួនាទីថ្មី", + "desc": "បន្ថែមតួនាទីថ្មី និងកំណត់ការអនុញ្ញាតចូលប្រើកាមេរ៉ា។" + }, + "editCameras": { + "title": "កែសម្រួលកាមេរ៉ារបស់តួនាទី", + "desc": "ធ្វើបច្ចុប្បន្នភាពការចូលប្រើកាមេរ៉ាសម្រាប់តួនាទី {{role}}។" + }, + "deleteRole": { + "title": "លុបតួនាទី", + "desc": "សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។ វានឹងលុបតួនាទីនេះជាអចិន្ត្រៃយ៍ ហើយកំណត់អ្នកប្រើប្រាស់ណាដែលមានតួនាទីនេះ ទៅជាតួនាទី 'អ្នកមើល' ដែលនឹងផ្តល់សិទ្ធិចូលប្រើកាមេរ៉ាទាំងអស់។", + "warn": "តើអ្នកប្រាកដថាចង់លុប {{role}} ដែរឬទេ?", + "deleting": "កំពុងលុប..." + }, + "form": { + "role": { + "title": "ឈ្មោះតួនាទី", + "placeholder": "បញ្ចូលឈ្មោះតួនាទី", + "desc": "អនុញ្ញាតតែអក្សរ លេខ សញ្ញាចុច និងសញ្ញា _ ប៉ុណ្ណោះ។", + "roleIsRequired": "ឈ្មោះតួនាទីគឺចាំបាច់", + "roleOnlyInclude": "ឈ្មោះតួនាទីអាចមានតែអក្សរ លេខ . ឬ _ ប៉ុណ្ណោះ", + "roleExists": "តួនាទីដែលមានឈ្មោះនេះមានរួចហើយ។" + }, + "cameras": { + "title": "កាមេរ៉ា", + "desc": "ជ្រើសរើសកាមេរ៉ាដែលតួនាទីនេះមានសិទ្ធិចូលប្រើ។ ត្រូវការយ៉ាងហោចណាស់មួយកាមេរ៉ា។", + "required": "ត្រូវជ្រើសរើសយ៉ាងហោចណាស់មួយកាមេរ៉ា។" + } + } + } + }, + "notification": { + "title": "ការជូនដំណឹង", + "notificationSettings": { + "title": "ការកំណត់ការជូនដំណឹង", + "desc": "Frigate អាចផ្ញើការជូនដំណឹង Push ទៅឧបករណ៍របស់អ្នកដោយផ្ទាល់ នៅពេលដែលវាកំពុងដំណើរការក្នុងកម្មវិធីរុករក ឬបានដំឡើងជា PWA។" + }, + "notificationUnavailable": { + "title": "ការជូនដំណឹងមិនអាចប្រើបាន", + "desc": "ការជូនដំណឹង Push លើវេប ត្រូវការបរិយាកាសសុវត្ថិភាព (https://…)។ នេះគឺជាការកំណត់របស់កម្មវិធីរុករក។ ចូលប្រើ Frigate ដោយសុវត្ថិភាព ដើម្បីប្រើការជូនដំណឹង។", + "descPwa": "នៅលើ iOS ការជូនដំណឹង Push លើវេប អាចប្រើបានតែនៅពេលដែល Frigate ត្រូវបានដំឡើងទៅកាន់អេក្រង់ដើមរបស់អ្នក។ បើកម៉ឺនុយ ចែករំលែក ជ្រើសរើស បន្ថែមទៅអេក្រង់ដើម បន្ទាប់មកបើក Frigate ពីរូបតំណាងថ្មី ដើម្បីចុះឈ្មោះឧបករណ៍នេះសម្រាប់ការជូនដំណឹង។" + }, + "globalSettings": { + "title": "ការកំណត់សកល", + "desc": "ផ្អាកការជូនដំណឹងជាបណ្តោះអាសន្នសម្រាប់កាមេរ៉ាជាក់លាក់ នៅលើឧបករណ៍ដែលបានចុះឈ្មោះទាំងអស់។" + }, + "email": { + "title": "អ៊ីមែល", + "placeholder": "ឧ. example@email.com", + "desc": "អ៊ីមែលត្រឹមត្រូវគឺចាំបាច់ ហើយនឹងត្រូវបានប្រើដើម្បីជូនដំណឹងអ្នក ប្រសិនបើមានបញ្ហាណាមួយជាមួយសេវាកម្ម Push។" + }, + "cameras": { + "title": "កាមេរ៉ា", + "noCameras": "មិនមានកាមេរ៉ាទេ", + "desc": "ជ្រើសរើសកាមេរ៉ាណាដែលត្រូវបើកការជូនដំណឹង។" + }, + "deviceSpecific": "ការកំណត់ជាក់លាក់នៃឧបករណ៍", + "registerDevice": "ចុះឈ្មោះឧបករណ៍នេះ", + "unregisterDevice": "ដកការចុះឈ្មោះឧបករណ៍នេះ", + "sendTestNotification": "ផ្ញើការជូនដំណឹងសាកល្បង", + "unsavedRegistrations": "ការចុះឈ្មោះការជូនដំណឹងដែលមិនបានរក្សាទុក", + "unsavedChanges": "ការផ្លាស់ប្តូរការជូនដំណឹងដែលមិនបានរក្សាទុក", + "active": "ការជូនដំណឹងកំពុងសកម្ម", + "suspended": "ការជូនដំណឹងត្រូវបានផ្អាក {{time}}", + "suspendTime": { + "suspend": "ផ្អាក", + "5minutes": "ផ្អាករយៈពេល ៥ នាទី", + "10minutes": "ផ្អាករយៈពេល ១០ នាទី", + "30minutes": "ផ្អាករយៈពេល ៣០ នាទី", + "1hour": "ផ្អាករយៈពេល ១ ម៉ោង", + "12hours": "ផ្អាករយៈពេល ១២ ម៉ោង", + "24hours": "ផ្អាករយៈពេល ២៤ ម៉ោង", + "untilRestart": "ផ្អាករហូតដល់ចាប់ផ្តើមឡើងវិញ" + }, + "cancelSuspension": "បោះបង់ការផ្អាក", + "toast": { + "success": { + "registered": "បានចុះឈ្មោះសម្រាប់ការជូនដំណឹងដោយជោគជ័យ។ ការចាប់ផ្តើម Frigate ឡើងវិញគឺចាំបាច់ មុនពេលការជូនដំណឹងណាមួយ (រួមទាំងការជូនដំណឹងសាកល្បង) អាចត្រូវបានផ្ញើ។", + "settingSaved": "ការកំណត់ការជូនដំណឹងត្រូវបានរក្សាទុក។" + }, + "error": { + "registerFailed": "បរាជ័យក្នុងការរក្សាទុកការចុះឈ្មោះការជូនដំណឹង។" + } + } + }, + "frigatePlus": { + "title": "ការកំណត់ Frigate+", + "description": "Frigate+ គឺជាសេវាកម្មជាវដែលផ្តល់ការចូលប្រើប្រាស់មុខងារ និងសមត្ថភាពបន្ថែម សម្រាប់ Frigate របស់អ្នក រួមទាំងសមត្ថភាពក្នុងការប្រើប្រាស់ម៉ូដែលរកឃើញវត្ថុផ្ទាល់ខ្លួន ដែលបានបណ្តុះបណ្តាលលើទិន្នន័យរបស់អ្នកផ្ទាល់។ អ្នកអាចគ្រប់គ្រងការកំណត់ម៉ូដែល Frigate+ របស់អ្នកនៅទីនេះ។", + "cardTitles": { + "api": "API", + "currentModel": "ម៉ូដែលបច្ចុប្បន្ន", + "otherModels": "ម៉ូដែលផ្សេងទៀត", + "configuration": "ការកំណត់" + }, + "apiKey": { + "title": "Frigate+ API Key", + "validated": "Frigate+ API key ត្រូវបានរកឃើញ និងផ្ទៀងផ្ទាត់", + "notValidated": "Frigate+ API key មិនត្រូវបានរកឃើញ ឬមិនបានផ្ទៀងផ្ទាត់", + "desc": "Frigate+ API key អនុញ្ញាតឱ្យមានការរួមបញ្ចូលជាមួយសេវាកម្ម Frigate+។", + "plusLink": "អានបន្ថែមអំពី Frigate+" + }, + "snapshotConfig": { + "title": "ការកំណត់រូបថត", + "desc": "ការដាក់ស្នើទៅ Frigate+ តម្រូវឱ្យបើករូបថតនៅក្នុងការកំណត់របស់អ្នក។", + "cleanCopyWarning": "កាមេរ៉ាមួយចំនួនបានបិទរូបថត", + "table": { + "camera": "កាមេរ៉ា", + "snapshots": "រូបថត" + } + }, + "modelInfo": { + "title": "ព័ត៌មានម៉ូដែល", + "modelType": "ប្រភេទម៉ូដែល", + "trainDate": "កាលបរិច្ឆេទបណ្តុះបណ្តាល", + "baseModel": "ម៉ូដែលមូលដ្ឋាន", + "plusModelType": { + "baseModel": "ម៉ូដែលមូលដ្ឋាន", + "userModel": "បានកែសម្រួល" + }, + "supportedDetectors": "ឧបករណ៍រកឃើញដែលគាំទ្រ", + "cameras": "កាមេរ៉ា", + "loading": "កំពុងផ្ទុកព័ត៌មានម៉ូដែល…", + "error": "បរាជ័យក្នុងការផ្ទុកព័ត៌មានម៉ូដែល", + "noModelLoaded": "បច្ចុប្បន្នមិនមានម៉ូដែល Frigate+ ណាមួយត្រូវបានផ្ទុកទេ។", + "availableModels": "ម៉ូដែល Frigate+ ដែលមាន", + "loadingAvailableModels": "កំពុងផ្ទុកម៉ូដែលដែលមាន…", + "selectModel": "ជ្រើសរើសម៉ូដែល", + "noModelsAvailable": "មិនមានម៉ូដែលទេ", + "filter": { + "ariaLabel": "តម្រងម៉ូដែលតាមប្រភេទ", + "baseModels": "ម៉ូដែលមូលដ្ឋាន", + "fineTunedModels": "ម៉ូដែលដែលបានកែសម្រួល" + }, + "modelSelect": "ម៉ូដែលដែលមានរបស់អ្នកនៅលើ Frigate+ អាចត្រូវបានជ្រើសរើសនៅទីនេះ។ សូមចំណាំថា មានតែម៉ូដែលដែលឆបគ្នានឹងការកំណត់ឧបករណ៍រកឃើញបច្ចុប្បន្នរបស់អ្នកប៉ុណ្ណោះ ដែលអាចត្រូវបានជ្រើសរើស។" + }, + "changeInDetectorsAndModel": "ផ្លាស់ប្តូរម៉ូដែល", + "unsavedChanges": "ការផ្លាស់ប្តូរការកំណត់ Frigate+ ដែលមិនបានរក្សាទុក", + "restart_required": "ត្រូវការចាប់ផ្តើមឡើងវិញ (ម៉ូដែល Frigate+ បានផ្លាស់ប្តូរ)", + "toast": { + "success": "ការកំណត់ Frigate+ ត្រូវបានរក្សាទុក។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរ។", + "error": "បរាជ័យក្នុងការរក្សាទុកការផ្លាស់ប្តូរការកំណត់៖ {{errorMessage}}" + } + }, + "detectorsAndModel": { + "title": "ឧបករណ៍រកឃើញ និងម៉ូដែល", + "description": "កំណត់ផ្នែកខាងក្រោយនៃឧបករណ៍រកឃើញដែលដំណើរការការរកឃើញវត្ថុ និងម៉ូដែលដែលវាប្រើ។ ការផ្លាស់ប្តូរត្រូវបានរក្សាទុកជាមួយគ្នា ដើម្បីឱ្យឧបករណ៍រកឃើញ និងម៉ូដែលនៅតែស៊ីគ្នា។", + "cardTitles": { + "detector": "ផ្នែករឹងឧបករណ៍រកឃើញ", + "model": "ម៉ូដែលរកឃើញ" + }, + "tabs": { + "plus": "Frigate+", + "custom": "ម៉ូដែលផ្ទាល់ខ្លួន" + }, + "mismatch": { + "warning": "ម៉ូដែល Frigate+ បច្ចុប្បន្ន \"{{model}}\" ត្រូវការឧបករណ៍រកឃើញ {{required}}។ ជ្រើសរើសម៉ូដែលដែលឆបគ្នាខាងក្រោម ឬប្តូរទៅម៉ូដែលផ្ទាល់ខ្លួន មុនពេលរក្សាទុក។" + }, + "plusModel": { + "requiresDetector": "ត្រូវការ៖ {{detector}}", + "noModelSelected": "ជ្រើសរើសម៉ូដែល Frigate+" + }, + "toast": { + "saveSuccess": "ការកំណត់ឧបករណ៍រកឃើញ និងម៉ូដែលត្រូវបានរក្សាទុក។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូរ។", + "saveError": "បរាជ័យក្នុងការរក្សាទុកការកំណត់ឧបករណ៍រកឃើញ និងម៉ូដែល" + }, + "unsavedChanges": "ការផ្លាស់ប្តូរឧបករណ៍រកឃើញ និងម៉ូដែលដែលមិនបានរក្សាទុក", + "restartRequired": "ត្រូវការចាប់ផ្តើមឡើងវិញ (ឧបករណ៍រកឃើញ ឬម៉ូដែល បានផ្លាស់ប្តូរ)" + }, + "triggers": { + "documentTitle": "កេះ", + "semanticSearch": { + "title": "ការស្វែងរកតាមអត្ថន័យត្រូវបានបិទ", + "desc": "ការស្វែងរកតាមអត្ថន័យត្រូវតែបើក ដើម្បីប្រើកេះ។" + }, + "management": { + "title": "កេះ", + "desc": "គ្រប់គ្រងកេះសម្រាប់ {{camera}}។ ប្រើប្រភេទរូបភាពតូច ដើម្បីកេះលើរូបភាពតូចដែលស្រដៀងនឹង វត្ថុដែលបានតាមដានដែលអ្នកបានជ្រើសរើស និងប្រភេទការពិពណ៌នា ដើម្បីកេះលើការពិពណ៌នាដែលស្រដៀងនឹងអត្ថបទដែលអ្នកបានកំណត់។" + }, + "addTrigger": "បន្ថែមកេះ", + "table": { + "name": "ឈ្មោះ", + "type": "ប្រភេទ", + "content": "មាតិកា", + "threshold": "កម្រិត", + "actions": "សកម្មភាព", + "noTriggers": "មិនមានកេះណាមួយត្រូវបានកំណត់សម្រាប់កាមេរ៉ានេះទេ។", + "edit": "កែសម្រួល", + "deleteTrigger": "លុបកេះ", + "lastTriggered": "បានកេះចុងក្រោយ" + }, + "type": { + "thumbnail": "រូបភាពតូច", + "description": "ការពិពណ៌នា" + }, + "actions": { + "notification": "ផ្ញើការជូនដំណឹង", + "sub_label": "បន្ថែមស្លាករង", + "attribute": "បន្ថែមគុណលក្ខណៈ" + }, + "dialog": { + "createTrigger": { + "title": "បង្កើតកេះ", + "desc": "បង្កើតកេះសម្រាប់កាមេរ៉ា {{camera}}" + }, + "editTrigger": { + "title": "កែសម្រួលកេះ", + "desc": "កែសម្រួលការកំណត់សម្រាប់កេះនៅលើកាមេរ៉ា {{camera}}" + }, + "deleteTrigger": { + "title": "លុបកេះ", + "desc": "តើអ្នកប្រាកដថាចង់លុបកេះ {{triggerName}} ដែរឬទេ? សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។" + }, + "form": { + "name": { + "title": "ឈ្មោះ", + "placeholder": "ដាក់ឈ្មោះកេះនេះ", + "description": "បញ្ចូលឈ្មោះ ឬការពិពណ៌នាតែមួយគត់ ដើម្បីសម្គាល់កេះនេះ", + "error": { + "minLength": "វាលត្រូវតែមានប្រវែងយ៉ាងហោចណាស់ ២ តួអក្សរ។", + "invalidCharacters": "វាលអាចមានតែអក្សរ លេខ សញ្ញា _ និងសញ្ញា - ប៉ុណ្ណោះ។", + "alreadyExists": "កេះដែលមានឈ្មោះនេះមានរួចហើយសម្រាប់កាមេរ៉ានេះ។" + } + }, + "enabled": { + "description": "បើក ឬបិទកេះនេះ" + }, + "type": { + "title": "ប្រភេទ", + "placeholder": "ជ្រើសរើសប្រភេទកេះ", + "description": "កេះនៅពេលដែលការពិពណ៌នាវត្ថុដែលបានតាមដានស្រដៀងគ្នាត្រូវបានរកឃើញ", + "thumbnail": "កេះនៅពេលដែលរូបភាពតូចនៃវត្ថុដែលបានតាមដានស្រដៀងគ្នាត្រូវបានរកឃើញ" + }, + "content": { + "title": "មាតិកា", + "imagePlaceholder": "ជ្រើសរើសរូបភាពតូច", + "textPlaceholder": "បញ្ចូលមាតិកាអត្ថបទ", + "imageDesc": "មានតែរូបភាពតូចចំនួន ១០០ ចុងក្រោយប៉ុណ្ណោះដែលត្រូវបានបង្ហាញ។ ប្រសិនបើអ្នករកមិនឃើញរូបភាពតូចដែលអ្នកចង់បាន សូមត្រួតពិនិត្យវត្ថុមុនៗនៅក្នុងការរុករក ហើយកំណត់កេះពីម៉ឺនុយនៅទីនោះ។", + "textDesc": "បញ្ចូលអត្ថបទដើម្បីកេះសកម្មភាពនេះ នៅពេលដែលការពិពណ៌នាវត្ថុដែលបានតាមដានស្រដៀងគ្នាត្រូវបានរកឃើញ។", + "error": { + "required": "មាតិកាគឺចាំបាច់។" + } + }, + "threshold": { + "title": "កម្រិត", + "desc": "កំណត់កម្រិតភាពស្រដៀងគ្នាសម្រាប់កេះនេះ។ កម្រិតខ្ពស់ជាងនេះមានន័យថា ត្រូវការការផ្គូផ្គងដែលជិតស្និទ្ធជាងមុន ដើម្បីបញ្ចេញកេះ។", + "error": { + "min": "កម្រិតត្រូវតែយ៉ាងហោចណាស់ 0", + "max": "កម្រិតត្រូវតែអតិបរមា 1" + } + }, + "actions": { + "title": "សកម្មភាព", + "desc": "ជាលំនាំដើម Frigate បញ្ចេញសារ MQTT សម្រាប់កេះទាំងអស់។ ស្លាករងបន្ថែមឈ្មោះកេះទៅស្លាកវត្ថុ។ គុណលក្ខណៈគឺជាទិន្នន័យមេតាដែលអាចស្វែងរកបាន ដែលរក្សាទុកដាច់ដោយឡែកនៅក្នុងទិន្នន័យមេតានៃវត្ថុដែលបានតាមដាន។", + "error": { + "min": "ត្រូវជ្រើសរើសយ៉ាងហោចណាស់មួយសកម្មភាព។" + } + } + } + }, + "wizard": { + "title": "បង្កើតកេះ", + "step1": { + "description": "កំណត់ការកំណត់មូលដ្ឋានសម្រាប់កេះរបស់អ្នក។" + }, + "step2": { + "description": "កំណត់មាតិកាដែលនឹងកេះសកម្មភាពនេះ។" + }, + "step3": { + "description": "កំណត់កម្រិត និងសកម្មភាពសម្រាប់កេះនេះ។" + }, + "steps": { + "nameAndType": "ឈ្មោះ និងប្រភេទ", + "configureData": "កំណត់ទិន្នន័យ", + "thresholdAndActions": "កម្រិត និងសកម្មភាព" + } + }, + "toast": { + "success": { + "createTrigger": "កេះ {{name}} ត្រូវបានបង្កើតដោយជោគជ័យ។", + "updateTrigger": "កេះ {{name}} ត្រូវបានធ្វើបច្ចុប្បន្នភាពដោយជោគជ័យ។", + "deleteTrigger": "កេះ {{name}} ត្រូវបានលុបដោយជោគជ័យ។" + }, + "error": { + "createTriggerFailed": "បរាជ័យក្នុងការបង្កើតកេះ៖ {{errorMessage}}", + "updateTriggerFailed": "បរាជ័យក្នុងការធ្វើបច្ចុប្បន្នភាពកេះ៖ {{errorMessage}}", + "deleteTriggerFailed": "បរាជ័យក្នុងការលុបកេះ៖ {{errorMessage}}" + } + } + }, + "maintenance": { + "title": "ការថែទាំ", + "sync": { + "title": "ការធ្វើសមកាលកម្មមេឌៀ", + "desc": "Frigate នឹងសម្អាតមេឌៀជាប្រចាំតាមកាលវិភាគ យោងតាមការកំណត់ការរក្សាទុករបស់អ្នក។ វាជារឿងធម្មតាដែលឃើញឯកសារដែលគ្មានម្ចាស់មួយចំនួន នៅពេល Frigate ដំណើរការ។ ប្រើមុខងារនេះដើម្បីដកឯកសារមេឌៀដែលគ្មានម្ចាស់ចេញពីថាស ដែលលែងត្រូវបានយោងនៅក្នុងមូលដ្ឋានទិន្នន័យ។", + "started": "ការធ្វើសមកាលកម្មមេឌៀបានចាប់ផ្តើម។", + "alreadyRunning": "ការងារធ្វើសមកាលកម្មកំពុងដំណើរការរួចហើយ", + "error": "បរាជ័យក្នុងការចាប់ផ្តើមការធ្វើសមកាលកម្ម", + "currentStatus": "ស្ថានភាព", + "jobId": "លេខសម្គាល់ការងារ", + "startTime": "ពេលវេលាចាប់ផ្តើម", + "endTime": "ពេលវេលាបញ្ចប់", + "statusLabel": "ស្ថានភាព", + "results": "លទ្ធផល", + "errorLabel": "កំហុស", + "mediaTypes": "ប្រភេទមេឌៀ", + "allMedia": "មេឌៀទាំងអស់", + "dryRun": "ដំណើរការសាកល្បង", + "dryRunEnabled": "គ្មានឯកសារណាមួយនឹងត្រូវបានលុបទេ", + "dryRunDisabled": "ឯកសារនឹងត្រូវបានលុប", + "force": "បង្ខំ", + "forceDesc": "រំលងកម្រិតសុវត្ថិភាព និងបញ្ចប់ការធ្វើសមកាលកម្ម ទោះបីជាឯកសារជាង ៥០% នឹងត្រូវបានលុបក៏ដោយ។", + "verbose": "លម្អិត", + "verboseDesc": "សរសេរបញ្ជីពេញលេញនៃឯកសារដែលគ្មានម្ចាស់ទៅថាស ដើម្បីត្រួតពិនិត្យ។", + "running": "កំពុងដំណើរការការធ្វើសមកាលកម្ម...", + "start": "ចាប់ផ្តើមការធ្វើសមកាលកម្ម", + "inProgress": "ការធ្វើសមកាលកម្មកំពុងដំណើរការ។ ទំព័រនេះត្រូវបានបិទ។", + "status": { + "queued": "ក្នុងជួរ", + "running": "កំពុងដំណើរការ", + "completed": "បានបញ្ចប់", + "failed": "បានបរាជ័យ", + "notRunning": "មិនកំពុងដំណើរការ" + }, + "resultsFields": { + "filesChecked": "ឯកសារដែលបានពិនិត្យ", + "orphansFound": "ឯកសារគ្មានម្ចាស់ដែលរកឃើញ", + "orphansDeleted": "ឯកសារគ្មានម្ចាស់ដែលបានលុប", + "aborted": "បានបោះបង់។ ការលុបនឹងលើសពីកម្រិតសុវត្ថិភាព។", + "error": "កំហុស", + "totals": "សរុប" + }, + "event_snapshots": "រូបថតវត្ថុដែលបានតាមដាន", + "event_thumbnails": "រូបភាពតូចវត្ថុដែលបានតាមដាន", + "review_thumbnails": "រូបភាពតូចត្រួតពិនិត្យ", + "previews": "ការមើលជាមុន", + "exports": "ការនាំចេញ", + "recordings": "ការថត" + }, + "regionGrid": { + "title": "ក្រឡាតំបន់", + "desc": "ក្រឡាតំបន់គឺជាការបង្កើនប្រសិទ្ធភាព ដែលរៀនពីកន្លែងដែលវត្ថុដែលមានទំហំផ្សេងៗគ្នា ជាធម្មតាលេចឡើងនៅក្នុងដែនមើលឃើញរបស់កាមេរ៉ានីមួយៗ។ Frigate ប្រើទិន្នន័យនេះដើម្បីកំណត់ទំហំតំបន់រកឃើញប្រកបដោយប្រសិទ្ធភាព។ ក្រឡានេះត្រូវបានបង្កើតឡើងដោយស្វ័យប្រវត្តិតាមពេលវេលា ពីទិន្នន័យវត្ថុដែលបានតាមដាន។", + "clear": "សម្អាតក្រឡាតំបន់", + "clearConfirmTitle": "សម្អាតក្រឡាតំបន់", + "clearConfirmDesc": "ការសម្អាតក្រឡាតំបន់មិនត្រូវបានណែនាំទេ លើកលែងតែអ្នកបានផ្លាស់ប្តូរទំហំម៉ូដែលឧបករណ៍រកឃើញរបស់អ្នកថ្មីៗនេះ ឬបានផ្លាស់ប្តូរទីតាំងរូបវន្តរបស់កាមេរ៉ាអ្នក ហើយកំពុងមានបញ្ហាការតាមដានវត្ថុ។ ក្រឡានឹងត្រូវបានកសាងឡើងវិញដោយស្វ័យប្រវត្តិតាមពេលវេលា នៅពេលដែលវត្ថុត្រូវបានតាមដាន។ ការចាប់ផ្តើម Frigate ឡើងវិញគឺចាំបាច់ ដើម្បីឱ្យការផ្លាស់ប្តូរមានប្រសិទ្ធភាព។", + "clearSuccess": "ក្រឡាតំបន់ត្រូវបានសម្អាតដោយជោគជ័យ", + "clearError": "បរាជ័យក្នុងការសម្អាតក្រឡាតំបន់", + "restartRequired": "ត្រូវការចាប់ផ្តើមឡើងវិញ ដើម្បីឱ្យការផ្លាស់ប្តូរក្រឡាតំបន់មានប្រសិទ្ធភាព" + } + }, + "configForm": { + "global": { + "title": "ការកំណត់សកល", + "description": "ការកំណត់ទាំងនេះអនុវត្តចំពោះកាមេរ៉ាទាំងអស់ លើកលែងតែត្រូវបានផ្លាស់ប្តូរនៅក្នុងការកំណត់ជាក់លាក់នៃកាមេរ៉ា។" + }, + "camera": { + "title": "ការកំណត់កាមេរ៉ា", + "description": "ការកំណត់ទាំងនេះអនុវត្តតែចំពោះកាមេរ៉ានេះប៉ុណ្ណោះ ហើយផ្លាស់ប្តូរការកំណត់សកល។", + "noCameras": "មិនមានកាមេរ៉ាទេ" + }, + "advancedSettingsCount": "ការកំណត់កម្រិតខ្ពស់ ({{count}})", + "advancedCount": "កម្រិតខ្ពស់ ({{count}})", + "showAdvanced": "បង្ហាញការកំណត់កម្រិតខ្ពស់", + "tabs": { + "sharedDefaults": "លំនាំដើមដែលបានចែករំលែក", + "system": "ប្រព័ន្ធ", + "integrations": "ការរួមបញ្ចូល" + }, + "additionalProperties": { + "keyLabel": "គន្លឹះ", + "valueLabel": "តម្លៃ", + "keyPlaceholder": "គន្លឹះថ្មី", + "remove": "ដកចេញ", + "providerNameLabel": "ឈ្មោះអ្នកផ្តល់សេវា", + "providerNamePlaceholder": "ឧ. openai", + "variableNameLabel": "ឈ្មោះអថេរ", + "variableNamePlaceholder": "ឧ. MY_VARIABLE", + "loggerNameLabel": "ឈ្មោះ Logger", + "loggerNamePlaceholder": "ឧ. frigate.record", + "keyPatternError": "ប្រើតែអក្សរ លេខ សញ្ញា - និងសញ្ញា _ (គ្មានចន្លោះ)" + }, + "knownPlates": { + "namePlaceholder": "ឧ. ឡានប្រពន្ធ", + "platePlaceholder": "លេខផ្លាក ឬ regex" + }, + "liveStreams": { + "streamNameLabel": "ឈ្មោះស្ទ្រីម", + "streamNamePlaceholder": "ឧ. Main HD Stream", + "go2rtcStreamLabel": "ស្ទ្រីម go2rtc", + "go2rtcStreamPlaceholder": "ជ្រើសរើសស្ទ្រីម go2rtc", + "go2rtcStreamSearch": "ស្វែងរក ឬបញ្ចូលឈ្មោះស្ទ្រីម…", + "noGo2rtcStreams": "មិនមានស្ទ្រីម go2rtc ត្រូវបានកំណត់", + "availableStreams": "ស្ទ្រីមដែលមាន", + "useCustom": "ប្រើ \"{{value}}\"", + "addStream": "បន្ថែមស្ទ្រីម" + }, + "timezone": { + "defaultOption": "ប្រើតំបន់ពេលវេលារបស់កម្មវិធីរុករក" + }, + "roleMap": { + "empty": "គ្មានការផ្គូផ្គងតួនាទី", + "roleLabel": "តួនាទី", + "groupsLabel": "ក្រុម", + "addMapping": "បន្ថែមការផ្គូផ្គងតួនាទី", + "remove": "ដកចេញ" + }, + "ffmpegArgs": { + "preset": "ការកំណត់ជាមុន", + "manual": "អាគុយម៉ង់ដោយដៃ", + "inherit": "ទទួលមរតកពីការកំណត់កាមេរ៉ា", + "none": "គ្មាន", + "useGlobalSetting": "ទទួលមរតកពីការកំណត់សកល", + "selectPreset": "ជ្រើសរើសការកំណត់ជាមុន", + "manualPlaceholder": "បញ្ចូលអាគុយម៉ង់ FFmpeg", + "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 (ទូទៅ)", + "preset-http-mjpeg-generic": "HTTP MJPEG (ទូទៅ)", + "preset-http-reolink": "HTTP - កាមេរ៉ា Reolink", + "preset-rtmp-generic": "RTMP (ទូទៅ)", + "preset-rtsp-generic": "RTSP (ទូទៅ)", + "preset-rtsp-restream": "RTSP - Restream ពី go2rtc", + "preset-rtsp-restream-low-latency": "RTSP - Restream ពី go2rtc (ភាពយឺតយ៉ាវទាប)", + "preset-rtsp-udp": "RTSP - UDP", + "preset-rtsp-blue-iris": "RTSP - Blue Iris", + "preset-record-generic": "ថត (ទូទៅ, គ្មានសំឡេង)", + "preset-record-generic-audio-copy": "ថត (ទូទៅ + ចម្លងសំឡេង)", + "preset-record-generic-audio-aac": "ថត (ទូទៅ + សំឡេងទៅ AAC)", + "preset-record-mjpeg": "ថត - កាមេរ៉ា MJPEG", + "preset-record-jpeg": "ថត - កាមេរ៉ា JPEG", + "preset-record-ubiquiti": "ថត - កាមេរ៉ា Ubiquiti" + } + }, + "cameraInputs": { + "itemTitle": "ស្ទ្រីម {{index}}", + "sourceMode": { + "restream": "Restream (go2rtc)", + "manual": "ផ្លូវបញ្ចូលដោយដៃ", + "go2rtcStreamLabel": "ស្ទ្រីម go2rtc", + "go2rtcStreamPlaceholder": "ជ្រើសរើសស្ទ្រីម go2rtc", + "noGo2rtcStreams": "មិនមានស្ទ្រីម go2rtc ត្រូវបានកំណត់", + "go2rtcStreamSearch": "ស្វែងរកស្ទ្រីម...", + "availableStreams": "ស្ទ្រីមដែលមាន", + "noMatchingStreams": "គ្មានស្ទ្រីមដែលត្រូវគ្នា" + } + }, + "restartRequiredField": "ត្រូវការចាប់ផ្តើមឡើងវិញ", + "restartRequiredFooter": "ការកំណត់បានផ្លាស់ប្តូរ - ត្រូវការចាប់ផ្តើមឡើងវិញ", + "sections": { + "detect": "ការរកឃើញ", + "record": "ការថត", + "snapshots": "រូបថត", + "motion": "ចលនា", + "objects": "វត្ថុ", + "review": "ការត្រួតពិនិត្យ", + "audio": "សំឡេង", + "notifications": "ការជូនដំណឹង", + "live": "ទិដ្ឋភាពផ្ទាល់", + "timestamp_style": "ពេលវេលា", + "mqtt": "MQTT", + "database": "មូលដ្ឋានទិន្នន័យ", + "telemetry": "Telemetry", + "auth": "ការផ្ទៀងផ្ទាត់អត្តសញ្ញាណ", + "tls": "TLS", + "proxy": "Proxy", + "go2rtc": "go2rtc", + "ffmpeg": "FFmpeg", + "detectors": "ឧបករណ៍រកឃើញ", + "model": "ម៉ូដែល", + "semantic_search": "ការស្វែងរកតាមអត្ថន័យ", + "genai": "GenAI", + "face_recognition": "ការសម្គាល់មុខ", + "lpr": "ការសម្គាល់ផ្លាកលេខ", + "birdseye": "Birdseye", + "masksAndZones": "ម៉ាស / តំបន់" + }, + "detect": { + "title": "ការកំណត់ការរកឃើញ" + }, + "detectors": { + "title": "ការកំណត់ឧបករណ៍រកឃើញ", + "singleType": "អនុញ្ញាតតែឧបករណ៍រកឃើញ {{type}} មួយប៉ុណ្ណោះ។", + "keyRequired": "ឈ្មោះឧបករណ៍រកឃើញគឺចាំបាច់។", + "keyDuplicate": "ឈ្មោះឧបករណ៍រកឃើញមានរួចហើយ។", + "noSchema": "មិនមានគ្រោងការណ៍ឧបករណ៍រកឃើញទេ។", + "none": "មិនមានឧបករណ៍រកឃើញណាមួយត្រូវបានកំណត់ទេ។", + "add": "បន្ថែមឧបករណ៍រកឃើញ", + "addCustomKey": "បន្ថែមគន្លឹះផ្ទាល់ខ្លួន" + }, + "record": { + "title": "ការកំណត់ការថត" + }, + "snapshots": { + "title": "ការកំណត់រូបថត" + }, + "motion": { + "title": "ការកំណត់ចលនា" + }, + "objects": { + "title": "ការកំណត់វត្ថុ" + }, + "audioLabels": { + "summary": "ស្លាកសំឡេង {{count}} ត្រូវបានជ្រើសរើស", + "empty": "មិនមានស្លាកសំឡេងទេ" + }, + "objectLabels": { + "summary": "ប្រភេទវត្ថុ {{count}} ត្រូវបានជ្រើសរើស", + "empty": "មិនមានស្លាកវត្ថុទេ" + }, + "reviewLabels": { + "summary": "ស្លាក {{count}} ត្រូវបានជ្រើសរើស", + "empty": "មិនមានស្លាកទេ" + }, + "filters": { + "objectFieldLabel": "{{field}} សម្រាប់ {{label}}" + }, + "zoneNames": { + "summary": "{{count}} ត្រូវបានជ្រើសរើស", + "empty": "មិនមានតំបន់ទេ" + }, + "inputRoles": { + "summary": "តួនាទី {{count}} ត្រូវបានជ្រើសរើស", + "empty": "មិនមានតួនាទីទេ", + "options": { + "detect": "រកឃើញ", + "record": "ថត", + "audio": "សំឡេង" + } + }, + "genaiRoles": { + "options": { + "embeddings": "Embedding", + "descriptions": "ការពិពណ៌នា", + "chat": "ជជែក" + } + }, + "semanticSearchModel": { + "placeholder": "ជ្រើសរើសម៉ូដែល…", + "builtIn": "ម៉ូដែលដែលមានស្រាប់", + "genaiProviders": "អ្នកផ្តល់ GenAI" + }, + "semanticSearchModelSize": { + "notApplicable": "មិនអនុវត្តចំពោះអ្នកផ្តល់ GenAI" + }, + "review": { + "title": "ការកំណត់ការត្រួតពិនិត្យ" + }, + "audio": { + "title": "ការកំណត់សំឡេង" + }, + "notifications": { + "title": "ការកំណត់ការជូនដំណឹង" + }, + "live": { + "title": "ការកំណត់ទិដ្ឋភាពផ្ទាល់" + }, + "timestamp_style": { + "title": "ការកំណត់ពេលវេលា" + }, + "searchPlaceholder": "ស្វែងរក...", + "addCustomLabel": "បន្ថែមស្លាកផ្ទាល់ខ្លួន...", + "genaiModel": { + "placeholder": "ជ្រើសរើស ឬបញ្ចូលម៉ូដែល…", + "search": "ស្វែងរក ឬបញ្ចូលម៉ូដែល…", + "noModels": "មិនមានម៉ូដែលទេ", + "available": "ម៉ូដែលដែលមាន", + "useCustom": "ប្រើ \"{{value}}\"", + "refresh": "ធ្វើឱ្យថ្មីម៉ូដែល", + "probeFailed": "បរាជ័យក្នុងការស៊ើបអង្កេតម៉ូដែល", + "fetchedModels": "បានទាញយកបញ្ជីម៉ូដែលដោយជោគជ័យ" + }, + "ptzPresets": { + "placeholder": "ជ្រើសរើស ឬបញ្ចូលការកំណត់ជាមុន...", + "search": "ស្វែងរក ឬបញ្ចូលការកំណត់ជាមុន...", + "noPresets": "មិនមានការកំណត់ជាមុនទេ", + "available": "ការកំណត់ជាមុនរបស់កាមេរ៉ា", + "useCustom": "ប្រើ \"{{value}}\"" + }, + "defaultRole": { + "admin": "អ្នកគ្រប់គ្រង", + "viewer": "អ្នកមើល" + } + }, + "globalConfig": { + "title": "ការកំណត់សកល", + "description": "កំណត់ការកំណត់សកលដែលអនុវត្តចំពោះកាមេរ៉ាទាំងអស់ លើកលែងតែត្រូវបានផ្លាស់ប្តូរ។", + "toast": { + "success": "ការកំណត់សកលត្រូវបានរក្សាទុកដោយជោគជ័យ", + "error": "បរាជ័យក្នុងការរក្សាទុកការកំណត់សកល", + "validationError": "ការផ្ទៀងផ្ទាត់បានបរាជ័យ" + } + }, + "cameraConfig": { + "title": "ការកំណត់កាមេរ៉ា", + "description": "កំណត់ការកំណត់សម្រាប់កាមេរ៉ានីមួយៗ។ ការកំណត់ផ្លាស់ប្តូរលំនាំដើមសកល។", + "overriddenBadge": "បានផ្លាស់ប្តូរ", + "resetToGlobal": "កំណត់ឡើងវិញទៅសកល", + "toast": { + "success": "ការកំណត់កាមេរ៉ាត្រូវបានរក្សាទុកដោយជោគជ័យ", + "error": "បរាជ័យក្នុងការរក្សាទុកការកំណត់កាមេរ៉ា" + } + }, + "toast": { + "success": "ការកំណត់ត្រូវបានរក្សាទុកដោយជោគជ័យ", + "applied": "ការកំណត់ត្រូវបានអនុវត្តដោយជោគជ័យ", + "successRestartRequired": "ការកំណត់ត្រូវបានរក្សាទុកដោយជោគជ័យ។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូររបស់អ្នក។", + "error": "បរាជ័យក្នុងការរក្សាទុកការកំណត់", + "validationError": "ការផ្ទៀងផ្ទាត់បានបរាជ័យ៖ {{message}}", + "resetSuccess": "កំណត់ឡើងវិញទៅលំនាំដើមសកល", + "resetError": "បរាជ័យក្នុងការកំណត់ការកំណត់ឡើងវិញ", + "saveAllSuccess_other": "បានរក្សាទុកផ្នែក {{count}} ដោយជោគជ័យ។", + "saveAllSuccessRestartRequired_other": "បានរក្សាទុកផ្នែក {{count}} ដោយជោគជ័យ។ សូមចាប់ផ្តើម Frigate ឡើងវិញដើម្បីអនុវត្តការផ្លាស់ប្តូររបស់អ្នក។", + "saveAllPartial_other": "ផ្នែក {{successCount}} នៃ {{totalCount}} ត្រូវបានរក្សាទុក។ {{failCount}} បានបរាជ័យ។", + "saveAllFailure": "បរាជ័យក្នុងការរក្សាទុកផ្នែកទាំងអស់។" + }, + "profiles": { + "title": "ប្រវត្តិរូប", + "activeProfile": "ប្រវត្តិរូបសកម្ម", + "noActiveProfile": "គ្មានប្រវត្តិរូបសកម្ម", + "active": "សកម្ម", + "activated": "ប្រវត្តិរូប '{{profile}}' ត្រូវបានដំណើរការ", + "activateFailed": "បរាជ័យក្នុងការកំណត់ប្រវត្តិរូប", + "deactivated": "ប្រវត្តិរូបត្រូវបានបិទ", + "noProfiles": "គ្មានប្រវត្តិរូបត្រូវបានកំណត់។", + "noOverrides": "គ្មានការផ្លាស់ប្តូរ", + "cameraCount_other": "កាមេរ៉ា {{count}}", + "columnCamera": "កាមេរ៉ា", + "columnOverrides": "ការផ្លាស់ប្តូរប្រវត្តិរូប", + "baseConfig": "ការកំណត់មូលដ្ឋាន", + "addProfile": "បន្ថែមប្រវត្តិរូប", + "newProfile": "ប្រវត្តិរូបថ្មី", + "profileNamePlaceholder": "ឧ. Armed, Away, Night Mode", + "friendlyNameLabel": "ឈ្មោះប្រវត្តិរូប", + "profileIdLabel": "លេខសម្គាល់ប្រវត្តិរូប", + "profileIdDescription": "អត្តសញ្ញាណខាងក្នុងដែលប្រើក្នុងការកំណត់ និងស្វ័យប្រវត្តិកម្ម", + "nameInvalid": "អនុញ្ញាតតែអក្សរតូច លេខ និងសញ្ញា _ ប៉ុណ្ណោះ", + "nameDuplicate": "ប្រវត្តិរូបដែលមានឈ្មោះនេះមានរួចហើយ", + "error": { + "mustBeAtLeastTwoCharacters": "ត្រូវតែមានយ៉ាងហោចណាស់ ២ តួអក្សរ", + "mustNotContainPeriod": "មិនត្រូវមានសញ្ញាចុច", + "alreadyExists": "ប្រវត្តិរូបដែលមានលេខសម្គាល់នេះមានរួចហើយ" + }, + "renameProfile": "ប្តូរឈ្មោះប្រវត្តិរូប", + "renameSuccess": "ប្រវត្តិរូបត្រូវបានប្តូរឈ្មោះទៅជា '{{profile}}'", + "deleteProfile": "លុបប្រវត្តិរូប", + "deleteProfileConfirm": "លុបប្រវត្តិរូប \"{{profile}}\" ពីកាមេរ៉ាទាំងអស់? សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។", + "deleteSuccess": "ប្រវត្តិរូប '{{profile}}' ត្រូវបានលុប", + "createSuccess": "ប្រវត្តិរូប '{{profile}}' ត្រូវបានបង្កើត", + "removeOverride": "ដកការផ្លាស់ប្តូរប្រវត្តិរូប", + "deleteSection": "លុបការផ្លាស់ប្តូរផ្នែក", + "deleteSectionConfirm": "ដកការផ្លាស់ប្តូរ {{section}} សម្រាប់ប្រវត្តិរូប {{profile}} នៅលើ {{camera}}?", + "deleteSectionSuccess": "បានដកការផ្លាស់ប្តូរ {{section}} សម្រាប់ {{profile}}", + "enableSwitch": "បើកប្រវត្តិរូប", + "enabledDescription": "ប្រវត្តិរូបត្រូវបានបើក។ បង្កើតប្រវត្តិរូបថ្មីខាងក្រោម រុករកទៅផ្នែកកំណត់កាមេរ៉ាដើម្បីធ្វើការផ្លាស់ប្តូររបស់អ្នក ហើយរក្សាទុកដើម្បីឱ្យការផ្លាស់ប្តូរមានប្រសិទ្ធភាព។", + "disabledDescription": "ប្រវត្តិរូបអនុញ្ញាតឱ្យអ្នកកំណត់សំណុំនៃការផ្លាស់ប្តូរការកំណត់កាមេរ៉ាដែលមានឈ្មោះ (ឧ. armed, away, night) ដែលអាចត្រូវបានដំណើរការតាមតម្រូវការ។" + }, + "unsavedChanges": "អ្នកមានការផ្លាស់ប្តូរដែលមិនបានរក្សាទុក", + "confirmReset": "បញ្ជាក់ការកំណត់ឡើងវិញ", + "resetToDefaultDescription": "សកម្មភាពនេះនឹងកំណត់ការកំណត់ទាំងអស់នៅក្នុងផ្នែកនេះឡើងវិញទៅតម្លៃលំនាំដើមរបស់ពួកវា។ សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។", + "resetToGlobalDescription": "សកម្មភាពនេះនឹងកំណត់ការកំណត់នៅក្នុងផ្នែកនេះឡើងវិញទៅលំនាំដើមសកល។ សកម្មភាពនេះមិនអាចត្រឡប់វិញបានទេ។", + "go2rtcStreams": { + "title": "ស្ទ្រីម go2rtc", + "description": "គ្រប់គ្រងការកំណត់ស្ទ្រីម go2rtc សម្រាប់ការ restream កាមេរ៉ា។ ស្ទ្រីមនីមួយៗមានឈ្មោះ និង URL ប្រភពមួយ ឬច្រើន។", + "addStream": "បន្ថែមស្ទ្រីម", + "addStreamDesc": "បញ្ចូលឈ្មោះសម្រាប់ស្ទ្រីមថ្មី។ ឈ្មោះនេះនឹងត្រូវបានប្រើដើម្បីយោងស្ទ្រីមនៅក្នុងការកំណត់កាមេរ៉ារបស់អ្នក។", + "addUrl": "បន្ថែម URL", + "sourceNumber": "ប្រភព {{index}}", + "streamName": "ឈ្មោះស្ទ្រីម", + "streamNamePlaceholder": "ឧ. front_door", + "streamUrlPlaceholder": "ឧ. rtsp://user:pass@192.168.1.100/stream", + "deleteStream": "លុបស្ទ្រីម", + "deleteStreamConfirm": "តើអ្នកប្រាកដថាចង់លុបស្ទ្រីម \"{{streamName}}\" ដែរឬទេ? កាមេរ៉ាដែលយោងស្ទ្រីមនេះអាចនឹងឈប់ដំណើរការ។", + "noStreams": "មិនមានស្ទ្រីម go2rtc ត្រូវបានកំណត់។ បន្ថែមស្ទ្រីមដើម្បីចាប់ផ្តើម។", + "validation": { + "nameRequired": "ឈ្មោះស្ទ្រីមគឺចាំបាច់", + "nameDuplicate": "ស្ទ្រីមដែលមានឈ្មោះនេះមានរួចហើយ", + "nameInvalid": "ឈ្មោះស្ទ្រីមអាចមានតែអក្សរ លេខ សញ្ញា _ និងសញ្ញា - ប៉ុណ្ណោះ", + "urlRequired": "ត្រូវការយ៉ាងហោចណាស់មួយ URL" + }, + "renameStream": "ប្តូរឈ្មោះស្ទ្រីម", + "renameStreamDesc": "បញ្ចូលឈ្មោះថ្មីសម្រាប់ស្ទ្រីមនេះ។ ការប្តូរឈ្មោះស្ទ្រីមអាចធ្វើឱ្យកាមេរ៉ា ឬស្ទ្រីមផ្សេងទៀតដែលយោងវាតាមឈ្មោះ មានបញ្ហា។", + "newStreamName": "ឈ្មោះស្ទ្រីមថ្មី", + "ffmpeg": { + "useFfmpegModule": "ប្រើរបៀបឆបគ្នា (ffmpeg)", + "video": "វីដេអូ", + "audio": "សំឡេង", + "hardware": "ការបង្កើនល្បឿនផ្នែករឹង", + "videoCopy": "ចម្លង", + "videoH264": "បំប្លែងទៅ H.264", + "videoH265": "បំប្លែងទៅ H.265", + "videoExclude": "ដកចេញ", + "audioCopy": "ចម្លង", + "audioAac": "បំប្លែងទៅ AAC", + "audioOpus": "បំប្លែងទៅ Opus", + "audioPcmu": "បំប្លែងទៅ PCM μ-law", + "audioPcma": "បំប្លែងទៅ PCM A-law", + "audioPcm": "បំប្លែងទៅ PCM", + "audioMp3": "បំប្លែងទៅ MP3", + "audioExclude": "ដកចេញ", + "hardwareNone": "គ្មានការបង្កើនល្បឿនផ្នែករឹង", + "hardwareAuto": "ស្វ័យប្រវត្តិ (ណែនាំ)", + "hardwareVaapi": "VAAPI", + "hardwareCuda": "CUDA", + "hardwareV4l2m2m": "V4L2 M2M", + "hardwareDxva2": "DXVA2", + "hardwareVideotoolbox": "VideoToolbox", + "addVideoCodec": "បន្ថែម codec វីដេអូ", + "addAudioCodec": "បន្ថែម codec សំឡេង", + "removeCodec": "ដក codec ចេញ" + } + }, + "birdseye": { + "trackingMode": { + "objects": "វត្ថុ", + "motion": "ចលនា", + "continuous": "ជាប់លាប់" + }, + "cameraOrder": { + "label": "លំដាប់កាមេរ៉ា", + "description": "អូសកាមេរ៉ាដើម្បីកំណត់លំដាប់របស់ពួកវានៅក្នុងប្លង់ Birdseye។", + "reorderHandle": "អូសដើម្បីតម្រៀបឡើងវិញ", + "saving": "កំពុងរក្សាទុក…", + "saved": "បានរក្សាទុក" + } + }, + "retainMode": { + "all": "ទាំងអស់", + "motion": "ចលនា", + "active_objects": "វត្ថុសកម្ម" + }, + "previewQuality": { + "very_high": "ខ្ពស់ណាស់", + "high": "ខ្ពស់", + "medium": "មធ្យម", + "low": "ទាប", + "very_low": "ទាបណាស់" + }, + "ui": { + "timeFormat": { + "browser": "កម្មវិធីរុករក", + "12hour": "១២ ម៉ោង", + "24hour": "២៤ ម៉ោង" + }, + "unitSystem": { + "metric": "ម៉ែត្រ", + "imperial": "អ៊ីមភេរៀល" + } + }, + "review": { + "imageSource": { + "recordings": "ការថត", + "previews": "ការមើលជាមុន" + } + }, + "logger": { + "logLevel": { + "debug": "Debug", + "info": "ព័ត៌មាន", + "warning": "ការព្រមាន", + "error": "កំហុស", + "critical": "ធ្ងន់ធ្ងរ" + } + }, + "onvif": { + "profileAuto": "ស្វ័យប្រវត្តិ", + "profileLoading": "កំពុងផ្ទុកប្រវត្តិរូប...", + "autotracking": { + "zooming": { + "disabled": "បានបិទ", + "absolute": "ដាច់ខាត", + "relative": "ទាក់ទង" + } + } + }, + "modelSize": { + "small": "តូច", + "large": "ធំ" + }, + "configMessages": { + "review": { + "recordDisabled": "ការថតត្រូវបានបិទ ធាតុត្រួតពិនិត្យនឹងមិនត្រូវបានបង្កើតទេ។", + "detectDisabled": "ការរកឃើញវត្ថុត្រូវបានបិទ។ ធាតុត្រួតពិនិត្យត្រូវការវត្ថុដែលបានរកឃើញ ដើម្បីចាត់ថ្នាក់ការជូនដំណឹង និងការរកឃើញ។", + "allNonAlertDetections": "សកម្មភាពដែលមិនមែនជាការជូនដំណឹងទាំងអស់ នឹងត្រូវបានរួមបញ្ចូលជាការរកឃើញ។", + "genaiImageSourceRecordingsRecordDisabled": "ប្រភពរូបភាពត្រូវបានកំណត់ទៅជា 'ការថត' ប៉ុន្តែការថតត្រូវបានបិទ។ Frigate នឹងត្រឡប់ទៅប្រើរូបភាពមើលជាមុនវិញ។" + }, + "audio": { + "noAudioRole": "គ្មានស្ទ្រីមណាមួយបានកំណត់តួនាទីសំឡេងទេ។ អ្នកត្រូវតែបើកតួនាទីសំឡេង ដើម្បីឱ្យការរកឃើញសំឡេងដំណើរការ។" + }, + "audioTranscription": { + "audioDetectionDisabled": "ការរកឃើញសំឡេងមិនត្រូវបានបើកសម្រាប់កាមេរ៉ានេះទេ។ ការចម្លងសំឡេងត្រូវការឱ្យការរកឃើញសំឡេងសកម្ម។" + }, + "detect": { + "fpsGreaterThanFive": "ការកំណត់ FPS រកឃើញខ្ពស់ជាង ៥ មិនត្រូវបានណែនាំទេ។ តម្លៃខ្ពស់ជាងនេះអាចបណ្តាលឱ្យមានបញ្ហាប្រសិទ្ធភាព ហើយនឹងមិនផ្តល់អត្ថប្រយោជន៍អ្វីឡើយ។", + "disabled": "ការរកឃើញវត្ថុត្រូវបានបិទ។ រូបថត ធាតុត្រួតពិនិត្យ និងការបំពេញបន្ថែម ដូចជាការសម្គាល់មុខ ការសម្គាល់ផ្លាកលេខ និង Generative AI នឹងមិនដំណើរការទេ។", + "resolutionShouldBeMultipleOfFour": "សម្រាប់លទ្ធផលល្អបំផុត ទទឹង និងកម្ពស់រកឃើញគួរតែជាពហុគុណនៃ ៤។ តម្លៃគូផ្សេងទៀតអាចបង្កើតជា artifacts ដែលមើលឃើញ ឬការបង្ខូចទ្រង់ទ្រាយបន្តិចបន្តួចនៅក្នុងស្ទ្រីមរកឃើញ។", + "aspectRatioMismatch": "ទទឹង និងកម្ពស់ដែលអ្នកបានបញ្ចូល មិនត្រូវនឹងសមាមាត្រនៃកម្រិតបង្ហាញរកឃើញបច្ចុប្បន្នរបស់អ្នកទេ។ វាអាចបង្កើតរូបភាពដែលត្រូវបានពន្លាត ឬបង្ខូចទ្រង់ទ្រាយ។", + "maxFramesSet": "ការកំណត់ frames អតិបរមា ផ្លាស់ប្តូរឥរិយាបថលំនាំដើម ហើយបិទការតាមដានវត្ថុដែលនៅស្ងៀម។ មានស្ថានភាពតិចតួចណាស់ដែលត្រូវការវា សូមប្រើដោយប្រុងប្រយ័ត្ន។", + "squareResolution": "កម្រិតបង្ហាញរកឃើញជាការ៉េ គឺមិនធម្មតាទេ។ ទទឹង និងកម្ពស់រកឃើញគួរតែត្រូវនឹងសមាមាត្ររបស់កាមេរ៉ាអ្នក (ឧទាហរណ៍ 16:9) មិនមែនវិមាត្រនៃម៉ូដែលរកឃើញវត្ថុទេ។ សមាមាត្រដែលមិនត្រូវគ្នាអាចពន្លាតរូបភាព និងកាត់បន្ថយភាពត្រឹមត្រូវនៃការរកឃើញ។", + "resolutionHigh": "កម្រិតបង្ហាញរកឃើញនេះខ្ពស់ជាងការណែនាំ ហើយអាចបណ្តាលឱ្យការប្រើប្រាស់ធនធានកើនឡើង ដោយមិនកែលម្អភាពត្រឹមត្រូវនៃការរកឃើញ។ កម្រិតបង្ហាញរកឃើញនៅ ឬក្រោម 1080p ត្រូវបានណែនាំសម្រាប់កាមេរ៉ាភាគច្រើន។", + "globalResolutionMultipleCameras": "កម្រិតបង្ហាញរកឃើញសកលត្រូវបានកំណត់ ខណៈដែលកាមេរ៉ាច្រើនត្រូវបានកំណត់។ លើកលែងតែកាមេរ៉ាទាំងអស់មានកម្រិតបង្ហាញ និងសមាមាត្រដូចគ្នា ទទឹង និងកម្ពស់រកឃើញគួរតែត្រូវបានកំណត់សម្រាប់កាមេរ៉ានីមួយៗ ដើម្បីឱ្យត្រូវនឹងសមាមាត្រដើមរបស់កាមេរ៉ានីមួយៗ។" + }, + "model": { + "optimizedFor320": "Frigate ត្រូវបានបង្កើនប្រសិទ្ធភាពសម្រាប់ម៉ូដែល 320x320 ដែលជាជម្រើសល្អបំផុតសម្រាប់ការរៀបចំភាគច្រើន។ ម៉ូដែល 640x640 យឺតជាង ហើយជួយបានតែក្នុងសេណារីយ៉ូជាក់លាក់ប៉ុណ្ណោះ។", + "inputDimensionsNotDetectResolution": "ទទឹង និងកម្ពស់បញ្ចូលម៉ូដែល គឺជាវិមាត្របញ្ចូលនៃម៉ូដែលរកឃើញវត្ថុ មិនមែនជាកម្រិតបង្ហាញរកឃើញរបស់កាមេរ៉ាអ្នកទេ។ ពួកវាគួរតែត្រូវនឹងវិមាត្រនៃម៉ូដែលដែលអ្នកកំពុងប្រើ — ជាធម្មតាជាទំហំការ៉េដូចជា 320x320 ឬ 640x640។" + } + } +} diff --git a/web/public/locales/km/views/system.json b/web/public/locales/km/views/system.json index 0967ef424b..0e34272fba 100644 --- a/web/public/locales/km/views/system.json +++ b/web/public/locales/km/views/system.json @@ -1 +1,5 @@ -{} +{ + "enrichments": { + "title": "ការបន្ថែមព័ត៌មាន" + } +}