sovits-v2-api
Version:
GPT-SoVITS v2 api
49 lines (48 loc) • 1.37 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getSpeakerList = getSpeakerList;
exports.recall = recall;
exports.optionsToFormData = optionsToFormData;
exports.getMimeTypeFromFilename = getMimeTypeFromFilename;
async function getSpeakerList(http) {
let speakers = await http.get('/voice/speakers');
return speakers;
}
// 撤回的方法
async function recall(recall, recall_time, session, messageId) {
if (!recall) {
return;
}
new Promise(resolve => setTimeout(() => {
session.bot.deleteMessage(session.channelId, messageId);
}, recall_time));
}
function optionsToFormData(obj) {
const formData = new FormData();
Object.entries(obj).forEach(([key, value]) => {
if (value !== undefined) {
formData.append(key, value);
}
});
return formData;
}
function getMimeTypeFromFilename(filename) {
const extension = filename.split('.').pop()?.toLowerCase();
if (!extension) {
return 'audio/wav';
}
switch (extension) {
case 'mp3':
return 'audio/mpeg';
case 'wav':
return 'audio/wav';
case 'ogg':
return 'audio/ogg';
case 'aac':
return 'audio/aac';
case 'flac':
return 'audio/flac';
default:
return 'audio/wav';
}
}