Audio Pitch Recognition

已完成 已发布的 Sep 22, 2009 货到付款
已完成 货到付款

The? code you write? will do the following.

1) Listen in on the microphone.

2) Detect when noise is present.

3) Return the main frequency of the sound.

For example, when I sing a note or pluck a guitar string, it will tell me what the frequency is.

## Deliverables

Must compile with Visual Studio 2005 or 2008.

Well commented,? well written? C++ classes.

Design the API first for approval before implementation.

For example, include things like Settable noise threshold, Settable data format (sample rate, bit depth, stereo/mono, etc.), Callback when noise detected.

Audio data? gathering can either be done in seperate thread if needed, or require an update function (non blocking) be called periodically in the same thread.

Keep 500 ms or so of data in a ring buffer (settable buffer size), so the data should already be available when polled for the frequency of that data.

When polled, do an FFT on the already gathered data.

If more than 1 frequency peak is present, return a list in order of each peaks' db level, up to some maximum number of isolated peaks present in the FFT.

Polled current frequency? must provide a return value in <= 0.500 seconds (Athlon 3400+ CPU).

Write one test program to verify it all works, here are 2 possible suggestions:

Write a test program that finds periods of noise, and prints out the current frequency detected every 0.5 seconds.? No printing when the input is below a settable threshhold.

Write a guitar tuner test program that continuously listens, and shows the closest string and how far off it is.

音频服务 C 编程 工程 微软 MySQL PHP 项目管理 软件构架 软件测试 视窗桌面

项目ID: #2888304

关于项目

1个方案 远程项目 活跃的Sep 22, 2009

授予:

AlifeSoft

See private message.

$68 USD 在20天内
(24条评论)
4.8