Я искал везде, и я не мог понять, как извлечь функцию MFCC с помощью TarsosDSP на Android. Я знаю, как получить FFT из файла. Любая помощь?Как получить MFCC с TarsosDSP?
2
A
ответ
1
Смотреть официальный github page
MFCC тестовый файл
public class MFCCTest {
// private static int counter = 0;
@Test
public void MFCCForSineTest() throws UnsupportedAudioFileException{
int sampleRate = 44100;
int bufferSize = 1024;
int bufferOverlap = 128;
final float[] floatBuffer = TestUtilities.audioBufferSine();
final AudioDispatcher dispatcher = AudioDispatcherFactory.fromFloatArray(floatBuffer, sampleRate, bufferSize, bufferOverlap);
final MFCC mfcc = new MFCC(bufferSize, sampleRate, 40, 50, 300, 3000);
dispatcher.addAudioProcessor(mfcc);
dispatcher.addAudioProcessor(new AudioProcessor() {
@Override
public void processingFinished() {
}
@Override
public boolean process(AudioEvent audioEvent) {
return true;
}
});
dispatcher.run();
}
}
и TestUtilities audioBufferSine()
public class TestUtilities {
/**
* Constructs and returns a buffer of a two seconds long pure sine of 440Hz
* sampled at 44.1kHz.
*
* @return A buffer of a two seconds long pure sine (440Hz) sampled at
* 44.1kHz.
*/
public static float[] audioBufferSine() {
final double sampleRate = 44100.0;
final double f0 = 440.0;
final double amplitudeF0 = 0.5;
final double seconds = 4.0;
final float[] buffer = new float[(int) (seconds * sampleRate)];
for (int sample = 0; sample < buffer.length; sample++) {
final double time = sample/sampleRate;
buffer[sample] = (float) (amplitudeF0 * Math.sin(2 * Math.PI * f0 * time));
}
return buffer;
}
0
вы можете получить КМПЦ под событие процесса, я думаю, что это для каждого кадра
int sampleRate = 16000;
int bufferSize = 512;
int bufferOverlap = 128;
new AndroidFFMPEGLocator(this);
final List<float[]>mfccList = new ArrayList<>(200);
final AudioDispatcher dispatcher = AudioDispatcherFactory.fromPipe(audioFilePath, sampleRate, bufferSize, bufferOverlap);
final MFCC mfcc = new MFCC(bufferSize, sampleRate, 20, 50, 300, 3000);
dispatcher.addAudioProcessor(mfcc);
dispatcher.addAudioProcessor(new AudioProcessor() {
@Override
public void processingFinished() {
}
@Override
public boolean process(AudioEvent audioEvent) {
mfccList.add(mfcc.getMFCC());
return true;
}
});
dispatcher.run();
Смежные вопросы
- 1. Как получить функции mfcc с октавой
- 2. TarsosDSP Clap Detection
- 3. Как сделать алгоритм MFCC?
- 4. Как извлечь MFCC с помощью C#
- 5. Проверка MFCC
- 6. TarsosDSP Pitch Analysis for Dummies
- 7. MFCC в распознавании речи
- 8. манипулирование файлом MFCC
- 9. Расчет Delta MFCC
- 10. Использование FFT в библиотеке TarsosDSP в android
- 11. Дельта-коэффициенты от mfcc
- 12. MFCC означает, нормализация
- 13. Поезд MFCC с использованием машинного алгоритма обучения
- 14. Код MATLAB для расчета MFCC
- 15. Простой детектор слова с использованием MFCC
- 16. Проблемы с фильтром нижних частот с использованием TarsosDSP для Android
- 17. Как применять коэффициенты MFCC для DTW
- 18. Как взять первые 13 коэффициентов в MFCC
- 19. распознавание речи с использованием HMM или MFCC
- 20. Как выполнить DTW по массиву коэффициентов MFCC?
- 21. Звуковой дескриптор MFCC в C#
- 22. Как сравнить два векторных объекта MFCC или их сходство между векторным признаком MFCC двух речевых высказываний
- 23. Как размер функции mfcc влияет на нейронную сеть с возвратом
- 24. Как подготовить алгоритм машинного обучения с использованием векторов коэффициентов MFCC?
- 25. RealTime Pitch Shifting с использованием TarsosDSP на Android
- 26. Распознавание речи с помощью LSTM с функциями, извлеченными в MFCC
- 27. У librosa mfcc есть выбор частоты API
- 28. Формат данных MFCC для обучения HMM
- 29. Являются функциями MFCC для распознавания речи
- 30. Библиотека для обучения GMM из MFCC