하나의 옵션은 AudioTrack을 사용하는 것입니다. API 3부터 사용할 수 있으며 널리 사용됩니다. 왜곡하려는 오디오 파일의 빈도 및 피치를 수정하는 데 도움이됩니다. 높은 피치는 찾고 있던 사운드와 같은 다람쥐를 줄 것입니다.
그러나 나이가 들어서 AudioTrack을 구현하기가 어려울 수 있습니다. Android의 soundpool api를 사용해보세요. 유연하고 한 번에 수십 개의 사운드를 재생할 수 있으며 피치/주파수를 매우 쉽게 수정할 수 있습니다. 여기
는 (작동) 나는 그것을 테스트하는 방법입니다
SoundPool soundPool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
boolean isSoundLoaded = false;
float frequencyPitch = 1.3f; // tweak this. it accepts any number between 0.5f and 2.0f
int soundID = soundPool.load(filePath+fileName, 1);
soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
@Override
public void onLoadComplete(SoundPool soundPool, int sampleId, int status) {
isSoundLoaded = true;
if(isSoundLoaded)
{
soundPool.play(soundID, 1f, 1f, 1, 0, frequencyPitch);
}
}
});
내가 아는 한 그에 대한 라이브러리가 없습니다. 당신이 직접 코딩해야합니다. StackOverflow 당신에게 준비 코드를 제공하지 않습니다, 오직 어떻게 할 수있는 아이디어. – Leandros
@Leandros +1. NDK를 통해 사용할 수있는 C 라이브러리가 있다는 것을 알고 있습니다. 분명히하기가 더 어렵지만 가능합니다. – mtmurdock
지금, 안드로이드에서 사용할 수있는 음성 모핑 응용 프로그램이 많이 있습니다. 아마도 모두 자신의 음성 모핑 논리를 코딩했다고 말할 수 있습니까? 작업은 복잡하지만 상당히 표준이므로 아직 사용 가능한 라이브러리에 대한 아이디어는 여전히 열려 있습니다. 그러나 예, 사용자 정의를 더 많이 수행하면 처음부터 코딩해야 할 수도 있습니다. 어쨌든 모든 방향에서 통찰력을 찾고 있습니다. –