1

我有一个实时音频流,我尝试使用 GNSDK(3.06) java 包装器对其进行指纹识别和搜索。我的代码基于 musicid_stream 示例。

我使用代码:

gnMusicID.fingerprintBegin(
GnFingerprintType.kFingerprintTypeGNFPX, 
44100, 
16, 
2
);

/* write audio to the finger printer */
gnMusicID.fingerprintWrite(audioData, audioData.length);

/* does the finger printer have enough audio? */
gnMusicID.fingerprintEnd();

其中 audioData 是音频 PCM 的 byte[]

我正在使用您推荐使用的参数在您的 API 参考中查找信息:

  • 录音应该多长时间?最小秒数?
  • 我应该尝试 GnFingerprintType.kFingerprintTypeStream3 \ GnFingerprintType.kFingerprintTypeStream6 作为 GnFingerprintType 吗?
  • 使用更高的采样率?

当我录制现场音频时,我的音频缓冲区可能在歌曲期间的任何位置。

请建议。

谢谢。

4

1 回答 1

2

我发现音乐流不干净,并想出了如何获得更好的流...

仅供参考:我目前使用 6 秒的录音和上述参数,并获得了相当不错的结果。

于 2014-07-17T08:15:40.707 回答