1. ホーム
  2. python

[解決済み] Python で *.wav ファイルを読み込む

2022-12-02 23:34:27

質問

.wavファイルに書かれた音を解析する必要があります。そのために、私はこのファイルを数値のセット(例えば配列)に変換する必要があります。私は私がwaveパッケージを使用する必要があると思います。しかし、私はそれが正確にどのように動作するかを知りません。例えば、私は次のようにしました。

import wave
w = wave.open('/usr/share/sounds/ekiga/voicemail.wav', 'r')
for i in range(w.getnframes()):
    frame = w.readframes(i)
    print frame

このコードの結果、私は音圧を時間の関数として見ることを期待しました。それに対して、私は多くの奇妙な、謎のシンボル(16進数ではない)を参照してください。どなたか、お願いします、私を助けていただけませんか?

どのように解決するのですか?

以下の通りです。 ドキュメント , scipy.io.wavfile.read(somefile) は二つの項目からなるタプルを返します。 サンプリングレート を1秒あたりのサンプル数で表し,2番目は numpy の配列で、ファイルから読み込んだすべてのデータが格納されています。

from scipy.io import wavfile
samplerate, data = wavfile.read('./output/audio.wav')