这是我在SO上的第一篇文章,我试图把我的音乐技能和计算机科学结合起来。
我使用的是AndroidStudio3.1.2和gradle 4.5,Nexus5X,API 25,Android7.1.1,Windows 7。
我非常小心地遵循这些指示:
.jar of TarsosDSP并包括在
C:\Users\Carlos\AndroidStudioProjects\Pitchbender\app\libs\TarsosDSP-Android-latestbuild.gradle:
依赖性{实现fileTree(dir:‘libs’,包括:‘*.jar’)}我能做什么?
如果我对Kotlin转换问题回答“是”,则该语句被转换为
= AudioDispatcherFactory.fromDefaultMicrophone(22050,1024,0)
然后,当我运行这个程序时,Android告诉我有一个错误,关闭了我的项目,并一直关闭我的项目。该怎么办呢?
请帮助至少运行完整代码的第一条指令:
PitchDetectionHandler pdh = new PitchDetectionHandler() {
@Override
public void handlePitch(PitchDetectionResult res, AudioEvent e){
final float pitchInHz = res.getPitch();
runOnUiThread(new Runnable() {
@Override
public void run() {
processPitch(pitchInHz);
}
});
}
};
AudioProcessor pitchProcessor = new PitchProcessor(PitchEstimationAlgorithm.FFT_YIN, 22050, 1024, pdh);
dispatcher.addAudioProcessor(pitchProcessor);
Thread audioThread = new Thread(dispatcher, "Audio Thread");
audioThread.start();问题:
您在Android中有什么简单的项目吗?这样我就可以看到我的错误是什么了?
发布于 2019-09-05 15:17:22
当我试图运行这个示例时,我遇到了类似的问题,我的解决方案(2019年9月)是添加记录权限的运行时确认。我不确定是不是同一个案子,布鲁
这是我的密码:
private boolean permissionToRecordAccepted = false;
private String [] permissions = {Manifest.permission.RECORD_AUDIO};
private static final int REQUEST_RECORD_AUDIO_PERMISSION = 200;
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
switch (requestCode){
case REQUEST_RECORD_AUDIO_PERMISSION:
permissionToRecordAccepted = grantResults[0] == PackageManager.PERMISSION_GRANTED;
break;
}
if (!permissionToRecordAccepted ) finish();
}https://stackoverflow.com/questions/52593063
复制相似问题