fc2ブログ

Raspberry PiでRoland SC-55mkIIを使う(2)

 前回の続きです。前回はレガシー音源であるRolandのSC-55mkIIをRaspberry Pi4のターミナルからaplaymidiコマンドで標準MIDIファイル(SMF)を再生する所までお話ししました。

それに至るまでの試行錯誤の中、できずに保留したのは以下の2点でした。
 ① USB-MIDI変換ケーブルではなく、シリアル通信で直接音源にアクセスすること
 ② MuseScoreというアプリ経由で標準MIDIファイル(SMF)を再生すること

 ①はUSB-MIDI変換ケーブルが発売される前のPCと音源を接続する技術で、専用のRS-232Cケーブルを用いていたことからRS-MIDIと呼ばれています。ターミナルソフトのminicomで通信確認して、Pythonで簡単なプログラムを作ろうかなと考えていますが、現時点でうまく行っていません・・。

 ②は前回うまく行きませんでしたが、今日確認すると問題なく設定ができました。おそらくRaspberry Piの再起動や、音源のON/OFFなどでRaspberry Pi側でMIDIポートが認識できたためと推測しています。ちなみに設定前の状態は以下の通りです。MuseScoreSetting_before_230505.png今回、MIDI InputとMIDI OutputをUSB-MIDIの変換ケーブルであるUX16に変更しました。MuseScoreSetting_after_230505.pngMIDIファイルを再生すると、問題なく音源SC-55mkIIで再生できました。MuseScore_run_230505.png
 取り急ぎ、Raspberry Pi上でMuseScoreアプリで打ち込みをしてSC-55mkIIで再生する環境は構築できました。暇を見つけて遊んでみようと思います。
スポンサーサイト



Raspberry PiでRoland SC-55mkIIを使う(1)

 久々にMIDI音源を触りたい衝動に駆り立てられました。いつもの思いつきです・・。

 手持ちの音源は30年ほど前に購入した、RolandのSC-55mkIIです。大学の一時期にコンピュータミュージック(MIDI)にハマっていた時があることは、5年前のブログでもお話をしましたが、その後、この音源は利用されることもなく、部屋のインテリアとして存在感を示していました。
 最近はソフトシンセという便利なものが簡単に利用でき、ミュージシャンでない素人があえてハードウェアの音源を利用することは少ないのかな?とも思います。

 この音源は、かなり使っていなかったので、埃が筐体内に入っていないこと、基板に劣化箇所がないことを確認しました。蓋を開けると、思った以上に綺麗な状態でした。SC-55mk2_1_230504.png基板も密な実装ではなく、空間的にゆったりした回路設計ですね。メインのチップはTC6116AFという音源DSP(Digital Signal Processor)です。SC-55mk2_2_230504.png
 さて、蓋を閉めて、いざPCと接続しようとしましたが、30年の歳月はPC側のインターフェースにうまく対応しておらず大変難儀しました・・。

 PCと音源の接続はYAMAHAのUX16という片側がUSB、もう片側がMIDIのDINコネクタ(INとOUT)の付いたケーブルを使いました。ちなみに、この製品は2001年に発売されましたがすでに生産終了しています。
 通常ならばPCにドライバを入れれば認識し機能するはずなのですが、MacBookAir(Early2014 Big Sur:そろそろ買い直し?)ではドライバはインストールできても、UX16のUSBケーブルをPCに接続後に認識しませんでした・・。

 PCと音源の接続には、シリアル通信でも行けるのでトライしました。手持ちに「ミニDIN8ピン」のプラグがないので、ジャンパ線を駆使して配線しましたが、急な路線変更で情報不足でうまく行きませんでした。後日、再トライしようと思います。SC-55mk2_3_230504.png
 結局、一旦、MacBookAirはあきらめて、Raspberry Pi4で試してみようと思いました。YAMAHAのUX16をRaspberry PiのUSBポートに接続すると、見事に認識!RaspPiSetting_1_230504.png その後、MuseScoreというアプリ経由で標準MIDIファイル(SMF)を再生しようと試みましたが、うまく行かず・・。設定が不十分??後日、再トライ・・。

 路頭に迷いつつ、ネットで情報をかき集めているうちに、ターミナルから「aplaymidiコマンド」を打ち込めば良いことに気づきました。RaspPiRun_0_230504.pngaplaymidiコマンドに「-p」オプションをつけ、ポート番号とmidiファイル名を付与することで通信ができそうです。

 以下のコマンドをたたくと、Portは16:0であることが分かりました。
aplaymidi -l
RaspPiRun_1_230504.png最終的に
aplaymidi -p 16:0 midi_file_name
で音源にデータが送信され、音源から演奏が始まりました。SC-55mk2_4_230504.png
 長い道のりでしたが、レガシー音源であるRolandのSC-55mkIIをRaspberry Piから操作して音を鳴らすことができました。次回は今回保留にしていた内容について調べていこうと思います。

