mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-27 01:23:55 +08:00
update:智控台音色克隆
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
import { getServiceUrl } from '../api';
|
||||
import RequestService from '../httpRequest';
|
||||
|
||||
export default {
|
||||
// 分页查询音色资源
|
||||
getVoiceCloneList(params, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceClone`)
|
||||
.method('GET')
|
||||
.data(params)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取音色列表失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getVoiceCloneList(params, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
|
||||
// 上传音频文件
|
||||
uploadVoice(formData, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceClone/upload`)
|
||||
.method('POST')
|
||||
.data(formData)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('上传音频失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.uploadVoice(formData, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
|
||||
// 更新音色名称
|
||||
updateName(params, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceClone/updateName`)
|
||||
.method('POST')
|
||||
.data(params)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('更新名称失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.updateName(params, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
|
||||
// 获取音频下载ID
|
||||
getAudioId(id, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceClone/audio/${id}`)
|
||||
.method('POST')
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取音频ID失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getAudioId(id, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
|
||||
// 获取音频播放URL
|
||||
getPlayVoiceUrl(uuid) {
|
||||
return `${getServiceUrl()}/voiceClone/play/${uuid}`;
|
||||
},
|
||||
|
||||
// 复刻音频
|
||||
cloneAudio(params, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceClone/cloneAudio`)
|
||||
.method('POST')
|
||||
.data(params)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('上传失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.cloneAudio(params, callback);
|
||||
});
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
import { getServiceUrl } from '../api';
|
||||
import RequestService from '../httpRequest';
|
||||
|
||||
export default {
|
||||
// 分页查询音色资源
|
||||
getVoiceResourceList(params, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource`)
|
||||
.method('GET')
|
||||
.data(params)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取音色资源列表失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getVoiceResourceList(params, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
// 获取单个音色资源信息
|
||||
getVoiceResourceInfo(id, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource/${id}`)
|
||||
.method('GET')
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取音色资源信息失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getVoiceResourceInfo(id, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
// 保存音色资源
|
||||
saveVoiceResource(entity, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource`)
|
||||
.method('POST')
|
||||
.data(entity)
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('保存音色资源失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.saveVoiceResource(entity, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
// 删除音色资源
|
||||
deleteVoiceResource(ids, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource/${ids}`)
|
||||
.method('DELETE')
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('删除音色资源失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.deleteVoiceResource(ids, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
// 根据用户ID获取音色资源列表
|
||||
getVoiceResourceByUserId(userId, callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource/user/${userId}`)
|
||||
.method('GET')
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取用户音色资源列表失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getVoiceResourceByUserId(userId, callback);
|
||||
});
|
||||
}).send();
|
||||
},
|
||||
// 获取TTS平台列表
|
||||
getTtsPlatformList(callback) {
|
||||
RequestService.sendRequest()
|
||||
.url(`${getServiceUrl()}/voiceResource/ttsPlatforms`)
|
||||
.method('GET')
|
||||
.success((res) => {
|
||||
RequestService.clearRequestTime();
|
||||
callback(res);
|
||||
})
|
||||
.networkFail((err) => {
|
||||
console.error('获取TTS平台列表失败:', err);
|
||||
RequestService.reAjaxFun(() => {
|
||||
this.getTtsPlatformList(callback);
|
||||
});
|
||||
}).send();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user