Detect from radio audio stream if it's speech or music

I want to record a radio stream from FM radio. The audio of the radio signal will be input in the line-in of a computer.

This audio signal contains speech (spoken words) and music. I want to recognize in real-time if it's music or speech. Maybe the frequency will do it. How to implement something like this? I know this thread Algorithm to determine if audio is music, but my problem is simpler.

I hope someone has a made something like this or can tell me where to start. The most lovely way of doing this would be a program that listens to the line in of my computer and sends a change-signal to another program or script when it detects a change in speech or music. The other program or script saves the recording until it receives the change-signal and records further.

The goal is to get files which contain only music or speech.


Frequency detection is a good place to start.

"The voiced speech of a typical adult male will have a fundamental frequency from 85 to 180 Hz, and that of a typical adult female from 165 to 255 Hz." - Wikipedia Voice Frequency.

Isolating the frequency will, at the very least, reduce the amount of data to be processed further. Analyzing audio for constant/steady rhythm would be the next step as bass instruments/sounds audibly start at around 50 Hz and work up from there.

链接地址: http://www.djcxy.com/p/64300.html

上一篇: 创建自定义语音命令(GNU / Linux)

下一篇: 如果是语音或音乐,则从无线电音频流中检测