Exemple #1
0
int ProcessSelelct(const char *szAudioPath, std::string &szResultString){
	myhash.VoteInit();
	fingerprint.ExtractPair(szAudioPath, myhash, 0, (float)0.98, 0, 1);
	fingerprint.UnInit();
	fingerprint.ExtractPair(szAudioPath, myhash, 64, (float)0.98, 0, 1);
	fingerprint.UnInit();
	fingerprint.ExtractPair(szAudioPath, myhash, 128, (float)0.98, 0, 1);
	fingerprint.UnInit();
	fingerprint.ExtractPair(szAudioPath, myhash, 192, (float)0.98, 0, 1);
	fingerprint.UnInit();
	size_t offset;
	size_t result = myhash.VoteResult(offset);
	printf("识别结果:\n");
	printf("歌名: %30s, 正在播放:第 %10f 秒.\n", myhash.song_list[result], (float)(offset*(float)FRAME_HOP / 8000.0));
    printf("------------\n");
	szResultString = myhash.song_list[result];
	return 0;
}