extract max and min frequency of a spectrum

6 ビュー (過去 30 日間)
Mudhar Altikriti
Mudhar Altikriti 2024 年 12 月 29 日
コメント済み: Star Strider 2025 年 1 月 1 日
How Determine the bandwidth as well as the minimum and maximum frequency of each audio channel by writing a Matlab code?

採用された回答

Star Strider
Star Strider 2024 年 12 月 29 日
There are some Signal Processing Toolbox functions that may do what you want.
See for example the powerbw function. There are similar functions linked to it in the See Also section of its documentation.
  5 件のコメント
Mudhar Altikriti
Mudhar Altikriti 2025 年 1 月 1 日

🙏👍

Star Strider
Star Strider 2025 年 1 月 1 日
Thank you!

サインインしてコメントする。

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2024 年 12 月 29 日
You could fft(), and take the first half of the results, and find the last bin such that abs(BIN)>0 . That last bin will correspond to the highest frequency. Likewise, the first such bin (other than the very first bin) with abs()>0 corresponds to the minimum frequency.
However... fft() is prone to round-off errors, and there is a high chance of numeric noise. So you want abs(BIN)>TOLERENCE to ignore the numeric noise.
But... in practice, if the audio was not created by ifft(), then chances are high that abs(BIN) is non-zero for extended periods. Real audio seldom represents a repeating signal, and the effect of silence is to effectively add a sinc() signal to the fft, so the high frequency bins of fft of real audio almost always have non-zero content.
  1 件のコメント
Mudhar Altikriti
Mudhar Altikriti 2025 年 1 月 1 日
編集済み: Mudhar Altikriti 2025 年 1 月 1 日

Thanks. I hope it will help.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSpectral Measurements についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by