updat
This commit is contained in:
parent
4251e1ca7c
commit
98e14a9d4a
@ -7,20 +7,30 @@
|
||||
"subTitle": "for MMVC v.1.3",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": true,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": false
|
||||
"F0DetectorEnable": false,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": true,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": true,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": false,
|
||||
|
@ -7,20 +7,30 @@
|
||||
"subTitle": "for MMVC v.1.5",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": true,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": true,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": true,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": true,
|
||||
"tuningEnable": false,
|
||||
|
@ -7,17 +7,26 @@
|
||||
"subTitle": "for so-vits-svc-40",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": true,
|
||||
"showPyTorchDefault": true
|
||||
"showPyTorchDefault": true,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
|
67
client/demo_v13/dist/assets/gui_settings/so-vits-svc-40_c.json
vendored
Normal file
67
client/demo_v13/dist/assets/gui_settings/so-vits-svc-40_c.json
vendored
Normal file
@ -0,0 +1,67 @@
|
||||
{
|
||||
"type": "demo",
|
||||
"id": "so-vits-svc-40_c",
|
||||
"front": {
|
||||
"title": {
|
||||
"mainTitle": "VC Client",
|
||||
"subTitle": "for so-vits-svc-40_c",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": false
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": false,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": false,
|
||||
"modelUploaderEnable": false,
|
||||
"configRow": false,
|
||||
"uploadRow": false
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": false,
|
||||
"samplingRow": false,
|
||||
"playRow": false
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": true,
|
||||
"clusterInferRationEnable": true,
|
||||
"noiseScaleEnable": true,
|
||||
"silentThresholdEnable": true
|
||||
},
|
||||
"converterSetting": {
|
||||
"extraDataLengthEnable": true
|
||||
},
|
||||
"advancedSetting": {
|
||||
"serverURLEnable": false,
|
||||
"protocolEnable": true,
|
||||
"sampleRateEnable": false,
|
||||
"sendingSampleRateEnable": false,
|
||||
"crossFadeOverlapSizeEnable": false,
|
||||
"crossFadeOffsetRateEnable": false,
|
||||
"crossFadeEndRateEnable": false,
|
||||
"downSamplingModeEnable": false,
|
||||
"trancateNumTresholdEnable": false
|
||||
}
|
||||
},
|
||||
|
||||
"dialogs": {
|
||||
"license": [
|
||||
{
|
||||
"title": "c",
|
||||
"auther": "c",
|
||||
"contact": "b",
|
||||
"url": "a",
|
||||
"license": "MIT"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -7,13 +7,19 @@
|
||||
"subTitle": "for so-vits-svc-40v2",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": true,
|
||||
"showPyTorchDefault": true
|
||||
"showPyTorchDefault": true,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
@ -21,6 +27,7 @@
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": true,
|
||||
|
24
client/demo_v13/dist/index.js
vendored
24
client/demo_v13/dist/index.js
vendored
File diff suppressed because one or more lines are too long
@ -7,20 +7,30 @@
|
||||
"subTitle": "for MMVC v.1.3",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": true,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": false
|
||||
"F0DetectorEnable": false,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": true,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": true,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": false,
|
||||
|
@ -7,20 +7,30 @@
|
||||
"subTitle": "for MMVC v.1.5",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": true,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": true,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": true,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": true,
|
||||
"tuningEnable": false,
|
||||
|
@ -7,20 +7,30 @@
|
||||
"subTitle": "for so-vits-svc-40",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": true,
|
||||
"showPyTorchDefault": true
|
||||
"showPyTorchDefault": true,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": true,
|
||||
|
@ -0,0 +1,68 @@
|
||||
{
|
||||
"type": "demo",
|
||||
"id": "so-vits-svc-40_c",
|
||||
"front": {
|
||||
"title": {
|
||||
"mainTitle": "VC Client",
|
||||
"subTitle": "for so-vits-svc-40_c",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": false
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": false,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": false,
|
||||
"modelUploaderEnable": false,
|
||||
"configRow": false,
|
||||
"uploadRow": false
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": true,
|
||||
"analyzerRow": false,
|
||||
"samplingRow": false,
|
||||
"playRow": false
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"dstIdEnable": false,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": true,
|
||||
"clusterInferRationEnable": true,
|
||||
"noiseScaleEnable": true,
|
||||
"silentThresholdEnable": true
|
||||
},
|
||||
"converterSetting": {
|
||||
"extraDataLengthEnable": true
|
||||
},
|
||||
"advancedSetting": {
|
||||
"serverURLEnable": false,
|
||||
"protocolEnable": true,
|
||||
"sampleRateEnable": false,
|
||||
"sendingSampleRateEnable": false,
|
||||
"crossFadeOverlapSizeEnable": false,
|
||||
"crossFadeOffsetRateEnable": false,
|
||||
"crossFadeEndRateEnable": false,
|
||||
"downSamplingModeEnable": false,
|
||||
"trancateNumTresholdEnable": false
|
||||
}
|
||||
},
|
||||
|
||||
"dialogs": {
|
||||
"license": [
|
||||
{
|
||||
"title": "c",
|
||||
"auther": "c",
|
||||
"contact": "b",
|
||||
"url": "a",
|
||||
"license": "MIT"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -7,13 +7,19 @@
|
||||
"subTitle": "for so-vits-svc-40v2",
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": true,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": true,
|
||||
"showPyTorchDefault": true
|
||||
"showPyTorchDefault": true,
|
||||
"frameworkEnable": true,
|
||||
"modelUploaderEnable": true,
|
||||
"configRow": true,
|
||||
"uploadRow": true
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
@ -21,6 +27,7 @@
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"dstIdEnable": true,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": true,
|
||||
|
@ -13,20 +13,30 @@ export type AppGuiDemoSetting = {
|
||||
"lineNum": number
|
||||
},
|
||||
"serverControl": {
|
||||
"modelInfoEnable": boolean
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": boolean,
|
||||
"pyTorchEnable": boolean,
|
||||
"MMVCCorrespondense": boolean,
|
||||
"pyTorchClusterEnable": boolean,
|
||||
"showPyTorchDefault": boolean
|
||||
"showPyTorchDefault": boolean,
|
||||
"frameworkEnable": boolean,
|
||||
"modelUploaderEnable": boolean,
|
||||
"configRow": boolean,
|
||||
"uploadRow": boolean
|
||||
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": boolean
|
||||
"F0DetectorEnable": boolean,
|
||||
"analyzerRow": boolean,
|
||||
"samplingRow": boolean,
|
||||
"playRow": boolean
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": boolean
|
||||
"dstIdEnable": boolean
|
||||
"editSpeakerIdMappingEnable": boolean
|
||||
"f0FactorEnable": boolean
|
||||
"tuningEnable": boolean
|
||||
@ -66,21 +76,29 @@ const InitialAppGuiDemoSetting: AppGuiDemoSetting = {
|
||||
"lineNum": 1
|
||||
},
|
||||
"serverControl": {
|
||||
|
||||
"modelInfoEnable": true
|
||||
},
|
||||
"modelSetting": {
|
||||
"ONNXEnable": false,
|
||||
"pyTorchEnable": false,
|
||||
"MMVCCorrespondense": false,
|
||||
"pyTorchClusterEnable": false,
|
||||
"showPyTorchDefault": false
|
||||
"showPyTorchDefault": false,
|
||||
"frameworkEnable": false,
|
||||
"modelUploaderEnable": false,
|
||||
"configRow": false,
|
||||
"uploadRow": false
|
||||
},
|
||||
"deviceSetting": {},
|
||||
"qualityControl": {
|
||||
"F0DetectorEnable": false
|
||||
"F0DetectorEnable": false,
|
||||
"analyzerRow": true,
|
||||
"samplingRow": true,
|
||||
"playRow": true
|
||||
},
|
||||
"speakerSetting": {
|
||||
"srcIdEnable": false,
|
||||
"dstIdEnable": false,
|
||||
"editSpeakerIdMappingEnable": false,
|
||||
"f0FactorEnable": false,
|
||||
"tuningEnable": false,
|
||||
|
@ -1,10 +1,16 @@
|
||||
import React, { useMemo } from "react"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
import { useAppState } from "../../001_provider/001_AppStateProvider"
|
||||
|
||||
export const ServerInfoRow = () => {
|
||||
const appState = useAppState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const serverControlSetting = appGuiSettingState.appGuiSetting.front.serverControl
|
||||
|
||||
const serverInfoRow = useMemo(() => {
|
||||
if (!serverControlSetting.modelInfoEnable) {
|
||||
return <></>
|
||||
}
|
||||
const onReloadClicked = async () => {
|
||||
const info = await appState.getInfo()
|
||||
console.log("info", info)
|
||||
|
@ -5,13 +5,20 @@ import { useGuiState } from "./001_GuiStateProvider"
|
||||
export const ModelUploaderRow = () => {
|
||||
const guiState = useGuiState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const modelSetting = appGuiSettingState.appGuiSetting.front.modelSetting
|
||||
useEffect(() => {
|
||||
if (!modelSetting.modelUploaderEnable) {
|
||||
return
|
||||
}
|
||||
if (appGuiSettingState.appGuiSetting.front.modelSetting.showPyTorchDefault) {
|
||||
guiState.setShowPyTorchModelUpload(true)
|
||||
}
|
||||
}, [])
|
||||
|
||||
const modelUploaderRow = useMemo(() => {
|
||||
if (!modelSetting.modelUploaderEnable) {
|
||||
return <></>
|
||||
}
|
||||
return (
|
||||
<div className="body-row split-3-3-4 left-padding-1 guided">
|
||||
<div className="body-item-title left-padding-1">Model Uploader</div>
|
||||
|
@ -2,11 +2,17 @@ import React, { useMemo } from "react"
|
||||
import { fileSelector } from "@dannadori/voice-changer-client-js"
|
||||
|
||||
import { useAppState } from "../../001_provider/001_AppStateProvider"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
|
||||
export const ConfigSelectRow = () => {
|
||||
const appState = useAppState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const modelSetting = appGuiSettingState.appGuiSetting.front.modelSetting
|
||||
|
||||
const configSelectRow = useMemo(() => {
|
||||
if (!modelSetting.configRow) {
|
||||
return <></>
|
||||
}
|
||||
const configFilenameText = appState.serverSetting.fileUploadSetting.configFile?.filename || appState.serverSetting.fileUploadSetting.configFile?.file?.name || ""
|
||||
const onConfigFileLoadClicked = async () => {
|
||||
const file = await fileSelector("")
|
||||
|
@ -1,11 +1,18 @@
|
||||
import React, { useMemo } from "react"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
|
||||
import { useAppState } from "../../001_provider/001_AppStateProvider"
|
||||
|
||||
export const ModelUploadButtonRow = () => {
|
||||
const appState = useAppState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
|
||||
const modelSetting = appGuiSettingState.appGuiSetting.front.modelSetting
|
||||
|
||||
const modelUploadButtonRow = useMemo(() => {
|
||||
if (!modelSetting.uploadRow) {
|
||||
return <></>
|
||||
}
|
||||
const onModelUploadClicked = async () => {
|
||||
appState.serverSetting.loadModel()
|
||||
}
|
||||
|
@ -1,11 +1,17 @@
|
||||
import React, { useMemo } from "react"
|
||||
import { Framework } from "@dannadori/voice-changer-client-js"
|
||||
import { useAppState } from "../../001_provider/001_AppStateProvider"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
|
||||
export const FrameworkRow = () => {
|
||||
const appState = useAppState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const modelSetting = appGuiSettingState.appGuiSetting.front.modelSetting
|
||||
|
||||
const frameworkRow = useMemo(() => {
|
||||
if (!modelSetting.frameworkEnable) {
|
||||
return <></>
|
||||
}
|
||||
const onFrameworkChanged = async (val: Framework) => {
|
||||
appState.serverSetting.updateServerSettings({ ...appState.serverSetting.serverSetting, framework: val })
|
||||
}
|
||||
|
@ -1,7 +1,13 @@
|
||||
import React, { useMemo } from "react"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
|
||||
export const AnalyzerRow = () => {
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const qualityControlSetting = appGuiSettingState.appGuiSetting.front.qualityControl
|
||||
const analyzerRow = useMemo(() => {
|
||||
if (!qualityControlSetting.analyzerRow) {
|
||||
return <></>
|
||||
}
|
||||
return (
|
||||
<div className="body-row split-3-7 left-padding-1 guided">
|
||||
<div className="body-item-title left-padding-1 ">Analyzer(Experimental)</div>
|
||||
|
@ -1,4 +1,5 @@
|
||||
import React, { useMemo, useState } from "react"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
import { useAppState } from "../../001_provider/001_AppStateProvider"
|
||||
import { AUDIO_ELEMENT_FOR_SAMPLING_INPUT, AUDIO_ELEMENT_FOR_SAMPLING_OUTPUT } from "../../const"
|
||||
import { useGuiState } from "./001_GuiStateProvider"
|
||||
@ -7,9 +8,15 @@ export const SamplingRow = () => {
|
||||
const [recording, setRecording] = useState<boolean>(false)
|
||||
const appState = useAppState()
|
||||
const guiState = useGuiState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const qualityControlSetting = appGuiSettingState.appGuiSetting.front.qualityControl
|
||||
|
||||
|
||||
const samplingRow = useMemo(() => {
|
||||
if (!qualityControlSetting.samplingRow) {
|
||||
return <></>
|
||||
}
|
||||
|
||||
const onRecordStartClicked = async () => {
|
||||
setRecording(true)
|
||||
await appState.serverSetting.updateServerSettings({ ...appState.serverSetting.serverSetting, recordIO: 1 })
|
||||
|
@ -1,11 +1,17 @@
|
||||
import React, { useMemo } from "react"
|
||||
import { useAppRoot } from "../../001_provider/001_AppRootProvider"
|
||||
import { AUDIO_ELEMENT_FOR_SAMPLING_INPUT, AUDIO_ELEMENT_FOR_SAMPLING_OUTPUT } from "../../const"
|
||||
import { useGuiState } from "./001_GuiStateProvider"
|
||||
|
||||
export const SamplingPlayRow = () => {
|
||||
const guiState = useGuiState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const qualityControlSetting = appGuiSettingState.appGuiSetting.front.qualityControl
|
||||
|
||||
const samplingPlayRow = useMemo(() => {
|
||||
if (!qualityControlSetting.playRow) {
|
||||
return <></>
|
||||
}
|
||||
return (
|
||||
<div className="body-row split-3-2-2-3 left-padding-1 guided">
|
||||
<div className="body-item-title left-padding-2 ">
|
||||
|
@ -5,12 +5,20 @@ import { ServerInfoSoVitsSVC } from "@dannadori/voice-changer-client-js";
|
||||
export const DstIdRow = () => {
|
||||
const appState = useAppState()
|
||||
const { appGuiSettingState } = useAppRoot()
|
||||
const speakerSetting = appGuiSettingState.appGuiSetting.front.speakerSetting
|
||||
const clientId = appGuiSettingState.appGuiSetting.id
|
||||
|
||||
|
||||
const dstIdRow = useMemo(() => {
|
||||
if (!speakerSetting.dstIdEnable) {
|
||||
return <></>
|
||||
}
|
||||
if (clientId != "MMVCv13") {
|
||||
return <></>
|
||||
}
|
||||
if (!speakerSetting.dstIdEnable) {
|
||||
return <></>
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="body-row split-3-2-1-4 left-padding-1 guided">
|
||||
@ -35,6 +43,10 @@ export const DstIdRow = () => {
|
||||
}, [appState.serverSetting.serverSetting, appState.clientSetting.clientSetting.speakers, appState.serverSetting.updateServerSettings])
|
||||
|
||||
const dstIdRowWithF0 = useMemo(() => {
|
||||
if (!speakerSetting.dstIdEnable) {
|
||||
return <></>
|
||||
}
|
||||
|
||||
if (clientId != "MMVCv15") {
|
||||
return <></>
|
||||
}
|
||||
@ -67,6 +79,10 @@ export const DstIdRow = () => {
|
||||
}, [appState.serverSetting.serverSetting, appState.serverSetting.updateServerSettings, appState.clientSetting.clientSetting.correspondences])
|
||||
|
||||
const dstIdRowFromServer = useMemo(() => {
|
||||
if (!speakerSetting.dstIdEnable) {
|
||||
return <></>
|
||||
}
|
||||
|
||||
const settings = appState.serverSetting.serverSetting as ServerInfoSoVitsSVC
|
||||
const speakers = settings.speakers
|
||||
if (!speakers) {
|
||||
|
@ -14,7 +14,7 @@ export const NoiseScaleRow = () => {
|
||||
|
||||
return (
|
||||
<div className="body-row split-3-3-4 left-padding-1 guided">
|
||||
<div className="body-item-title left-padding-1 ">Noice Scale</div>
|
||||
<div className="body-item-title left-padding-1 ">Noise Scale</div>
|
||||
<div>
|
||||
<input type="range" className="body-item-input-slider" min="0" max="1" step="0.1" value={appState.serverSetting.serverSetting.noiceScale} onChange={(e) => {
|
||||
appState.serverSetting.updateServerSettings({ ...appState.serverSetting.serverSetting, noiceScale: Number(e.target.value) })
|
||||
|
@ -7,10 +7,9 @@
|
||||
export const ClientType = {
|
||||
"MMVCv15": "MMVCv15",
|
||||
"MMVCv13": "MMVCv13",
|
||||
"so_vits_svc_40": "so_vits_svc_40",
|
||||
"so_vits_svc_40_c": "so_vits_svc_40_c",
|
||||
"so_vits_svc_40v2": "so_vits_svc_40v2",
|
||||
"so_vits_svc_40v2_c": "so_vits_svc_40v2_c",
|
||||
"so-vits-svc-40": "so-vits-svc-40",
|
||||
"so-vits-svc-40_c": "so-vits-svc-40_c",
|
||||
"so-vits-svc-40v2": "so-vits-svc-40v2"
|
||||
|
||||
} as const
|
||||
export type ClientType = typeof ClientType[keyof typeof ClientType]
|
||||
@ -220,6 +219,41 @@ export const DefaultServerSetting_so_vits_svc_40: ServerInfo = {
|
||||
onnxExecutionProviders: []
|
||||
}
|
||||
|
||||
export const DefaultServerSetting_so_vits_svc_40_c: ServerInfo = {
|
||||
srcId: 0,
|
||||
dstId: 0,
|
||||
gpu: 0,
|
||||
|
||||
crossFadeOffsetRate: 0.0,
|
||||
crossFadeEndRate: 1.0,
|
||||
crossFadeOverlapSize: CrossFadeOverlapSize[1024],
|
||||
|
||||
framework: Framework.ONNX,
|
||||
f0Factor: 1.0,
|
||||
onnxExecutionProvider: OnnxExecutionProvider.CPUExecutionProvider,
|
||||
f0Detector: F0Detector.dio,
|
||||
recordIO: 0,
|
||||
|
||||
// tran: 0,
|
||||
// noiceScale: 0,
|
||||
// predictF0: 0,
|
||||
// silentThreshold: 0,
|
||||
tran: 10,
|
||||
noiceScale: 0.3,
|
||||
predictF0: 0,
|
||||
silentThreshold: 0.00001,
|
||||
extraConvertSize: 1024 * 32,
|
||||
clusterInferRatio: 0.1,
|
||||
|
||||
inputSampleRate: 24000,
|
||||
|
||||
//
|
||||
status: "ok",
|
||||
configFile: "",
|
||||
pyTorchModelFile: "",
|
||||
onnxModelFile: "",
|
||||
onnxExecutionProviders: []
|
||||
}
|
||||
export const DefaultServerSetting_so_vits_svc_40v2: ServerInfo = {
|
||||
srcId: 0,
|
||||
dstId: 0,
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { useState, useMemo, useEffect } from "react"
|
||||
import { VoiceChangerServerSetting, ServerInfo, ServerSettingKey, INDEXEDDB_KEY_SERVER, INDEXEDDB_KEY_MODEL_DATA, ClientType, DefaultServerSetting_MMVCv13, DefaultServerSetting_MMVCv15, DefaultServerSetting_so_vits_svc_40v2, DefaultServerSetting_so_vits_svc_40 } from "../const"
|
||||
import { VoiceChangerServerSetting, ServerInfo, ServerSettingKey, INDEXEDDB_KEY_SERVER, INDEXEDDB_KEY_MODEL_DATA, ClientType, DefaultServerSetting_MMVCv13, DefaultServerSetting_MMVCv15, DefaultServerSetting_so_vits_svc_40v2, DefaultServerSetting_so_vits_svc_40, DefaultServerSetting_so_vits_svc_40_c } from "../const"
|
||||
import { VoiceChangerClient } from "../VoiceChangerClient"
|
||||
import { useIndexedDB } from "./useIndexedDB"
|
||||
|
||||
@ -52,14 +52,18 @@ export const useServerSetting = (props: UseServerSettingProps): ServerSettingSta
|
||||
return DefaultServerSetting_MMVCv13
|
||||
} else if (props.clientType == "MMVCv15") {
|
||||
return DefaultServerSetting_MMVCv15
|
||||
} else if (props.clientType == "so_vits_svc_40" || props.clientType == "so_vits_svc_40_c") {
|
||||
} else if (props.clientType == "so-vits-svc-40") {
|
||||
return DefaultServerSetting_so_vits_svc_40
|
||||
} else if (props.clientType == "so_vits_svc_40v2" || props.clientType == "so_vits_svc_40v2_c") {
|
||||
} else if (props.clientType == "so-vits-svc-40_c") {
|
||||
console.log("default so_vits_svc_40_c")
|
||||
return DefaultServerSetting_so_vits_svc_40_c
|
||||
} else if (props.clientType == "so-vits-svc-40v2") {
|
||||
return DefaultServerSetting_so_vits_svc_40v2
|
||||
} else {
|
||||
return DefaultServerSetting_MMVCv15
|
||||
}
|
||||
}, [])
|
||||
console.log("default sss", defaultServerSetting)
|
||||
const [serverSetting, setServerSetting] = useState<ServerInfo>(defaultServerSetting)
|
||||
const [fileUploadSetting, setFileUploadSetting] = useState<FileUploadSetting>(InitialFileUploadSetting)
|
||||
const { setItem, getItem, removeItem } = useIndexedDB({ clientType: props.clientType })
|
||||
@ -178,7 +182,7 @@ export const useServerSetting = (props: UseServerSettingProps): ServerSettingSta
|
||||
// fileUploadSetting.hubertTorchModel!.filename = await fileUploadSetting.hubertTorchModel!.file!.name
|
||||
// }
|
||||
if (fileUploadSetting.clusterTorchModel) {
|
||||
if ((props.clientType == "so_vits_svc_40v2" || props.clientType == "so_vits_svc_40") && !fileUploadSetting.clusterTorchModel!.data) {
|
||||
if ((props.clientType == "so-vits-svc-40v2" || props.clientType == "so-vits-svc-40") && !fileUploadSetting.clusterTorchModel!.data) {
|
||||
fileUploadSetting.clusterTorchModel!.data = await fileUploadSetting.clusterTorchModel!.file!.arrayBuffer()
|
||||
fileUploadSetting.clusterTorchModel!.filename = await fileUploadSetting.clusterTorchModel!.file!.name
|
||||
}
|
||||
|
@ -24,9 +24,9 @@ export const useWorkletNodeSetting = (props: UseWorkletNodeSettingProps): Workle
|
||||
return DefaultWorkletNodeSetting
|
||||
} else if (props.clientType == "MMVCv15") {
|
||||
return DefaultWorkletNodeSetting
|
||||
} else if (props.clientType == "so_vits_svc_40" || props.clientType == "so_vits_svc_40_c") {
|
||||
} else if (props.clientType == "so-vits-svc-40" || props.clientType == "so-vits-svc-40_c") {
|
||||
return DefaultWorkletNodeSetting_so_vits_svc_40
|
||||
} else if (props.clientType == "so_vits_svc_40v2" || props.clientType == "so_vits_svc_40v2_c") {
|
||||
} else if (props.clientType == "so-vits-svc-40v2") {
|
||||
return DefaultWorkletNodeSetting_so_vits_svc_40v2
|
||||
} else {
|
||||
return DefaultWorkletNodeSetting
|
||||
|
@ -38,7 +38,7 @@ def setupArgParser():
|
||||
parser.add_argument("--colab", type=strtobool,
|
||||
default=False, help="run on colab")
|
||||
parser.add_argument("--modelType", type=str,
|
||||
default="MMVCv15", help="model type: MMVCv13, MMVCv15, so-vits-svc-40, so-vits-svc-40v2, so-vits-svc-40v2_tsukuyomi")
|
||||
default="MMVCv15", help="model type: MMVCv13, MMVCv15, so-vits-svc-40, so-vits-svc-40v2")
|
||||
parser.add_argument("--cluster", type=str, help="path to cluster model")
|
||||
parser.add_argument("--hubert", type=str, help="path to hubert model")
|
||||
parser.add_argument("--internal", type=strtobool, default=False, help="各種パスをmac appの中身に変換")
|
||||
@ -129,7 +129,7 @@ if __name__ == 'MMVCServerSIO':
|
||||
if CONFIG and (MODEL or ONNX_MODEL):
|
||||
if MODEL_TYPE == "MMVCv15" or MODEL_TYPE == "MMVCv13":
|
||||
voiceChangerManager.loadModel(CONFIG, MODEL, ONNX_MODEL, None)
|
||||
elif MODEL_TYPE == "so-vits-svc-40" or MODEL_TYPE == "so-vits-svc-40v2" or MODEL_TYPE == "so-vits-svc-40v2_tsukuyomi":
|
||||
elif MODEL_TYPE == "so-vits-svc-40" or MODEL_TYPE == "so-vits-svc-40v2" or MODEL_TYPE == "so-vits-svc-40_c":
|
||||
voiceChangerManager.loadModel(CONFIG, MODEL, ONNX_MODEL, CLUSTER_MODEL)
|
||||
else:
|
||||
voiceChangerManager.loadModel(CONFIG, MODEL, ONNX_MODEL, CLUSTER_MODEL)
|
||||
|
@ -35,34 +35,18 @@ def setModelType(_modelType: str):
|
||||
|
||||
|
||||
def getFrontendPath():
|
||||
if modelType == "MMVCv15":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "MMVCv13":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "so-vits-svc-40":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "so-vits-svc-40v2":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "DDSP-SVC":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "so-vits-svc-40_c":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") \
|
||||
else "../client/demo_v13/dist"
|
||||
return frontend_path
|
||||
# if modelType == "MMVCv15":
|
||||
|
||||
|
||||
def getFrontendPath2():
|
||||
if modelType == "MMVCv15":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v15") if hasattr(sys, "_MEIPASS") else "../client/demo_v15/dist"
|
||||
elif modelType == "MMVCv13":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
elif modelType == "so-vits-svc-40":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_so-vits-svc_40") if hasattr(sys, "_MEIPASS") else "../client/demo_so-vits-svc_40/dist"
|
||||
elif modelType == "so-vits-svc-40v2":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_so-vits-svc_40v2") if hasattr(sys, "_MEIPASS") else "../client/demo_so-vits-svc_40v2/dist"
|
||||
elif modelType == "DDSP-SVC":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_DDSP-SVC") if hasattr(sys, "_MEIPASS") else "../client/demo_DDSP-SVC/dist"
|
||||
elif modelType == "so-vits-svc-40_c":
|
||||
frontend_path = os.path.join(sys._MEIPASS, "dist_so-vits-svc_40_c") if hasattr(sys, "_MEIPASS") \
|
||||
else "../client/demo_so-vits-svc_40_c/dist"
|
||||
# elif modelType == "MMVCv13":
|
||||
# frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
# elif modelType == "so-vits-svc-40":
|
||||
# frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
# elif modelType == "so-vits-svc-40v2":
|
||||
# frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
# elif modelType == "DDSP-SVC":
|
||||
# frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") else "../client/demo_v13/dist"
|
||||
# elif modelType == "so-vits-svc-40_c":
|
||||
# frontend_path = os.path.join(sys._MEIPASS, "dist_v13") if hasattr(sys, "_MEIPASS") \
|
||||
# else "../client/demo_v13/dist"
|
||||
return frontend_path
|
||||
|
Loading…
x
Reference in New Issue
Block a user