449 lines
19 KiB
JSON
449 lines
19 KiB
JSON
{
|
|
"models": {
|
|
"user": {
|
|
"id": "ID",
|
|
"name": "Name"
|
|
},
|
|
"audio": {
|
|
"name": "name",
|
|
"namePlaceholder": "name your audio",
|
|
"type": "type",
|
|
"description": "description",
|
|
"descriptionPlaceholder": "describe your audio",
|
|
"format": "format",
|
|
"duration": "duration",
|
|
"size": "size",
|
|
"source": "source",
|
|
"createdAt": "created at",
|
|
"recordingsCount": "recordings count",
|
|
"recordingsDuration": "recordings duration",
|
|
"isTranscribed": "transcribed",
|
|
"added": "Successfully added audio",
|
|
"removed": "Successfully removed audio",
|
|
"notFound": "Audio not found",
|
|
"fileTooLarge": "File too large {{ file }}",
|
|
"failedToAdd": "Failed to add, {{ error }}",
|
|
"fileNotFound": "File not found {{file}}",
|
|
"fileNotSupported": "File not supported {{file}}",
|
|
"failedToCopyFile": "Failed to copy file {{file}}",
|
|
"failedToDownloadFile": "Failed to download file {{file}}",
|
|
"transcriptionFinished": "Transcription finished"
|
|
},
|
|
"video": {
|
|
"name": "name",
|
|
"namePlaceholder": "name your video",
|
|
"type": "type",
|
|
"description": "description",
|
|
"descriptionPlaceholder": "describe your video",
|
|
"format": "format",
|
|
"duration": "duration",
|
|
"size": "size",
|
|
"source": "source",
|
|
"createdAt": "created at",
|
|
"recordingsCount": "recordings count",
|
|
"recordingsDuration": "recordings duration",
|
|
"isTranscribed": "transcribed",
|
|
"added": "Successfully added video",
|
|
"removed": "Successfully removed video",
|
|
"notFound": "Video not found",
|
|
"fileTooLarge": "File too large {{ file }}",
|
|
"failedToAdd": "Failed to add, {{ error }}",
|
|
"fileNotFound": "File not found {{file}}",
|
|
"fileNotSupported": "File not supported {{file}}",
|
|
"failedToCopyFile": "Failed to copy file {{file}}",
|
|
"failedToDownloadFile": "Failed to download file {{file}}",
|
|
"transcriptionFinished": "Transcription finished"
|
|
},
|
|
"recording": {
|
|
"segmentIndex": "Segment Index",
|
|
"segmentText": "Segment Text",
|
|
"duration": "Duration",
|
|
"durationTooShort": "Duration too short",
|
|
"failedToSave": "Failed to save recording",
|
|
"notFound": "Recording not found"
|
|
},
|
|
"conversation": {
|
|
"name": "Name",
|
|
"engine": "AI engine",
|
|
"baseUrl": "Request endpoint",
|
|
"baseUrlDescription": "BaseURL, leave it blank if you don't have one",
|
|
"configuration": "Configuration",
|
|
"model": "AI model",
|
|
"roleDefinition": "Role definition",
|
|
"roleDefinitionPlaceholder": "Describe the AI role",
|
|
"temperature": "Temperature",
|
|
"temperatureDescription": "The higher the temperature, the more creative the result",
|
|
"maxTokens": "Max tokens",
|
|
"maxTokensDescription": "The maximum number of tokens to generate",
|
|
"presencePenalty": "Presence penalty",
|
|
"presencePenaltyDescription": "Positive values penalize new tokens based on whether they appear in the text so far, increasing the model's likelihood to talk about new topics.",
|
|
"frequencyPenalty": "Frequency penalty",
|
|
"frequencyPenaltyDescription": " Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim.",
|
|
"historyBufferSize": "History buffer size",
|
|
"historyBufferSizeDescription": "The number of message history to include in the context",
|
|
"numberOfChoices": "Number of choices",
|
|
"numberOfChoicesDescription": "The number of results to generate",
|
|
"ttsEngine": "TTS engine",
|
|
"ttsModel": "TTS model",
|
|
"ttsVoice": "TTS voice",
|
|
"ttsBaseUrl": "TTS base URL",
|
|
"ttsBaseUrlDescription": "BaseURL for TTS, leave it blank if you don't have one",
|
|
"notFound": "Conversation not found",
|
|
"contentRequired": "Content required",
|
|
"failedToGenerateResponse": "Failed to generate response, please retry"
|
|
},
|
|
"pronunciationAssessment": {
|
|
"pronunciationScore": "Pronunciation Score",
|
|
"fluencyScore": "Fluency Score",
|
|
"completenessScore": "Completeness Score",
|
|
"accuracyScore": "Accuracy Score",
|
|
"prosodyScore": "Prosody Score",
|
|
"grammarScore": "Grammar Score",
|
|
"vocabularyScore": "Vocabulary Score",
|
|
"topicScore": "Topic Score",
|
|
"errors": {
|
|
"omission": "Omission",
|
|
"insertion": "Insertion",
|
|
"misspronunciation": "Misspronunciation",
|
|
"unexpectedBreak": "Unexpected Break",
|
|
"missingBreak": "Missing Break",
|
|
"monotone": "Monotone"
|
|
},
|
|
"explainations": {
|
|
"pronunciationScore": "Pronunciation score is the overall score of the pronunciation, fluency, completeness, and accuracy of the speech. The score is calculated by the weighted average of the four scores.",
|
|
"accuracyScore": "Accuracy score is the accuracy of the speech. The accuracy indicates how close the speech is to the reference text.",
|
|
"fluencyScore": "Fluency score is the fluency of the speech. The fluency indicates how smooth the speech is.",
|
|
"completenessScore": "Completeness score is the completeness of the speech. The completeness indicates how complete the speech is.",
|
|
"prosodyScore": "Prosody score is the prosody of the speech. The prosody indicates how natural the speech is.",
|
|
"omission": "Omission is the words that are in the reference text but not in the speech.",
|
|
"insertion": "Insertion is the words that are in the speech but not in the reference text.",
|
|
"misspronunciation": "The pronunciation of the word is not correct.",
|
|
"unexpectedBreak": "There is a break between two words when there is no punctuation between them.",
|
|
"missingBreak": "There is no break between two words when there is a punctuation between them.",
|
|
"monotone": "The word is monotone."
|
|
}
|
|
}
|
|
},
|
|
"sidebar": {
|
|
"home": "Home",
|
|
"community": "Community",
|
|
"audios": "Audios",
|
|
"videos": "Videos",
|
|
"stories": "Stories",
|
|
"books": "Books",
|
|
"vocabulary": "Vocabulary",
|
|
"library": "Library",
|
|
"practice": "Practice",
|
|
"reading": "Reading",
|
|
"aiAssistant": "AI Assistant",
|
|
"aiCoaches": "AI Coaches",
|
|
"translator": "Translator",
|
|
"mine": "Mine",
|
|
"preferences": "Preferences",
|
|
"profile": "My Profile"
|
|
},
|
|
"form": {
|
|
"lengthMustBeAtLeast": "{{field}} must be at least {{length}} characters",
|
|
"lengthMustBeLessThan": "{{field}} must be less than {{length}} characters"
|
|
},
|
|
"today": "today",
|
|
"yesterday": "yesterday",
|
|
"play": "play",
|
|
"pause": "pause",
|
|
"playSingleSegment": "play single segment",
|
|
"playAllSegments": "play all segments",
|
|
"playInLoop": "play in loop",
|
|
"playNextSegment": "play next segment",
|
|
"playPreviousSegment": "play previous segment",
|
|
"playbackSpeed": "playback speed",
|
|
"zoomIn": "zoom in",
|
|
"zoomOut": "zoom out",
|
|
"zoomToFit": "zoom to fit",
|
|
"autoCenter": "auto center",
|
|
"inlineCaption": "inline caption",
|
|
"autoScroll": "auto scroll",
|
|
"translate": "translate",
|
|
"displayIpa": "display IPA",
|
|
"detail": "detail",
|
|
"remove": "remove",
|
|
"share": "share",
|
|
"forward": "forward",
|
|
"loadMore": "Load more",
|
|
"databaseError": "Failed to connect to database {{url}}",
|
|
"somethingWentWrong": "Something went wrong",
|
|
"actions": "actions",
|
|
"info": "Info",
|
|
"success": "Success",
|
|
"warning": "Warning",
|
|
"error": "Error",
|
|
"errors": "Errors",
|
|
"cancel": "Cancel",
|
|
"cancelled": "Cancelled",
|
|
"canceling": "Canceling",
|
|
"confirm": "Confirm",
|
|
"continue": "continue",
|
|
"save": "Save",
|
|
"delete": "Delete",
|
|
"edit": "Edit",
|
|
"retry": "Retry",
|
|
"failedToLogin": "Failed to login",
|
|
"sendCode": "Send code",
|
|
"codeSent": "Code sent, please check your SMS",
|
|
"verificationCode": "Verification code",
|
|
"transcribe": "Transcribe",
|
|
"stillTranscribing": "AI is still working on the transcription. Please wait for a while.",
|
|
"unableToSetLibraryPath": "Unable to set library path to {{path}}",
|
|
"nthStep": "{{current}}/{{totalSteps}} Step",
|
|
"open": "Open",
|
|
"select": "Select",
|
|
"libraryPath": "Library Path",
|
|
"login": "Login",
|
|
"loginBeforeYouStart": "Login before you start",
|
|
"loginSuccess": "Login Success",
|
|
"whereYourResourcesAreStored": "Where your resources are stored",
|
|
"AIModel": "AI Model",
|
|
"chooseAIModelToDownload": "Choose AI Model to download",
|
|
"ffmpegCheck": "FFmpeg Check",
|
|
"check": "Check",
|
|
"ffmpegCommandIsWorking": "FFmpeg command is working",
|
|
"ffmpegCommandIsNotWorking": "FFmpeg command is not working",
|
|
"scan": "Scan",
|
|
"checkIfFfmpegIsInstalled": "Check if FFmpeg is installed",
|
|
"ffmpegFoundAt": "FFmpeg found at {{path}}",
|
|
"ffmpegNotFound": "FFmpeg not found",
|
|
"ffmpegInstallSteps": "FFmpeg Install Steps",
|
|
"Install": "Install",
|
|
"runTheFollowingCommandInTerminal": "Run the following command in terminal",
|
|
"click": "Click",
|
|
"willAutomaticallyFindFFmpeg": "Enjoy will automatically find FFmpeg",
|
|
"tryingToFindValidFFmepgInTheseDirectories": "Trying to find valid FFmpeg in these directories: {{dirs}}",
|
|
"invalidFfmpegPath": "Invalid FFmpeg path",
|
|
"usingInstalledFFmpeg": "Using installed FFmpeg",
|
|
"usingDownloadedFFmpeg": "Using downloaded FFmpeg",
|
|
"downloadFfmpeg": "Download FFmpeg",
|
|
"youAreReadyToGo": "You are ready to go",
|
|
"welcomeBack": "Welcome back! {{name}}",
|
|
"download": "Download",
|
|
"downloading": "Downloading {{file}}",
|
|
"chooseAIModelDependingOnYourHardware": "Choose AI Model depending on your hardware.",
|
|
"areYouSureToDownload": "Are you sure to download {{name}}?",
|
|
"yourModelsWillBeDownloadedTo": "Your models will be downloaded to {{path}}",
|
|
"logout": "Logout",
|
|
"logoutConfirmation": "Are you sure you want to logout?",
|
|
"reset": "Reset",
|
|
"resetAll": "Reset All",
|
|
"resetAllConfirmation": "It will remove all of your personal data, are you sure?",
|
|
"resetSettings": "Reset Settings",
|
|
"resetSettingsConfirmation": "It will reset all of your settings, are you sure? The library will not be affected.",
|
|
"proxySettings": "Proxy Settings",
|
|
"proxyConfigUpdated": "Proxy config updated",
|
|
"logoutAndRemoveAllPersonalData": "Logout and remove all personal data",
|
|
"logoutAndRemoveAllPersonalSettings": "Logout and remove all personal settings",
|
|
"hotkeys": "Hotkeys",
|
|
"quitApp": "Quit APP",
|
|
"openPreferences": "Open preferences",
|
|
"playOrPause": "Play or pause",
|
|
"about": "About",
|
|
"currentVersion": "Current version",
|
|
"checkUpdate": "Check update",
|
|
"alreadyLatestVersion": "Already latest version",
|
|
"initializingApp": "Initializing APP",
|
|
"welcomeTo": "Welcome to",
|
|
"startToUse": "Start",
|
|
"goBack": "Go back",
|
|
"nextStep": "Next",
|
|
"previousStep": "Previous",
|
|
"finish": "Finish",
|
|
"notReadyYet": "Not ready yet",
|
|
"commingSoon": "Comming soon",
|
|
"pageNotFound": "Page not found",
|
|
"audio": "audio",
|
|
"video": "video",
|
|
"text": "text",
|
|
"addResource": "add resource",
|
|
"addResourceFromUrlOrLocal": "add resource from url or local",
|
|
"editResource": "edit resource",
|
|
"deleteResource": "delete resource",
|
|
"deleteResourceConfirmation": "Are you sure to delete {{name}}?",
|
|
"transcribeAudioConfirmation": "It will remove the old transcription. Are you sure to transcribe {{name}}",
|
|
"transcribeVideoConfirmation": "It will remove the old transcription. Are you sure to transcribe {{name}}",
|
|
"localFile": "local file",
|
|
"resourcesYouAddedRecently": "resources you added recently",
|
|
"recentlyAdded": "recently added",
|
|
"recommended": "recommended",
|
|
"resourcesRecommendedByEnjoy": "resources recommended by Enjoy Bot",
|
|
"fromCommunity": "from community",
|
|
"videoResources": "video resources",
|
|
"audioResources": "audio resources",
|
|
"seeMore": "see more",
|
|
"resourcesFromTheCommunity": "resources from the community",
|
|
"noResourcesFound": "no resources found",
|
|
"allResources": "all resources",
|
|
"playbackRate": "playback rate",
|
|
"transcription": "transcription",
|
|
"transcript": "transcript",
|
|
"regenerate": "regenerate",
|
|
"holdAndSpeak": "Hold and speak",
|
|
"releaseToStop": "Release to stop",
|
|
"deleteRecording": "delete recording",
|
|
"deleteRecordingConfirmation": "Are you sure to delete this recording?",
|
|
"myRecordings": "my recordings",
|
|
"lastYear": "last year",
|
|
"less": "less",
|
|
"more": "more",
|
|
"total": "total",
|
|
"totalRecordingsIn": "{{total}} recordings in {{duration}}",
|
|
"totalRecordings": "{{total}} recordings",
|
|
"totalDuration": "duration {{duration}}",
|
|
"recordingActivity": "recording activity",
|
|
"recordingDetail": "Recording detail",
|
|
"noRecordingActivities": "no recording activities",
|
|
"basicSettingsShort": "Basic",
|
|
"basicSettings": "Basic settings",
|
|
"accountSettingsShort": "Account",
|
|
"accountSettings": "Account settings",
|
|
"advancedSettingsShort": "Advanced",
|
|
"advancedSettings": "Advanced settings",
|
|
"advanced": "Advanced",
|
|
"language": "Language",
|
|
"balance": "Balance",
|
|
"deposit": "Deposit",
|
|
"notAvailableYet": "Not available yet",
|
|
"whisperModel": "Whisper Model",
|
|
"sttAiService": "STT AI service",
|
|
"local": "Local",
|
|
"localSpeechToTextDescription": "Use local whisper model to transcribe. It is free.",
|
|
"azureAi": "Azure AI",
|
|
"azureSpeechToTextDescription": "Use Azure AI Speech to transcribe. It is a paid service.",
|
|
"cloudflareAi": "Cloudflare AI",
|
|
"cloudflareSpeechToTextDescription": "Use Cloudflare AI Worker to transcribe. It is in beta and free for now.",
|
|
"checkingWhisper": "Checking whisper status",
|
|
"pleaseDownloadWhisperModelFirst": "Please download whisper model first",
|
|
"whisperIsWorkingGood": "Whisper is working good",
|
|
"whisperIsNotWorking": "Whisper is not working",
|
|
"checkingWhisperModel": "Checking whisper model",
|
|
"whisperModelIsWorkingGood": "Whisper model is working good",
|
|
"whisperModelIsNotWorking": "Whisper model is not working",
|
|
"relaunchIsNeededAfterChanged": "Relaunch is needed after changed",
|
|
"defaultAiEngine": "Default AI engine",
|
|
"openAiEngineTips": "Use OpenAI with your own key as default AI engine.",
|
|
"enjoyAiEngineTips": "Use EnjoyAI as default AI engine. It is a paid service.",
|
|
"openaiKeySaved": "OpenAI key saved",
|
|
"openaiConfigSaved": "OpenAI config saved",
|
|
"openaiKeyRequired": "OpenAI key required",
|
|
"baseUrl": "baseURL",
|
|
"model": "model",
|
|
"key": "key",
|
|
"leaveEmptyToUseDefault": "Leave empty to use default",
|
|
"newConversation": "New conversation",
|
|
"selectAiRole": "Select AI role",
|
|
"custom": "Custom",
|
|
"startConversation": "Start conversation",
|
|
"editConversation": "Edit conversation",
|
|
"deleteConversation": "Delete conversation",
|
|
"deleteConversationConfirmation": "Are you sure to delete this conversation inclcuding all messages?",
|
|
"noConversationsYet": "No conversations yet",
|
|
"translation": "Translation",
|
|
"pressEnterToSend": "Press enter to send",
|
|
"send": "Send",
|
|
"sending": "Sending",
|
|
"sent": "Sent",
|
|
"copy": "Copy",
|
|
"copyText": "Copy text",
|
|
"resend": "Resend",
|
|
"anotherRequestIsPending": "Another request is pending",
|
|
"selectScenario": "Select scenario",
|
|
"selectAiEngine": "Select AI engine",
|
|
"selectAiModel": "Select AI model",
|
|
"youNeedToSetupApiKeyBeforeUsingOpenAI": "You need to setup API key before using OpenAI",
|
|
"ensureYouHaveOllamaRunningLocallyAndHasAtLeastOneModel": "Ensure you have Ollama running locally and has at least one model",
|
|
"creatingSpeech": "Speech is creating",
|
|
"textToSpeech": "Convert text to speech",
|
|
"shadowing": "Shadowing",
|
|
"shadowingAudio": "Shadowing audio",
|
|
"shadowingVideo": "Shadowing video",
|
|
"shadowingExercise": "Shadowing exercise",
|
|
"addingResource": "Adding resource",
|
|
"pronunciationAssessment": "Pronunciation assessment",
|
|
"score": "score",
|
|
"inputUrlToStartReading": "Input url to start reading",
|
|
"read": "read",
|
|
"addStory": "add story",
|
|
"context": "context",
|
|
"keyVocabulary": "key vocabulary",
|
|
"addedStories": "added stories",
|
|
"addedAudios": "added audios",
|
|
"addedVideos": "added videos",
|
|
"frontSide": "front side",
|
|
"backSide": "back side",
|
|
"aiExtractVocabulary": "AI extract vocabulary",
|
|
"toggleReadable": "Toggle readable",
|
|
"extracting": "Extracting",
|
|
"extractionFailed": "Extraction failed",
|
|
"extractedSuccessfully": "Extracted successfully",
|
|
"lookUp": "Look up",
|
|
"lookUpAll": "Look up all",
|
|
"lookingUp": "Looking up",
|
|
"pending": "Pending",
|
|
"thereAreLookupsProcessing": "There are {{count}} lookups processing",
|
|
"thereAreLookupsPending": "There are {{count}} lookups waiting",
|
|
"lookupFailed": "Lookup failed",
|
|
"lookedUpSuccessfully": "Looked up successfully",
|
|
"noRecordsFound": "No records found",
|
|
"pleaseTryLater": "Please try later",
|
|
"author": "author",
|
|
"narrator": "narrator",
|
|
"downloadSample": "Download sample",
|
|
"buy": "Buy",
|
|
"from": "from",
|
|
"presenter": "presenter",
|
|
"downloadAudio": "Download audio",
|
|
"downloadVideo": "Download video",
|
|
"recordTooShort": "Record too short",
|
|
"rankings": "Rankings",
|
|
"dayRankings": "Day rankings",
|
|
"weekRankings": "Week rankings",
|
|
"monthRankings": "Month rankings",
|
|
"allRankings": "All time rankings",
|
|
"noOneHasRecordedYet": "No one has recorded yet",
|
|
"activities": "Activities",
|
|
"square": "Square",
|
|
"noOneSharedYet": "No one shared yet",
|
|
"sharedSuccessfully": "Shared successfully",
|
|
"shareFailed": "Share failed",
|
|
"shareAudio": "Share audio",
|
|
"sharedAudio": "Shared an audio resource",
|
|
"areYouSureToShareThisAudioToCommunity": "Are you sure to share this audio to community?",
|
|
"shareVideo": "Share video",
|
|
"sharedVideo": "Shared a video resource",
|
|
"cannotShareLocalVideo": "Cannot share local video",
|
|
"areYouSureToShareThisVideoToCommunity": "Are you sure to share this video to community?",
|
|
"sharePrompt": "Share prompt",
|
|
"sharedPrompt": "Shared a prompt",
|
|
"areYouSureToShareThisPromptToCommunity": "Are you sure to share this prompt to community?",
|
|
"shareRecording": "Share recording",
|
|
"sharedRecording": "Shared a recording",
|
|
"areYouSureToShareThisRecordingToCommunity": "Are you sure to share this recording to community?",
|
|
"shareStory": "Share story",
|
|
"sharedStory": "Shared a story",
|
|
"areYouSureToShareThisStoryToCommunity": "Are you sure to share this story to community?",
|
|
"addToLibary": "Add to library",
|
|
"areYouSureToAddThisVideoToYourLibrary": "Are you sure to add this video to library?",
|
|
"areYouSureToAddThisAudioToYourLibrary": "Are you sure to add this audio to library?",
|
|
"audioAlreadyAddedToLibrary": "Audio already added to library",
|
|
"videoAlreadyAddedToLibrary": "Video already added to library",
|
|
"audioSuccessfullyAddedToLibrary": "Audio successfully added to library",
|
|
"videoSuccessfullyAddedToLibrary": "Video successfully added to library",
|
|
"sendToAIAssistant": "Send to AI assistant",
|
|
"removeSharing": "Remove sharing",
|
|
"areYouSureToRemoveThisSharing": "Are you sure to remove this sharing?",
|
|
"removeSharingSuccessfully": "Remove sharing successfully",
|
|
"removeSharingFailed": "Remove sharing failed",
|
|
"generatingIpa": "Generating IPA",
|
|
"generatedIpaSuccessfully": "Generated IPA successfully",
|
|
"generatingIpaFailed": "Generating IPA failed",
|
|
"translating": "Translating",
|
|
"translatedSuccessfully": "Translated successfully",
|
|
"translationFailed": "Translation failed"
|
|
}
|