ACRCloud provides cloud Automatic Content Recognition services for Audio Fingerprinting based applications such as Audio Recognition (supports music, video, ads for both online and offline), Broadcast Monitoring, Second Screen, Copyright Protection and etc.
This SDK support record by microphone, and you can run it on Winphone(ARM) and Windows PC(X86 and X64).
Follow one of the tutorials to create a project and get your host, access_key and access_secret.
Introduction all API.
class ACRCloudExtrTool {
public void CreateFingerprint(byte[] pcmBuffer, out byte[] fp);
/**
*
* create "ACRCloud Fingerprint" by wav audio buffer(RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz)
*
* @param pcmBuffer query audio buffer
* @param fp out fingerprint
*
*
**/
}
public class ACRCloudRecognizer
{
/**
*
* recognize by wav audio buffer(RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 8000 Hz)
*
* @param wavAudioBuffer query audio buffer
* @param wavAudioBufferLen the length of wavAudioBuffer
*
* @return result
*
**/
public string Recognize(byte[] wavAudioBuffer, int wavAudioBufferLen)
}
public class ACRCloudRecorder
{
}
public class ACRCloudClient : Page
{
}
run the project ACRCloudWinPhoneSDK:
private void stopbtn_Click(object sender, RoutedEventArgs e)
{
if (client != null)
{
client.Cancel();
}
resultTextBlock.Text = "stoped";
}
private void startbtn_Click(object sender, RoutedEventArgs e)
{
var config = new Dictionary<string, object>();
// Replace "XXXXXXXX" below with your project's host, access_key and access_secret
config.Add("host", "XXXXXXXX");
config.Add("access_key", "XXXXXXXX");
config.Add("access_secret", "XXXXXXXX");
client = new ACRCloudClient(this, config);
client.Start();
resultTextBlock.Text = "recording";
}
void IACRCloudClientListener.OnResult(string result)
{
resultTextBlock.Text = result;
}