boochow

Synthesizer

logue SDK 2.0を使ってみた(2)

前回の続きです。 logue SDK 2.0の勉強のために、とりあえず簡単なディレイを作ってみました。 以前、VeryShortという超短時間のディレイを作りましたが、その移植版です。 logue SDK 2.0で...
Synthesizer

logue SDK 2.0を使ってみた(1)

これまで、logue SDKを使った開発の記事をいくつか書いてきましたが、この度、drumlogueを購入しましたので、drumlogue用の新しいSDK「logue sdk 2.0」を使ってみました。 従来のlogue SDK(1....
日記

ChatGPTにコードを書いてもらったら間違ってたけど感心した話

ChatGPT、いろいろなことができて面白いですよね。 Arduinoなどのプログラムを書いてもらうという試みもいろいろされているようですが、私も今回ChatGPTにプログラムを書いてもらってみました。 昨年、PowerApps...
日記

2022年の振り返りと2023年の抱負

今年も今日で終わりです。 この1年は、思っていたほど活動はできなかったのですが、それでも夏以降は昨年よりは少し時間の余裕があった気がします。これはマンションの理事会の任期が終わってマンション管理の仕事が無くなったことが大きいです。 ...
RP2040

MicroPythonでLCDにダブルバッファによる描画を行うには

以前公開したMicroPython用のST7735ドライバのリポジトリで、以下のような質問がありました。 「ゲームを作りたいのですが、update相当の機能はないのでしょうか?」 このupdateというのは、おそらくオフスクリーンの...
日記

PowerAppsとPowerAutomateを使ってみた話

この一か月ほど、仕事のほうでちょこっとMicrosoft PowerAppsとPowerAutomateを使っていましたので、感想などをメモしておきます。 数百レコード程度の小さなデータを扱う事務作業があり、これまでExcelを使って...
Synthesizer

JavaScriptで書かれた電子回路シミュレータcircuit.js

先日ビデオを作っていて、シンセサイザの波形のアニメーションが欲しくなり、いろいろとツールを探した結果見つけたのが、この「circuit.js」です。 これは電子回路のシュミレータで、元はJavaで書かれていたものをJavaScript...
Arduino

VRA8-UのためのMIDI入力+PWMオーディオ出力シールドを作成

先日、Arduinoで動くシンセサイザーVRA8-Uの話を書きましたが、このシンセサイザーは取っておきたいので、ブレッドボード上で組んでいた回路をユニバーサル基板を使ったシールドにしてみました。 MIDI部分も含めた回路は以下のとおり...
Synthesizer

PythonスクリプトのEXE化を試してみた

1年ほど前に、とあるPythonスクリプトを作成しました。このスクリプトの話をYouTubeにアップロードしておいたところ、たまに問い合わせを頂きます。 必要に迫られて作成したもので、割とやっつけ仕事(あまり綺麗ではないコード...
Arduino

Arduino UNOだけで作るシンセサイザー「VRA8-U」を動かしてみた

今年もなんとかMaker Faire Tokyoを見に行けたのですが、Musicコーナーで目ならぬ耳を奪われたのがこちらの展示でした。 Ryo Ishigakiさんの作品で、一聴してとても良い音(シンセサイザーとして)がし...
日記

VMWareの仮想ディスク(ファイル)のコピーが遅い問題

私は開発を主にノートパソコンで行っています。今まで使っていたノートパソコンは10年近く前に購入したものだったのですが、だいぶガタが来たので、買い替えをしました。 Linux環境は、VMPlayerをwindows上で動かしていました。新し...
Synthesizer

BLIT(Band Limited Impulse Train)による鋸波の生成(3)

前回、BLITを使って鋸波をうまく生成できることが確認できましたので、今度はlogue SDKで実装してみます。 今回のコードおよびバイナリは以下のリポジトリに置いてあります。 実装にあたって、追加で考慮が必要な点が...
Synthesizer

BLIT(Band Limited Impulse Train)による鋸波の生成(2)

前回、BLITについて簡単に説明しました。要約しますと、 ・倍音成分をある周波数でカットした鋸波は、時間軸に沿ってBLITを積分すると生成できる。 ・BLITは、以下の数式で表される。 $$y(n) = (M/P) Sinc{_M...
Synthesizer

BLIT(Band Limited Impulse Train)による鋸波の生成(1)

前回はエイリアスノイズの出ない鋸波を、ウエーブテーブルを使って生成しました。 この方法の欠点は、沢山のウエーブテーブルが必要になる点です。 PCのソフトシンセでは問題になりませんが、logue SDKではデータとコード合わせて32K...
Synthesizer

改めて、ウエーブテーブルシンセサイザを作る(5)

今回は、前回までの内容を使って鋸波のオシレータを作ってみます。 なおコードは以下で公開しています。 前回書いたように、logue SDKでは鋸波のウエーブテーブルが提供されていますが、テーブル数は7つと少なめです。 実...