MRDetectBpmOperation
是 NSOperation
的一个具体子类,它使用 SoundTouch 音频处理库 来检测媒体资源的 BPM。
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"song" withExtension:@"mp3"];
MRDetectBpmOperation *operation = [MRDetectBpmOperation bpmOperationWithAssetURL:fileURL];
[operation setCompletionBlockWithSuccess:^(MROperation *operation) {
NSLog(@"%f BPM", ((MRDetectBpmOperation *)operation).bpm);
} failure:^(MROperation *operation, NSError *error) {
NSLog(@"%@", error);
}];
[operation start];
要运行示例项目,克隆仓库,首先从 Example 目录运行 pod install
。
执行以下步骤:
ANDROID=1 SOUNDTOUCH_INTEGER_SAMPLES=1
添加到项目设置中的 GCC_PREPROCESSOR_DEFINITIONS
。MRDetectBpmOperation 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。