Pythonで音声波形を作る

 前回前々回にソフトシンセのamsynthのお話をしましたが、amsynthを見つける前に「音声波形」をプログラミングで合成できないかを調べていました。すぐに見つかりました。このサイトの記事を参考にPythonで簡単にコーディングできました。参考にさせていただきありがとうございました。
import numpy as np
from scipy.io import wavfile
import scipy.signal

frequency = 440.0 # 生成するサイン波の周波数
seconds = 1.0 # 生成する音の秒数
rate = 44100 # 出力する wav ファイルのサンプリング周波数

phases = np.cumsum(2.0 * np.pi * frequency / rate * np.ones(int(rate * seconds)))
# 波形を生成
wave = np.sin(phases) # sine wave
# wave = scipy.signal.sawtooth(phases) # saw wave
# wave = scipy.signal.square(phases) # pulse wave

# 16bit の wav ファイルに書き出す
wave = (wave * float(2 ** 15 - 1)).astype(np.int16) # 値域を 16bit にする
wavfile.write("sine.wav", rate, wave)
#wavfile.write("saw.wav", rate, wave)
#wavfile.write("pulse.wav", rate, wave)
 sin波、saw(ノコギリ)波、pulse(矩形)波の三種類を作成し、音声と波形の確認、および周波数解析を「Audacity」で行いました。

1.sin波

sine_180915.png
2.saw波

saw_180915.png
3.pulse波

pulse_180915.png sawの方がpulseよりも周波数成分が多いようですね。より複雑な波形ということでしょう。
また、今度、ソフトシンセのオシレータの勉強する時に復習しようと思います。

amsynthで遊ぶ(2)

 前回の続きです。今回はamsynthをインストールし、PCで録音できる所までお話します。

インストールは以下の手順で行いました。
1.amsynthのサイトからlinux版(Ubuntu環境で利用)をダウンロードします。amsynth_downlodad_180915.png2.ダウンロードファイルを解凍します。インストール方法は、解凍したフォルダのINSTALLというテキストファイルに記載されていました。その手順に従い、インストールします。コマンドの詳細はそのテキストファイル内に書かれてあります。
./configure
make
make check
sudo make install
sudo make installcheck
sudo make clean
エラーが出なければインストール完了です。アプリケーションの中のamsynthのアイコンをクリックするか、ターミナルからamsynthと入力し、リターンで起動します。amsynth_icon_180915.png 次に、Virtual keyboardをインストールしますが、デフォルトでインストールされていませんので、ターミナルから以下のコマンドを実行します。
sudo apt install vkeybd
これで、Virtual keyboardのインストールも完了です。amsynth_keyboard_180915.png
 次に、シンセから出る音をPCで録音する方法ですが、このサイトを参考に、Ubuntuソフトウェアから「PulseAudio音量調整」と「audacity」をインストールしました。pulseaudio_icon180915.png PulseAudio音量調整を起動し、入力装置を選択し、「見る」で「All Input Devices」を選択し、チェックを押して、背景をグレーにすれば完了です。(グレーに変化したのが非常に分かりにくいです・・)record_setting180915.png Audacityは、直感的に操作できるレコーダでした。なかなか良くできていて、多機能です。audacity_180915.png 今後、ソフトシンセで遊ぶ時に一緒に使ってみようと思います。

amsynthで遊ぶ(1)

 大学の一時期にコンピュータミュージック(MIDI)にハマっていた時があり、NEC PC-9801でRolandのLA音源SC-55mkⅡを鳴らして遊んでいました。年齢層が分かってしまいますね・・。
 LA音源はパソコンのC-busに指すタイプで、アナログシンセ並みに音を自由に触れたのが楽しかったです。
 おっさんになっても、学研のアナログシンセで遊んでしまいました。ただ、相変わらず期待する音を出すのは難しいですね。

 いつものことながら、現実逃避で、ふと、「ソフトシンセ」でいいから遊べそうな物はないかとネット検索していたら、amsynthというものを見つけました。早速インストールして味見をしてみました。amsynth_1809012.png
結構遊べそうです。
 個人的には、電子工作でMy-アナログシンセを作りたくて『 達人と作る アナログシンセサイザー自作入門 改訂版2017 』を購入したのですが、シンセの基礎知識がないと理解が非常に難しいと感じ、まだ読破できていません。ソフトシンセで遊びながら、ある程度の基礎知識を身につけようと思います。
今回はここまでで、amsynthのインストール方法の詳細は次回お話します。

ご訪問者数

(Since 24 July, 2016)

タグクラウド


プロフィール

Dr.BobT

Author: Dr.BobT
興味のおもむくままに生涯考え続けるエンジニアでありたい。

月別アーカイブ

メールフォーム

名前:
メール:
件名:
本文: