From 7b4d60b576bfbbe89530911b2a2173fcfc6a799a Mon Sep 17 00:00:00 2001 From: jialin Date: Sat, 31 Jan 2026 16:44:11 +0800 Subject: [PATCH] feat: add ref_text, x_vector_only_mode --- src/locales/en-US/playground.ts | 4 +- src/locales/ja-JP/playground.ts | 4 +- src/locales/ru-RU/playground.ts | 4 +- src/locales/zh-CN/playground.ts | 4 +- src/pages/playground/audio/form.tsx | 93 +++++++++++++++++++---------- 5 files changed, 75 insertions(+), 34 deletions(-) diff --git a/src/locales/en-US/playground.ts b/src/locales/en-US/playground.ts index 3ad09d10..0568be95 100644 --- a/src/locales/en-US/playground.ts +++ b/src/locales/en-US/playground.ts @@ -169,5 +169,7 @@ export default { 'playground.params.maxTokens': 'Max New Tokens', 'playground.params.refAudio': 'Reference Audio', 'playground.params.refAudio.tips': - 'Enter a reference audio URL, or upload an audio file.' + 'Enter a reference audio URL, or upload an audio file.', + 'playground.params.refAudio.text': 'Transcript of Reference Audio', + 'playground.params.refAudio.vectorMode': 'Use Speaker Embedding' }; diff --git a/src/locales/ja-JP/playground.ts b/src/locales/ja-JP/playground.ts index b035c4ab..128f0c00 100644 --- a/src/locales/ja-JP/playground.ts +++ b/src/locales/ja-JP/playground.ts @@ -172,7 +172,9 @@ export default { 'playground.params.maxTokens': 'Max New Tokens', 'playground.params.refAudio': 'Reference Audio', 'playground.params.refAudio.tips': - 'Enter a reference audio URL, or upload an audio file.' + 'Enter a reference audio URL, or upload an audio file.', + 'playground.params.refAudio.text': 'Transcript of Reference Audio', + 'playground.params.refAudio.vectorMode': 'Use Speaker Embedding' }; // ========== To-Do: Translate Keys (Remove After Translation) ========== diff --git a/src/locales/ru-RU/playground.ts b/src/locales/ru-RU/playground.ts index 5f8f68ea..728f0867 100644 --- a/src/locales/ru-RU/playground.ts +++ b/src/locales/ru-RU/playground.ts @@ -166,7 +166,9 @@ export default { 'playground.params.maxTokens': 'Max New Tokens', 'playground.params.refAudio': 'Reference Audio', 'playground.params.refAudio.tips': - 'Enter a reference audio URL, or upload an audio file.' + 'Enter a reference audio URL, or upload an audio file.', + 'playground.params.refAudio.text': 'Transcript of Reference Audio', + 'playground.params.refAudio.vectorMode': 'Use Speaker Embedding' }; // ========== To-Do: Translate Keys (Remove After Translation) ========== diff --git a/src/locales/zh-CN/playground.ts b/src/locales/zh-CN/playground.ts index cdfa9a77..9ce4ff88 100644 --- a/src/locales/zh-CN/playground.ts +++ b/src/locales/zh-CN/playground.ts @@ -162,5 +162,7 @@ export default { 'playground.params.maxTokens': '最大生成 Token 数', 'playground.params.refAudio': '参考音频', 'playground.params.refAudio.tips': - '输入一个参考音频的 URL,或上传一个音频文件。' + '输入一个参考音频的 URL,或上传一个音频文件。', + 'playground.params.refAudio.text': '参考音频文本', + 'playground.params.refAudio.vectorMode': '使用扬声器嵌入' }; diff --git a/src/pages/playground/audio/form.tsx b/src/pages/playground/audio/form.tsx index 244fc113..107dff7b 100644 --- a/src/pages/playground/audio/form.tsx +++ b/src/pages/playground/audio/form.tsx @@ -1,3 +1,4 @@ +import CheckboxField from '@/components/seal-form/checkbox-field'; import SealInput from '@/components/seal-form/seal-input'; import UploadAudio from '@/components/upload-audio'; import { convertFileToBase64 } from '@/utils/load-audio-file'; @@ -8,8 +9,13 @@ import React from 'react'; import styled from 'styled-components'; import { useFormContext } from '../config/form-context'; -const SuffixWrapper = styled.div` +const SuffixWrapper = styled.div.attrs({ + className: 'suffix-wrapper' +})` + display: flex; + align-items: center; .icon { + display: none; font-size: 12px; color: var(--ant-color-text-quaternary); cursor: pointer; @@ -19,6 +25,16 @@ const SuffixWrapper = styled.div` } `; +const Container = styled.div` + &:hover { + .suffix-wrapper { + .icon { + display: block; + } + } + } +`; + export const RefAudioFormItem: React.FC = () => { const { meta, onValuesChange } = useFormContext(); const form = Form.useFormInstance(); @@ -34,7 +50,6 @@ export const RefAudioFormItem: React.FC = () => { }); setFileName(file.name); - console.log('Uploaded file base64 url:', base64); onValuesChange?.( { ref_audio: base64 }, { ...form.getFieldsValue(), ref_audio: base64 } @@ -53,33 +68,51 @@ export const RefAudioFormItem: React.FC = () => { }; return ( - ({ value: fileName ? fileName : value })} - > - - {fileName ? ( - - - - ) : null} - - - } - description={intl.formatMessage({ - id: 'playground.params.refAudio.tips' - })} - label={intl.formatMessage({ id: 'playground.params.refAudio' })} - > - + <> + + ({ value: fileName ? fileName : value })} + > + + {fileName ? ( + + + + ) : null} + + + } + description={intl.formatMessage({ + id: 'playground.params.refAudio.tips' + })} + label={intl.formatMessage({ id: 'playground.params.refAudio' })} + > + + + + + + + + + ); };