PC・IT知識 Processing プログラミング 記事一覧

自分の声から3和音を生成する - PureData

更新日:


基本は"G09.pitchshift.pd"を利用

今回はこんなものを作ってみました。といってもExampleをほとんど使いまわしたものですが…

PureDataには、便利なリファレンスが多く存在します。Macの場合ですと、Pd-extendedの上で

右クリック->パッケージの内容を表示

を選択します。そして、

Contents -> Resources -> doc -> 3.audio.examples

と進むとあらびっくり。便利なexampleが沢山あるじゃないですか!楽器店で売っているようなエフェクターが一通り再現出来てしまいます。

今回は、数あるExamplesの中からG09.pitchshift.pdを使用しました。読んで字のごとく、PitchShifterですね。求めていたものそのままじゃないですか!


Arrayボックス、key入力、録音…

まあ、簡単に言ってしまうと、上記の動画はG09.pitchshift.pdを2つ作っただけです。

pd pitchshifterという形で子化しています。

…それだけだとあまりにも能がないので、いくつか機能を加えました(動画でも解説していますが)。

まず、左上にリアルタイムで入力されている音声の波形を表示するようにしました。左下を見ていただければわかりますが、metroオブジェクトで101msごとにbangを出力し、Arrayの中身を更新しています。Arrayの大きさは100です。100msにすると動かなかったので(ちゃんとした理由があったはずですが忘れてしまいました…)101msとなっています。とりあえず、metroの間隔はArrayボックスの大きさよりも大きくしてあげましょう。

ちなみに、動画ではrightのアレイボックスしか動いていませんが、これは使用しているオーディオインターフェイスがモノラル入力であったためです。ステレオ入力であれば両方ともきちんと動きますよ!

あとはkey入力によってON/OFFを切り替えられるようにしました。また、右上のでかいやつはキーに応じて一つ目のピッチシフターの音を変えることが出来るようになっています。

最後に、左下の部分で録音ができるようになっています。

open(ファイル生成)→start(録音開始)→stop(録音終了)→print(書き込み)

で、今回の場合ですとsample1.wavというファイルが生成されます(動画の音声もこのように録音されたものです)

以上です。以下にコードを置いておきます。

pitchshifter.zip

 

「面白いじゃん」と思ったらぜひシェアをお願いします!

-PC・IT知識, Processing, プログラミング, 記事一覧
-, ,

Copyright© ちゃいら随筆 , 2019 All Rights Reserved Powered by STINGER.