JakgritB commited on
Commit ·
caa2f69
1
Parent(s): 461d333
fix(frontend): complete locale dictionaries
Browse filesFill Thai, Japanese, Chinese, and Korean UI translations for all frontend labels and localize primary-language option labels to avoid mixed-language screens.
- frontend/src/App.jsx +257 -4
frontend/src/App.jsx
CHANGED
|
@@ -161,6 +161,12 @@ const en = {
|
|
| 161 |
platform_tiktok: "TikTok",
|
| 162 |
platform_youtube_shorts: "YouTube Shorts",
|
| 163 |
platform_instagram_reels: "Instagram Reels",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 164 |
};
|
| 165 |
|
| 166 |
const translations = {
|
|
@@ -194,7 +200,10 @@ const translations = {
|
|
| 194 |
clipCountHelp: "จำนวนคลิปที่อยากให้ AI สร้างจากวิดีโอนี้",
|
| 195 |
primaryLanguage: "ภาษาหลัก",
|
| 196 |
platform: "แพลตฟอร์ม",
|
|
|
|
|
|
|
| 197 |
youtubeUrl: "ลิงก์ YouTube",
|
|
|
|
| 198 |
videoFile: "ไฟล์วิดีโอ",
|
| 199 |
pipeline: "ขั้นตอนประมวลผล",
|
| 200 |
ready: "พร้อม",
|
|
@@ -239,6 +248,7 @@ const translations = {
|
|
| 239 |
stepVisual: "ตรวจภาพ",
|
| 240 |
stepRender: "เรนเดอร์",
|
| 241 |
stepFinal: "สรุปผล",
|
|
|
|
| 242 |
appCta: "สร้างคลิป",
|
| 243 |
niche_education: "การศึกษา",
|
| 244 |
niche_gaming: "เกม",
|
|
@@ -257,95 +267,335 @@ const translations = {
|
|
| 257 |
style_dramatic: "ดราม่า",
|
| 258 |
style_educational: "สอน/ให้ความรู้",
|
| 259 |
style_commentary: "วิเคราะห์",
|
|
|
|
| 260 |
platform_youtube_shorts: "YouTube Shorts",
|
| 261 |
platform_instagram_reels: "Instagram Reels",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 262 |
},
|
| 263 |
ja: {
|
| 264 |
...en,
|
| 265 |
appSubtitle: "AMD ROCm デモ向けクリエイター用クリップ制作ワークスペース",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 266 |
channelProfile: "チャンネル設定",
|
|
|
|
| 267 |
videoInput: "動画入力",
|
| 268 |
niche: "ジャンル",
|
|
|
|
| 269 |
customNiche: "カスタムジャンル",
|
|
|
|
| 270 |
channelDescription: "チャンネル説明",
|
|
|
|
|
|
|
|
|
|
| 271 |
clipStyle: "クリップスタイル",
|
| 272 |
clipLength: "クリップ長(秒)",
|
| 273 |
clipCount: "クリップ数",
|
|
|
|
| 274 |
primaryLanguage: "主な言語",
|
| 275 |
platform: "プラットフォーム",
|
| 276 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 277 |
pipeline: "パイプライン",
|
|
|
|
|
|
|
|
|
|
|
|
|
| 278 |
transcript: "文字起こし",
|
|
|
|
| 279 |
clips: "クリップ",
|
| 280 |
noClips: "まだクリップがありません",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 281 |
openEditor: "エディターを開く",
|
| 282 |
editor: "クリップエディター",
|
|
|
|
|
|
|
|
|
|
| 283 |
subtitles: "字幕",
|
| 284 |
subtitleCues: "字幕キュー",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 285 |
approve: "承認",
|
| 286 |
approved: "承認済み",
|
| 287 |
regenerate: "再生成",
|
| 288 |
delete: "削除",
|
| 289 |
download: "ダウンロード",
|
| 290 |
backToDashboard: "ダッシュボードへ戻る",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 291 |
},
|
| 292 |
zh: {
|
| 293 |
...en,
|
| 294 |
appSubtitle: "面向 AMD ROCm 演示的创作者剪辑工作台",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 295 |
channelProfile: "频道资料",
|
|
|
|
| 296 |
videoInput: "视频输入",
|
| 297 |
niche: "频道领域",
|
|
|
|
| 298 |
customNiche: "自定义领域",
|
|
|
|
| 299 |
channelDescription: "频道描述",
|
|
|
|
|
|
|
| 300 |
clipStyle: "剪辑风格",
|
| 301 |
clipLength: "剪辑长度(秒)",
|
| 302 |
clipCount: "剪辑数量",
|
|
|
|
| 303 |
primaryLanguage: "主要语言",
|
| 304 |
platform: "平台",
|
| 305 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 306 |
pipeline: "处理流程",
|
|
|
|
|
|
|
|
|
|
|
|
|
| 307 |
transcript: "转录文本",
|
|
|
|
| 308 |
clips: "剪辑",
|
| 309 |
noClips: "还没有剪辑",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 310 |
openEditor: "打开编辑器",
|
| 311 |
editor: "剪辑编辑器",
|
|
|
|
|
|
|
|
|
|
| 312 |
subtitles: "字幕",
|
| 313 |
subtitleCues: "字幕片段",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 314 |
approve: "批准",
|
| 315 |
approved: "已批准",
|
| 316 |
regenerate: "重新生成",
|
| 317 |
delete: "删除",
|
| 318 |
download: "下载",
|
| 319 |
backToDashboard: "返回仪表盘",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 320 |
},
|
| 321 |
ko: {
|
| 322 |
...en,
|
| 323 |
appSubtitle: "AMD ROCm 데모를 위한 크리에이터 클립 작업 공간",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 324 |
channelProfile: "채널 프로필",
|
|
|
|
| 325 |
videoInput: "비디오 입력",
|
| 326 |
niche: "채널 분야",
|
|
|
|
| 327 |
customNiche: "사용자 분야",
|
|
|
|
| 328 |
channelDescription: "채널 설명",
|
|
|
|
|
|
|
|
|
|
| 329 |
clipStyle: "클립 스타일",
|
| 330 |
clipLength: "클립 길이(초)",
|
| 331 |
clipCount: "클립 개수",
|
|
|
|
| 332 |
primaryLanguage: "기본 언어",
|
| 333 |
platform: "플랫폼",
|
| 334 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 335 |
pipeline: "파이프라인",
|
|
|
|
|
|
|
|
|
|
|
|
|
| 336 |
transcript: "전사",
|
|
|
|
| 337 |
clips: "클립",
|
| 338 |
noClips: "아직 클립이 없습니다",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 339 |
openEditor: "편집기 열기",
|
| 340 |
editor: "클립 편집기",
|
|
|
|
|
|
|
|
|
|
| 341 |
subtitles: "자막",
|
| 342 |
subtitleCues: "자막 큐",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 343 |
approve: "승인",
|
| 344 |
approved: "승인됨",
|
| 345 |
regenerate: "다시 생성",
|
| 346 |
delete: "삭제",
|
| 347 |
download: "다운로드",
|
| 348 |
backToDashboard: "대시보드로 돌아가기",
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 349 |
},
|
| 350 |
};
|
| 351 |
|
|
@@ -653,7 +903,10 @@ function ProfileForm({
|
|
| 653 |
label={t("primaryLanguage")}
|
| 654 |
value={profile.primary_language}
|
| 655 |
onChange={setProfileValue("primary_language")}
|
| 656 |
-
options={LANGUAGE_OPTIONS.map((value) => ({
|
|
|
|
|
|
|
|
|
|
| 657 |
/>
|
| 658 |
<SelectField
|
| 659 |
label={t("platform")}
|
|
|
|
| 161 |
platform_tiktok: "TikTok",
|
| 162 |
platform_youtube_shorts: "YouTube Shorts",
|
| 163 |
platform_instagram_reels: "Instagram Reels",
|
| 164 |
+
languageOption_Thai: "Thai",
|
| 165 |
+
languageOption_English: "English",
|
| 166 |
+
languageOption_Japanese: "Japanese",
|
| 167 |
+
languageOption_Chinese: "Chinese",
|
| 168 |
+
languageOption_Korean: "Korean",
|
| 169 |
+
languageOption_Auto: "Auto",
|
| 170 |
};
|
| 171 |
|
| 172 |
const translations = {
|
|
|
|
| 200 |
clipCountHelp: "จำนวนคลิปที่อยากให้ AI สร้างจากวิดีโอนี้",
|
| 201 |
primaryLanguage: "ภาษาหลัก",
|
| 202 |
platform: "แพลตฟอร์ม",
|
| 203 |
+
youtube: "YouTube",
|
| 204 |
+
upload: "อัปโหลด",
|
| 205 |
youtubeUrl: "ลิงก์ YouTube",
|
| 206 |
+
youtubePlaceholder: "https://www.youtube.com/watch?v=...",
|
| 207 |
videoFile: "ไฟล์วิดีโอ",
|
| 208 |
pipeline: "ขั้นตอนประมวลผล",
|
| 209 |
ready: "พร้อม",
|
|
|
|
| 248 |
stepVisual: "ตรวจภาพ",
|
| 249 |
stepRender: "เรนเดอร์",
|
| 250 |
stepFinal: "สรุปผล",
|
| 251 |
+
renderProgress: "กำลังเรนเดอร์คลิป {{current}}/{{total}}",
|
| 252 |
appCta: "สร้างคลิป",
|
| 253 |
niche_education: "การศึกษา",
|
| 254 |
niche_gaming: "เกม",
|
|
|
|
| 267 |
style_dramatic: "ดราม่า",
|
| 268 |
style_educational: "สอน/ให้ความรู้",
|
| 269 |
style_commentary: "วิเคราะห์",
|
| 270 |
+
platform_tiktok: "TikTok",
|
| 271 |
platform_youtube_shorts: "YouTube Shorts",
|
| 272 |
platform_instagram_reels: "Instagram Reels",
|
| 273 |
+
languageOption_Thai: "ไทย",
|
| 274 |
+
languageOption_English: "อังกฤษ",
|
| 275 |
+
languageOption_Japanese: "ญี่ปุ่น",
|
| 276 |
+
languageOption_Chinese: "จีน",
|
| 277 |
+
languageOption_Korean: "เกาหลี",
|
| 278 |
+
languageOption_Auto: "อัตโนมัติ",
|
| 279 |
},
|
| 280 |
ja: {
|
| 281 |
...en,
|
| 282 |
appSubtitle: "AMD ROCm デモ向けクリエイター用クリップ制作ワークスペース",
|
| 283 |
+
idle: "待機中",
|
| 284 |
+
queued: "キュー待ち",
|
| 285 |
+
running: "実行中",
|
| 286 |
+
completed: "完了",
|
| 287 |
+
failed: "失敗",
|
| 288 |
+
demoMode: "デモモード",
|
| 289 |
+
productionMode: "本番モード",
|
| 290 |
+
theme: "テーマ",
|
| 291 |
+
language: "言語",
|
| 292 |
+
startPipeline: "処理を開始",
|
| 293 |
channelProfile: "チャンネル設定",
|
| 294 |
+
channelProfileText: "ハイライトを選ぶ前に、AIへチャンネルの方向性を伝えます。",
|
| 295 |
videoInput: "動画入力",
|
| 296 |
niche: "ジャンル",
|
| 297 |
+
nicheHelp: "近いカテゴリを選んでください。具体的なジャンルなら「その他」を選びます。",
|
| 298 |
customNiche: "カスタムジャンル",
|
| 299 |
+
customNichePlaceholder: "例: 初心者向けタイ語AI講座",
|
| 300 |
channelDescription: "チャンネル説明",
|
| 301 |
+
channelDescriptionHelp: "自然な言葉で書いてください。AIがブランドらしさの判断に使います。",
|
| 302 |
+
channelDescriptionPlaceholder:
|
| 303 |
+
"例: AIツールをタイ語で、簡単な例と少しのユーモアを交えて説明します。",
|
| 304 |
clipStyle: "クリップスタイル",
|
| 305 |
clipLength: "クリップ長(秒)",
|
| 306 |
clipCount: "クリップ数",
|
| 307 |
+
clipCountHelp: "この動画からAIに生成させる候補クリップの数です。",
|
| 308 |
primaryLanguage: "主な言語",
|
| 309 |
platform: "プラットフォーム",
|
| 310 |
+
youtube: "YouTube",
|
| 311 |
+
upload: "アップロード",
|
| 312 |
+
youtubeUrl: "YouTube URL",
|
| 313 |
+
youtubePlaceholder: "https://www.youtube.com/watch?v=...",
|
| 314 |
+
videoFile: "動画ファイル",
|
| 315 |
pipeline: "パイプライン",
|
| 316 |
+
ready: "準備完了",
|
| 317 |
+
progressNote: "進捗はバックエンドの各工程で更新され、レンダリング中はクリップ単位で表示されます。",
|
| 318 |
+
currentStep: "現在の工程",
|
| 319 |
+
timing: "処理時間",
|
| 320 |
transcript: "文字起こし",
|
| 321 |
+
transcriptEmpty: "文字起こしが完了するとここに表示されます。",
|
| 322 |
clips: "クリップ",
|
| 323 |
noClips: "まだクリップがありません",
|
| 324 |
+
noClipsText: "パイプラインを開始すると、プロフィールに合わせた候補クリップが生成されます。",
|
| 325 |
+
readyClips: "件準備完了",
|
| 326 |
+
score: "スコア",
|
| 327 |
+
reason: "理由",
|
| 328 |
+
duration: "長さ",
|
| 329 |
+
start: "開始",
|
| 330 |
+
end: "終了",
|
| 331 |
openEditor: "エディターを開く",
|
| 332 |
editor: "クリップエディター",
|
| 333 |
+
editorText: "このクリップのタイミング、字幕、最終承認を調整します。",
|
| 334 |
+
preview: "プレビュー",
|
| 335 |
+
clipRange: "クリップ範囲",
|
| 336 |
subtitles: "字幕",
|
| 337 |
subtitleCues: "字幕キュー",
|
| 338 |
+
subtitleCueHelp: "短い字幕キューのほうがTikTok、Reels、Shortsで読みやすくなります。",
|
| 339 |
+
inspector: "詳細",
|
| 340 |
+
title: "タイトル",
|
| 341 |
+
status: "状態",
|
| 342 |
+
notApproved: "未承認",
|
| 343 |
+
model: "モデル",
|
| 344 |
+
source: "ソース",
|
| 345 |
+
settings: "設定",
|
| 346 |
+
stepInput: "入力",
|
| 347 |
+
stepTranscription: "文字起こし",
|
| 348 |
+
stepHighlights: "ハイライト",
|
| 349 |
+
stepVisual: "映像確認",
|
| 350 |
+
stepRender: "レンダー",
|
| 351 |
+
stepFinal: "仕上げ",
|
| 352 |
+
renderProgress: "クリップ {{current}}/{{total}} をレンダリング中",
|
| 353 |
+
appCta: "クリップ生成",
|
| 354 |
approve: "承認",
|
| 355 |
approved: "承認済み",
|
| 356 |
regenerate: "再生成",
|
| 357 |
delete: "削除",
|
| 358 |
download: "ダウンロード",
|
| 359 |
backToDashboard: "ダッシュボードへ戻る",
|
| 360 |
+
niche_education: "教育",
|
| 361 |
+
niche_gaming: "ゲーム",
|
| 362 |
+
niche_podcast: "ポッドキャスト",
|
| 363 |
+
niche_commentary: "解説",
|
| 364 |
+
niche_cars: "車",
|
| 365 |
+
niche_beauty: "美容",
|
| 366 |
+
niche_fitness: "フィットネス",
|
| 367 |
+
niche_finance: "金融",
|
| 368 |
+
niche_tech: "テック",
|
| 369 |
+
niche_lifestyle: "ライフスタイル",
|
| 370 |
+
niche_music: "音楽",
|
| 371 |
+
niche_other: "その他",
|
| 372 |
+
style_informative: "情報提供",
|
| 373 |
+
style_funny: "面白い",
|
| 374 |
+
style_dramatic: "ドラマチック",
|
| 375 |
+
style_educational: "教育的",
|
| 376 |
+
style_commentary: "解説",
|
| 377 |
+
platform_tiktok: "TikTok",
|
| 378 |
+
platform_youtube_shorts: "YouTube Shorts",
|
| 379 |
+
platform_instagram_reels: "Instagram Reels",
|
| 380 |
+
languageOption_Thai: "タイ語",
|
| 381 |
+
languageOption_English: "英語",
|
| 382 |
+
languageOption_Japanese: "日本語",
|
| 383 |
+
languageOption_Chinese: "中国語",
|
| 384 |
+
languageOption_Korean: "韓国語",
|
| 385 |
+
languageOption_Auto: "自動",
|
| 386 |
},
|
| 387 |
zh: {
|
| 388 |
...en,
|
| 389 |
appSubtitle: "面向 AMD ROCm 演示的创作者剪辑工作台",
|
| 390 |
+
idle: "空闲",
|
| 391 |
+
queued: "排队中",
|
| 392 |
+
running: "运行中",
|
| 393 |
+
completed: "已完成",
|
| 394 |
+
failed: "失败",
|
| 395 |
+
demoMode: "演示模式",
|
| 396 |
+
productionMode: "生产模式",
|
| 397 |
+
theme: "主题",
|
| 398 |
+
language: "语言",
|
| 399 |
+
startPipeline: "开始处理",
|
| 400 |
channelProfile: "频道资料",
|
| 401 |
+
channelProfileText: "在评分高光片段前,先告诉 AI 你的频道定位。",
|
| 402 |
videoInput: "视频输入",
|
| 403 |
niche: "频道领域",
|
| 404 |
+
nicheHelp: "选择最接近的类别。如果频道更具体,请选择其他。",
|
| 405 |
customNiche: "自定义领域",
|
| 406 |
+
customNichePlaceholder: "例如:面向初学者的泰语 AI 教程",
|
| 407 |
channelDescription: "频道描述",
|
| 408 |
+
channelDescriptionHelp: "可以用自然口语描述。AI 会用它判断内容是否符合频道风格。",
|
| 409 |
+
channelDescriptionPlaceholder: "例如:我用泰语讲解 AI 工具,例子简单,也带一点幽默。",
|
| 410 |
clipStyle: "剪辑风格",
|
| 411 |
clipLength: "剪辑长度(秒)",
|
| 412 |
clipCount: "剪辑数量",
|
| 413 |
+
clipCountHelp: "希望 AI 从这段视频生成多少个候选剪辑。",
|
| 414 |
primaryLanguage: "主要语言",
|
| 415 |
platform: "平台",
|
| 416 |
+
youtube: "YouTube",
|
| 417 |
+
upload: "上传",
|
| 418 |
+
youtubeUrl: "YouTube 链接",
|
| 419 |
+
youtubePlaceholder: "https://www.youtube.com/watch?v=...",
|
| 420 |
+
videoFile: "视频文件",
|
| 421 |
pipeline: "处理流程",
|
| 422 |
+
ready: "准备就绪",
|
| 423 |
+
progressNote: "进度会按后端步骤更新,渲染阶段会显示每个剪辑的状态。",
|
| 424 |
+
currentStep: "当前步骤",
|
| 425 |
+
timing: "耗时",
|
| 426 |
transcript: "转录文本",
|
| 427 |
+
transcriptEmpty: "转录完成后会显示在这里。",
|
| 428 |
clips: "剪辑",
|
| 429 |
noClips: "还没有剪辑",
|
| 430 |
+
noClipsText: "启动流程后,AI 会根据频道资料生成候选剪辑。",
|
| 431 |
+
readyClips: "个已就绪",
|
| 432 |
+
score: "评分",
|
| 433 |
+
reason: "原因",
|
| 434 |
+
duration: "时长",
|
| 435 |
+
start: "开始",
|
| 436 |
+
end: "结束",
|
| 437 |
openEditor: "打开编辑器",
|
| 438 |
editor: "剪辑编辑器",
|
| 439 |
+
editorText: "微调这个剪辑的时间、字幕和最终审批状态。",
|
| 440 |
+
preview: "预览",
|
| 441 |
+
clipRange: "剪辑范围",
|
| 442 |
subtitles: "字幕",
|
| 443 |
subtitleCues: "字幕片段",
|
| 444 |
+
subtitleCueHelp: "短字幕片段更适合 TikTok、Reels 和 Shorts。",
|
| 445 |
+
inspector: "检查器",
|
| 446 |
+
title: "标题",
|
| 447 |
+
status: "状态",
|
| 448 |
+
notApproved: "未批准",
|
| 449 |
+
model: "模型",
|
| 450 |
+
source: "来源",
|
| 451 |
+
settings: "设置",
|
| 452 |
+
stepInput: "输入",
|
| 453 |
+
stepTranscription: "转录",
|
| 454 |
+
stepHighlights: "高光",
|
| 455 |
+
stepVisual: "视觉检查",
|
| 456 |
+
stepRender: "渲染",
|
| 457 |
+
stepFinal: "完成",
|
| 458 |
+
renderProgress: "正在渲染剪辑 {{current}}/{{total}}",
|
| 459 |
+
appCta: "生成剪辑",
|
| 460 |
approve: "批准",
|
| 461 |
approved: "已批准",
|
| 462 |
regenerate: "重新生成",
|
| 463 |
delete: "删除",
|
| 464 |
download: "下载",
|
| 465 |
backToDashboard: "返回仪表盘",
|
| 466 |
+
niche_education: "教育",
|
| 467 |
+
niche_gaming: "游戏",
|
| 468 |
+
niche_podcast: "播客",
|
| 469 |
+
niche_commentary: "评论解说",
|
| 470 |
+
niche_cars: "汽车",
|
| 471 |
+
niche_beauty: "美妆",
|
| 472 |
+
niche_fitness: "健身",
|
| 473 |
+
niche_finance: "金融",
|
| 474 |
+
niche_tech: "科技",
|
| 475 |
+
niche_lifestyle: "生活方式",
|
| 476 |
+
niche_music: "音乐",
|
| 477 |
+
niche_other: "其他",
|
| 478 |
+
style_informative: "信息型",
|
| 479 |
+
style_funny: "幽默",
|
| 480 |
+
style_dramatic: "戏剧化",
|
| 481 |
+
style_educational: "教学型",
|
| 482 |
+
style_commentary: "评论型",
|
| 483 |
+
platform_tiktok: "TikTok",
|
| 484 |
+
platform_youtube_shorts: "YouTube Shorts",
|
| 485 |
+
platform_instagram_reels: "Instagram Reels",
|
| 486 |
+
languageOption_Thai: "泰语",
|
| 487 |
+
languageOption_English: "英语",
|
| 488 |
+
languageOption_Japanese: "日语",
|
| 489 |
+
languageOption_Chinese: "中文",
|
| 490 |
+
languageOption_Korean: "韩语",
|
| 491 |
+
languageOption_Auto: "自动",
|
| 492 |
},
|
| 493 |
ko: {
|
| 494 |
...en,
|
| 495 |
appSubtitle: "AMD ROCm 데모를 위한 크리에이터 클립 작업 공간",
|
| 496 |
+
idle: "대기",
|
| 497 |
+
queued: "대기열",
|
| 498 |
+
running: "실행 중",
|
| 499 |
+
completed: "완료",
|
| 500 |
+
failed: "실패",
|
| 501 |
+
demoMode: "데모 모드",
|
| 502 |
+
productionMode: "프로덕션 모드",
|
| 503 |
+
theme: "테마",
|
| 504 |
+
language: "언어",
|
| 505 |
+
startPipeline: "처리 시작",
|
| 506 |
channelProfile: "채널 프로필",
|
| 507 |
+
channelProfileText: "하이라이트를 평가하기 전에 AI에게 채널 성격을 알려줍니다.",
|
| 508 |
videoInput: "비디오 입력",
|
| 509 |
niche: "채널 분야",
|
| 510 |
+
nicheHelp: "가장 가까운 카테고리를 선택하세요. 더 구체적인 분야라면 기타를 선택하세요.",
|
| 511 |
customNiche: "사용자 분야",
|
| 512 |
+
customNichePlaceholder: "예: 초보자를 위한 태국어 AI 튜토리얼",
|
| 513 |
channelDescription: "채널 설명",
|
| 514 |
+
channelDescriptionHelp: "자연스럽게 적어도 됩니다. AI가 채널 스타일 판단에 사용합니다.",
|
| 515 |
+
channelDescriptionPlaceholder:
|
| 516 |
+
"예: AI 도구를 태국어로 쉽게 설명하고 약간의 유머를 섞습니다.",
|
| 517 |
clipStyle: "클립 스타일",
|
| 518 |
clipLength: "클립 길이(초)",
|
| 519 |
clipCount: "클립 개수",
|
| 520 |
+
clipCountHelp: "이 비디오에서 AI가 생성할 후보 클립 개수입니다.",
|
| 521 |
primaryLanguage: "기본 언어",
|
| 522 |
platform: "플랫폼",
|
| 523 |
+
youtube: "YouTube",
|
| 524 |
+
upload: "업로드",
|
| 525 |
+
youtubeUrl: "YouTube URL",
|
| 526 |
+
youtubePlaceholder: "https://www.youtube.com/watch?v=...",
|
| 527 |
+
videoFile: "비디오 파일",
|
| 528 |
pipeline: "파이프라인",
|
| 529 |
+
ready: "준비됨",
|
| 530 |
+
progressNote: "진행률은 백엔드 단계별로 갱신되며, 렌더링 중에는 클립별 상태가 표시됩니다.",
|
| 531 |
+
currentStep: "현재 단계",
|
| 532 |
+
timing: "소요 시간",
|
| 533 |
transcript: "전사",
|
| 534 |
+
transcriptEmpty: "전사가 끝나면 여기에 표시됩니다.",
|
| 535 |
clips: "클립",
|
| 536 |
noClips: "아직 클립이 없습니다",
|
| 537 |
+
noClipsText: "파이프라인을 시작하면 프로필 기반 후보 클립이 생성됩니다.",
|
| 538 |
+
readyClips: "개 준비됨",
|
| 539 |
+
score: "점수",
|
| 540 |
+
reason: "이유",
|
| 541 |
+
duration: "길이",
|
| 542 |
+
start: "시작",
|
| 543 |
+
end: "종료",
|
| 544 |
openEditor: "편집기 열기",
|
| 545 |
editor: "클립 편집기",
|
| 546 |
+
editorText: "이 클립의 타이밍, 자막, 최종 승인 상태를 조정합니다.",
|
| 547 |
+
preview: "미리보기",
|
| 548 |
+
clipRange: "클립 범위",
|
| 549 |
subtitles: "자막",
|
| 550 |
subtitleCues: "자막 큐",
|
| 551 |
+
subtitleCueHelp: "짧은 자막 큐가 TikTok, Reels, Shorts에서 더 읽기 쉽습니다.",
|
| 552 |
+
inspector: "검사 패널",
|
| 553 |
+
title: "제목",
|
| 554 |
+
status: "상태",
|
| 555 |
+
notApproved: "미승인",
|
| 556 |
+
model: "모델",
|
| 557 |
+
source: "소스",
|
| 558 |
+
settings: "설정",
|
| 559 |
+
stepInput: "입력",
|
| 560 |
+
stepTranscription: "전사",
|
| 561 |
+
stepHighlights: "하이라이트",
|
| 562 |
+
stepVisual: "영상 확인",
|
| 563 |
+
stepRender: "렌더링",
|
| 564 |
+
stepFinal: "마무리",
|
| 565 |
+
renderProgress: "클립 {{current}}/{{total}} 렌더링 중",
|
| 566 |
+
appCta: "클립 생성",
|
| 567 |
approve: "승인",
|
| 568 |
approved: "승인됨",
|
| 569 |
regenerate: "다시 생성",
|
| 570 |
delete: "삭제",
|
| 571 |
download: "다운로드",
|
| 572 |
backToDashboard: "대시보드로 돌아가기",
|
| 573 |
+
niche_education: "교육",
|
| 574 |
+
niche_gaming: "게임",
|
| 575 |
+
niche_podcast: "팟캐스트",
|
| 576 |
+
niche_commentary: "해설",
|
| 577 |
+
niche_cars: "자동차",
|
| 578 |
+
niche_beauty: "뷰티",
|
| 579 |
+
niche_fitness: "피트니스",
|
| 580 |
+
niche_finance: "금융",
|
| 581 |
+
niche_tech: "테크",
|
| 582 |
+
niche_lifestyle: "라이프스타일",
|
| 583 |
+
niche_music: "음악",
|
| 584 |
+
niche_other: "기타",
|
| 585 |
+
style_informative: "정보형",
|
| 586 |
+
style_funny: "재미있는",
|
| 587 |
+
style_dramatic: "극적인",
|
| 588 |
+
style_educational: "교육형",
|
| 589 |
+
style_commentary: "해설형",
|
| 590 |
+
platform_tiktok: "TikTok",
|
| 591 |
+
platform_youtube_shorts: "YouTube Shorts",
|
| 592 |
+
platform_instagram_reels: "Instagram Reels",
|
| 593 |
+
languageOption_Thai: "태국어",
|
| 594 |
+
languageOption_English: "영어",
|
| 595 |
+
languageOption_Japanese: "일본어",
|
| 596 |
+
languageOption_Chinese: "중국어",
|
| 597 |
+
languageOption_Korean: "한국어",
|
| 598 |
+
languageOption_Auto: "자동",
|
| 599 |
},
|
| 600 |
};
|
| 601 |
|
|
|
|
| 903 |
label={t("primaryLanguage")}
|
| 904 |
value={profile.primary_language}
|
| 905 |
onChange={setProfileValue("primary_language")}
|
| 906 |
+
options={LANGUAGE_OPTIONS.map((value) => ({
|
| 907 |
+
value,
|
| 908 |
+
label: t(`languageOption_${value}`),
|
| 909 |
+
}))}
|
| 910 |
/>
|
| 911 |
<SelectField
|
| 912 |
label={t("platform")}
|