その昔。
電子楽器の種類に、「プレイバックシンセ」とか「サンプラー」と呼ばれるものがありました。
(今も在るかもしれません)
原理はシンプルで、
実在の音を録音したデータを、再生速度を変えて音階にしよう、というものです。
レコードやテープを早回しにするとキュルキュル高い音になりますよね。あんな感じです。
ドの音を1.5倍速でソの音に。2倍速で1オクターブ上のドの音に。
子供の頃、仕組みに興味を感じつつ、機材が高価すぎて手が届きませんでした。
今回、それっぽい演奏処理を、400円のESP32ボードで電子工作してみました。
ESP32ボードを用意します。
最初DAC出力にイヤホンを直結してジャイアンの歌声を流そうとしたら、出力が壊れてしまったので
25pin→26pinに変更して、抵抗2kΩを追加しました。
音のデータを作成。
手持ちのおもちゃオルガン、ヤマハSK1XGで
弦楽器の音を弾き、パソコンにWav形式で録音します。16kHz、3.5秒間。
Wav形式のファイルを16進数に変換し、C言語プログラムの配列にして
Arduino IDEに貼り付けます。
前回の矩形波演奏プログラムを変更して、
単純なアップダウンの代わりに、変換したWavデータの数値に従ってDACから電圧を出力しました。
今回も秒間6万回、5和音をリアルタイムで計算しています。
画像の下側が、前回の矩形波演奏の波形。カクカクしています。
上側が、今回演奏した波形。山が複雑になっているのが分かります。
出来上がったものが、こちら。
弦楽器のほか、ネコの鳴き声でも試して、合奏(合唱?)できました。
音の終端の処理とか、音を掛け算してみたいとか、いろいろ試したいことがありますが・・・。
一区切りついたので、
またしばらくの間、電気工事士の試験勉強に戻ろうと思います。
おしまい。