前提・実現したいこと
「ド・レ・ミ・ファ・ソ・ラ・シ・ド」を各3秒ずつ順に鳴らすwavファイルを作成する意図で下のコードを書きましたが、生成したwavファイルが再生できません。なにか問題があるようですが、解決しなかったので質問しました。python初心者ですが、よろしくお願いします!
該当のソースコード
# -*- coding: utf-8 -*- import numpy as np from scipy.io.wavfile import write Amp = 1.0 def GenFreq(Fc, Fs, dur): delta = 1./Fs # サンプリング間隔 Nmax = Fs * dur # サンプル点の数 t = np.arange(Nmax) * delta x = Amp * np.sin(2. * np.pi * Fc * t) return x Fs = 22100. # サンプリング周波数 Fcs = (262, 294, 330, 349, 392, 440, 494, 523) y = GenFreq(Fcs[0], Fs, 3) for i in [1,2,3,4,5,6,7]: y = np.append(y, GenFreq(Fcs[i], Fs, 3)) # y に音声波形を入れたものとしてファイルを保存 fname = 'MkSnd4Test.wav' write(fname, int(Fs), y)
試したこと
yにGenFreq()で作成した配列を連結していこうと思い、調べたところnp.appendというものがあったので使用しました。
補足情報(FW/ツールのバージョンなど)
環境はGoogleのColabでgoogle driveをマウントしながら実行しています。
回答1件
あなたの回答
tips
プレビュー