RMVPE support

This commit is contained in:
Brandon Thomas committed 2023-10-10 01:19:05 -04:00
1 parent 5b0df59055
commit d44bc695aa
3 files changed
+10 -4

No files matched your search

@@ -1,6 +1,7 @@
import { ApiConfig } from "@storyteller/components";
export enum EnqueueVoiceConversionFrequencyMethod {
Rmvpe = "rmvpe",
Crepe = "crepe",
Dio = "dio",
Harvest = "harvest",
@@ -78,8 +78,8 @@ function VcModelListPage(props: Props) {
const [autoConvertF0, setAutoConvertF0] = useState(false);
const [maybeF0MethodOverride, setMaybeF0MethodOverride] = useState<
EnqueueVoiceConversionFrequencyMethod | undefined
>(undefined);
EnqueueVoiceConversionFrequencyMethod
>(EnqueueVoiceConversionFrequencyMethod.Rmvpe);
const [semitones, setSemitones] = useState(0);
@@ -31,6 +31,9 @@ function PitchEstimateMethodComponent(props: PitchShiftProps) {
let pitchMethod = undefined;
switch (pitchMethodName) {
case "rmvpe":
pitchMethod = EnqueueVoiceConversionFrequencyMethod.Rmvpe;
break;
case "crepe":
pitchMethod = EnqueueVoiceConversionFrequencyMethod.Crepe;
break;
@@ -51,9 +54,11 @@ function PitchEstimateMethodComponent(props: PitchShiftProps) {
}
const options : DropdownOption[] = [
{ label: "DIO", value: EnqueueVoiceConversionFrequencyMethod.Dio },
{ label: "CREPE", value: EnqueueVoiceConversionFrequencyMethod.Crepe },
{ label: "RMVPE (typically best overall)", value: EnqueueVoiceConversionFrequencyMethod.Rmvpe },
{ label: "CREPE (good for noisy samples)", value: EnqueueVoiceConversionFrequencyMethod.Crepe },
{ label: "Harvest", value: EnqueueVoiceConversionFrequencyMethod.Harvest },
// NB: We no longer recommend DIO.
//{ label: "DIO", value: EnqueueVoiceConversionFrequencyMethod.Dio },
];
const selectedOption = options.find((option) => option.value === props.pitchMethod) || options[0];