使用 tarosdsp 提取多个音频特征
Posted
技术标签:
【中文标题】使用 tarosdsp 提取多个音频特征【英文标题】:extract multiple audio features using tarosdsp 【发布时间】:2019-08-26 15:21:36 【问题描述】:我正在使用 tarosdsp 从音频中提取特征。我已经能够提取 mfcc 特征。要提取其他特征,例如过零率、音高,我是否需要定义新的音频调度程序,或者我应该使用相同的调度程序并添加音频处理器。一个例子会有所帮助。
mfcc 和 pitch 可以分开做
final List<float[]>mfccList = new ArrayList<>(200);
String file3= source+'/'+file2.getName();
int sampleRate = 44100;
int bufferSize = 8192;
int bufferOverlap = 128;
AudioDispatcher dispatcher = AudioDispatcherFactory.fromPipe(file3, 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)
mfcc.process(audioEvent);
//final float audio_float[] = mfcc.getMFCC();
audio_float=mfcc.getMFCC();
//mfccList.add( mfcc.getMFCC());
System.out.print(Arrays.toString(audio_float));
我想将数组中的所有特征保存为 [mfcc,pitch,zcr]
【问题讨论】:
【参考方案1】:将相同的调度程序与新的 AudioProcessor 一起使用。
【讨论】:
感谢您的回答以上是关于使用 tarosdsp 提取多个音频特征的主要内容,如果未能解决你的问题,请参考以下文章