Python | librosaを用いて信号を生成する(toneとchirp)
- 2023.08.28
- librosa(Pythonプログラム)
今回は「信号の生成」として「tone」と「chirp」を使ってみます。
目次
librosa.tone(特定のHzのcos波を生成)
公式ページはこちら
特定のHzのsin波を生成します。
# 440Hzを1秒間流す
tone = librosa.tone(440, duration=1)
IPython.display.Audio(data=tone, rate=sr)
サンプリングレートが 22050Hzの場合に、lengthを22050とすれば、1秒間の音声を生成することができます。(要は上記プログラムと同様)
# 440Hzを1秒間流す
tone = librosa.tone(440, sr=22050, length=22050)
IPython.display.Audio(data=tone, rate=sr)
librosa.chirp(特定のHzのcos波を生成)
「チャープ」または「サインスイープ」信号を構築します。
※チャープ信号:時間経過で周波数が大きく(小さく)なる信号(wiki)
指数関数的なチャープ信号
指数関数的に音が上がります。
# 指数関数的なチャープ信号の生成(110Hzから7040Hz へ 3秒間で上昇)
chirp = librosa.chirp(fmin=110, fmax=110*64, duration=3)
IPython.display.Audio(data=chirp, rate=sr)
線形関数的なチャープ信号
線形関数的に音が上がります。
# 線形関数的なチャープ信号の生成(110Hzから7040Hz へ 3秒間で上昇)
chirp = librosa.chirp(fmin=110, fmax=110*64, duration=3, linear=True)
IPython.display.Audio(data=chirp, rate=sr)
今回は以上です。
エラー: データの取得に失敗しました。
-
前の記事
Python | librosaを用いて周波数解析を行う(チュートリアルの実行) 2023.08.28
-
次の記事
Python | librosaを用いて波形の描画 2023.08.29