0
0

More than 1 year has passed since last update.

Pythonでの音声信号処理 (6) ダミーデータを鳴らす

Posted at

やりたいこと

ダミーデータを鳴らすこと

やってみた

音といえば、A(ラ)の音を使うことが多いようなので、A = 440 Hz で試してみる。

p6.py
# -*- coding: utf-8 -*-
import sys
sys.dont_write_bytecode = True

from pydub import AudioSegment
from pydub.playback import play
import Dummy as dmy

def main():

    smpl = 44100 # サンプリングレートは44.1kHz
    sec = 2      # 2秒分

    wavA = dmy.makeWave(440, smpl, sec, 32, 0, 1)

    aud = AudioSegment(
            wavA.astype("int8").tobytes(),
            sample_width=1,
            frame_rate=smpl,
            channels=1
    )

    play(aud)

if __name__ == '__main__':

    main()

環境にもよると思いますが、Windowsで実行したところ
ERR06.png
というエラーが出てしまいました。

ファイルの権限がない状況にも見えますが、フォルダ自体は存在していて書き込み権限もあり、
調べてみると、不可避な既知不具合っぽい謎現象で、

py -m pip install pyaudio

で pyaudio をインストールすることで回避できるようです。

ということで、無事に、ラの音を出すことができました。

補足

Dummy.pyはここにあります。
https://qiita.com/u1tym/items/3e2be5364e83df1b7792

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0