Files
Podcast-Generator/web/public/locales/en/components.json
hex2077 f64cd498cf feat: 添加日语支持并优化国际化功能
refactor: 重构中间件和路由处理逻辑
fix: 修复音频示例API的错误处理
docs: 更新README和DOCKER_USAGE文档
style: 优化语言切换器样式
chore: 更新.gitignore添加生产环境配置文件
2025-08-25 19:17:16 +08:00

258 lines
9.7 KiB
JSON

{
"audioPlayer": {
"play": "Play",
"pause": "Pause",
"backward10s": "Backward 10s",
"forward10s": "Forward 10s",
"currentPlaybackRate": "Current playback rate",
"mute": "Mute",
"unmute": "Unmute",
"share": "Share",
"download": "Download",
"cannotGetAudioFileName": "Cannot get audio file name for sharing.",
"shareFailed": "Share failed: Cannot get audio file name.",
"playLinkCopied": "Play link copied to clipboard!"
},
"audioPlayerControls": {
"pause": "Pause",
"play": "Play"
},
"billingToggle": {
"monthly": "Monthly",
"annually": "Annually",
"save20Percent": "Save 20%"
},
"configSelector": {
"loading": "Loading...",
"selectTTSConfig": "Select TTS Config",
"noAvailableTTSConfig": "No available TTS config",
"pleaseConfigTTS": "Please configure TTS service in settings first"
},
"contentSection": {
"viewAll": "View All",
"noContent": "No content yet",
"refresh": "Refresh",
"recommendForYou": "Recommend for you"
},
"footerLinks": {
"termsOfUse": "Terms of Use",
"privacyPolicy": "Privacy Policy",
"contactUs": "Contact Us",
"copyright": "© 2025 Hex2077"
},
"languageSwitcher": {
"chinese": "中文",
"english": "English",
"japanese": "日本語"
},
"loginModal": {
"loginToYourAccount": "Login to Your Account",
"signInWithGoogle": "Sign in with Google",
"signInWithGitHub": "Sign in with GitHub"
},
"podcastCard": {
"podcastGenerationQueued": "Podcast generation queued...",
"podcastGenerating": "Podcast generating...",
"moreOperations": "More operations",
"mostPopular": "Most Popular"
},
"podcastContent": {
"speaker": "Speaker",
"cannotLoadPodcastDetails": "Cannot load podcast details:",
"unknownError": "Unknown error",
"returnToHomepage": "Return to Homepage",
"downloadAudio": "Download Audio",
"script": "Script",
"outline": "Outline",
"noOutlineContent": "No outline content."
},
"podcastCreator": {
"giveVoiceToCreativity": "Lend creativity an authentic voice",
"enterTextPlaceholder": "Enter text, Markdown format supported...",
"addCustomInstructions": "Add custom instructions (optional)... e.g. fixed opening and closing remarks, contextual text, key points of output content",
"ttsConfigSelection": "TTS Config Selection",
"speaker": "Speaker",
"languageSelection": "Language Selection",
"durationSelection": "Duration Selection",
"fileUpload": "Upload File",
"pasteContent": "Paste Content",
"copyContent": "Copy Content",
"credits": "Credits",
"checkIn": "Check In",
"create": "Create",
"biu": "Biu!",
"checkInSuccess": "Check-in successful",
"checkInFailed": "Check-in failed",
"networkError": "Network error or server no response",
"topicCannotBeEmpty": "Topic cannot be empty",
"pleaseEnterPodcastTopic": "Please enter podcast topic.",
"ttsConfigNotSelected": "TTS config not selected",
"pleaseSelectTTSConfig": "Please select a TTS config.",
"pleaseSelectSpeaker": "Please select a speaker",
"pleaseSelectAtLeastOneSpeaker": "Please select at least one podcast speaker.",
"podcastGenerationFailed": "Podcast generation failed:",
"maximum5Speakers": "You can select up to 5 speakers.",
"chinese": "Chinese",
"english": "English",
"japanese": "Japanese",
"under5Minutes": "Under 5 minutes",
"between5And10Minutes": "5-10 minutes",
"between10And15Minutes": "10-15 minutes"
},
"podcastTabs": {
"script": "Script",
"outline": "Outline",
"noOutlineContent": "No outline content."
},
"pointsOverview": {
"totalPoints": "Total Points",
"last20EntriesOnly": "Only the last 20 entries are displayed.",
"pointDetails": "Point Details",
"noPointDetails": "No point details yet."
},
"pricingCard": {
"perMonth": "/month",
"getStarted": "Get Started",
"upgradeToPro": "Upgrade to Pro",
"upgradeToBusiness": "Upgrade to Business",
"mostPopular": "Most Popular"
},
"pricingSection": {
"creator": "Creator",
"pro": "Pro",
"business": "Business",
"chooseYourPlan": "Choose your plan",
"forIndividualsOrTeams": "Whether you are an individual creator or a large team, we have a plan for you.",
"visitPricingPage": "Visit Pricing Page",
"monthlyCreatorFeatures": {
"points": "2,000 Points/month",
"aiVoiceSynthesis": "AI voice synthesis",
"twoSpeakers": "Up to 2 speakers",
"commercialLicense": "Commercial License",
"audioDownload": "Audio Download"
},
"monthlyProFeatures": {
"points": "5,000 Points/month",
"aiVoiceSynthesis": "AI voice synthesis",
"multiSpeakers": "Multi-speaker support",
"commercialLicense": "Commercial License",
"audioDownload": "Audio Download",
"advancedVoices": "Advanced Voices",
"storytellingMode": "Storytelling Mode"
},
"monthlyBusinessFeatures": {
"points": "12,000 Points/month",
"aiVoiceSynthesis": "AI voice synthesis",
"multiSpeakers": "Multi-speaker support",
"commercialLicense": "Commercial License",
"dedicatedAccountManager": "Dedicated Account Manager",
"audioDownload": "Audio Download",
"advancedVoices": "Advanced Voices",
"storytellingMode": "Storytelling Mode",
"apiAccess": "API Access"
},
"comingSoon": "(Coming Soon)"
},
"settingsForm": {
"settings": "Settings",
"apiSettingsDescription": "Configure API settings and TTS services for the podcast generator",
"generalSettings": "General Settings",
"inputYourOpenAIAPIKey": "Input your OpenAI API Key",
"model": "Model",
"selectOrEnterModelName": "Select or enter model name",
"customModelInput": "Enter custom model",
"optionalCustomBaseURL": "Optional: Custom API Base URL",
"ttsServiceSettings": "TTS Service Settings",
"webAPITTSServices": "Web API TTS Services",
"edgeTTS": "Edge TTS",
"edgeTTSDescription": "Free TTS service based on Microsoft Edge, providing high-quality speech synthesis.",
"doubaoTTS": "Doubao TTS",
"doubaoTTSDescription": "Speech synthesis service powered by ByteDance Volcano Engine, baseUrl=https://openspeech.bytedance.com/api/v3/tts/unidirectional",
"inputDoubaoAppID": "Input Doubao App ID",
"inputDoubaoAccessKey": "Input Doubao Access Key",
"minimaxTTS": "Minimax TTS",
"minimaxTTSDescription": "Speech synthesis service powered by Minimax, baseUrl=https://api.minimaxi.com/v1/t2a_v2",
"inputMinimaxGroupID": "Input Minimax Group ID",
"inputMinimaxAPIKey": "Input Minimax API Key",
"fishTTS": "Fish TTS",
"fishTTSDescription": "Speech synthesis service powered by FishAudio, baseUrl=https://api.fish.audio/v1/tts",
"inputFishTTSAPIKey": "Input Fish TTS API Key",
"geminiTTS": "Gemini TTS",
"geminiTTSDescription": "Speech synthesis service powered by Google Gemini, baseUrl=https://generativelanguage.googleapis.com/v1beta/models",
"inputGeminiAPIKey": "Input Gemini API Key",
"localAPITTSServices": "Local API TTS Services",
"indexTTS": "Index TTS",
"indexTTSDescription": "IndexTTS service for local deployment, providing custom speech synthesis capabilities.",
"reset": "Reset",
"saving": "Saving...",
"saveSettings": "Save Settings",
"settingsSavedSuccessfully": "Settings saved successfully!",
"errorSavingSettings": "Error saving settings, please try again",
"configurationNotes": "Configuration Notes",
"apiKeyRequired": "API Key is required to call OpenAI service to generate podcast script",
"ttsOptional": "TTS service configuration is optional, unconfigured services will not be displayed in voice selection",
"emptyFieldsNull": "Empty fields will be saved as null values",
"settingsApplyImmediately": "Settings will take effect immediately after saving, no application restart required",
"apiKey": "API Key",
"baseURL": "Base URL",
"appID": "App ID",
"accessKey": "Access Key",
"groupID": "Group ID"
},
"shareButton": {
"copySuccess": "Copy successful",
"pageLinkCopied": "Page link copied to clipboard!",
"copyFailed": "Copy failed",
"cannotCopyPageLink": "Cannot copy page link to clipboard."
},
"sidebar": {
"expandSidebar": "Expand Sidebar",
"collapseSidebar": "Collapse Sidebar",
"home": "Home",
"library": "Library",
"explore": "Explore",
"pricing": "Pricing",
"points": "Points",
"ttsSettings": "TTS Settings",
"github": "Github",
"twitter": "Twitter",
"tiktok": "TikTok",
"email": "Email",
"login": "Login",
"logout": "Logout",
"areYouSureToLogout": "Are you sure you want to log out?",
"cancel": "Cancel",
"confirmLogout": "Logout",
"sessionExpired": "Session expired, logging out",
"user": "User",
"clickAvatarToLogout": "Click avatar to logout",
"lessThanSMSizeCannotExpand": "Cannot expand on screens smaller than sm size",
"showMore": "Show more",
"generalSettings": "General Settings"
},
"toast": {
"title": "Notification",
"message": "This is a notification message."
},
"voicesModal": {
"selectSpeaker": "Select Speaker",
"all": "All",
"male": "Male",
"female": "Female",
"chinese": "Chinese (zh)",
"english": "English (en)",
"japanese": "Japanese (ja)",
"close": "Close",
"searchVoices": "Search voices...",
"noMatchingVoices": "No matching voices found.",
"language": "Language",
"unknown": "Unknown",
"host": "Host",
"confirmSelection": "Confirm Selection",
"max5Speakers": "You can select up to 5 speakers.",
"searchVoicesPlaceholder": "Search voices...",
"maxVoicesAlert": "You can select up to 5 speakers.",
"delete": "Delete",
"presenter": "Presenter"
}
}