LFChecker公開

音声データの統合ラウドネス値を計測するツールLFCheckerを作ってみました。

当初の目的はLÖVEからC++で書いたDLLを呼び出す習作みたいなものでしたが、一往実用もできそうなのでこういう形になりました。
Windows用のGUIツールを作るにあたって使用を考えていたMAUIが一向に実用できそうな状態にならないため、他の選択肢としてLove2dを選んだ次第です。
GUI部分をLove2dで作って中身の処理をC++のDLLを呼び出す形は一度把握してしまえばデバッグもできるので十分アリですね。

現在MAUIはツールを作るうえで肝となる「エクスプローラからウィンドウ内にファイルをドラッグ&ドロップする」処理に不具合があり、
Github上のissue(他にも報告あり)でも修正が望まれています。
この機能が無いと使い勝手が大きく落ちるものなのですが、動きがないまま18ヶ月以上はそのままとなっているので他の手段を当たった方が早いとなりました。

LFCheckerのIntegrated Loudnessの測定誤差はおおむね±0.1LUFSに収まるかと思います。ただし完全に保証するものではありません。
Love2dが標準でoggとmp3を読み込めるので手軽に波形データを取れるのは楽でいいですねー。

自作VSTプラグイン(WbRotDoubler)を公開してみるテスト

先日から作っていた自作のVSTプラグインがある程度形になったので、試しに公開してみました

なにぶん自分の開発環境以外での動作テストができないので、他の環境でも動くのかどうかが不安なところです。もし試して動かない方がいましたら連絡いただけるとありがたく思います。

今回作ったエフェクトはダブラーで、音を左右に振って片側にディレイをかけるやつです。
大きいつまみが12時の方向にある時は音に変化がなく、左右どちらかに90度回った状態の時にディレイタイムが最大になります。
大きいつまみが6時の位置にある時はおそらく左右の音が反転します。

Axisつまみでステレオ感の調整らしきことができますが、使用の際は基本的に一番右まで回した状態で問題ないかと思います。

これがうまく動くようであれば、以前に作りかけていたピコピコ系シンセ等も公開できるようにしていきたいと思いますのでよろしくお願いします。

ダブラー(doubler)を試作するの段

前回試作したパンナーのようなVSTを進めて、当初予定していたダブラーのようなエフェクトがかかるようになりました。

Twitterに動画を投稿したのですが、今回もモノラルになったので相変わらず何なのかよく分からない動画になってしまいました。
「画像を高画質でアップロード」のオプションを設定すればiPhoneからでも元に近い動画のまま投稿できるかと思いきやとくに変わらず、条件がよく分かりませんねー。33秒の動画だと短すぎる?

再エンコードがかかる前の動画が以下のものです。

やや分かりにくいかも知れませんが前半はパーカッション、後半はシンセの音にエフェクトがかかっています。
あと音量メーターと簡易的なリミッターも追加しました。
以前試作したVSTよりパラメータまわりの処理が(比較的)しっかりしているので、あとはこれの見た目を整えればVSTプラグインらしい感じになりそうです。

パンナー(panner)を試作するの段

7月になりました。
今日で2021年も半分が過ぎたことになりますね。


以前、無音にしたりピコピコ系の音を鳴らしたりするVSTを試しに作っていましたが、
今回は鳴っている音を左右に動かすパンナーのVSTを試作してみました。
GUIを含む基本的なVSTの作り方は分かったような感じになったので、改めてシンプルなプラグインを作ってみようという目的です。

最初に作ろうとしたのはダブラーで、それを作る前段階としてのパンナー。
今のところこんな感じになっています。

映像自体は先日Twitterに投稿したものと同じで音声だけ現在の版に差し替えています。
Twitterに動画を投稿すると再エンコードがかかる関係で音声がモノラルになり、音のステレオの変化が全く分からないという罠にかかりました。
Twitter公式のメディアの推奨事項を見ながらビットレートを落としてみてもステレオにはならず、動画の長さが関係しているのか何なのかいまいち分かりません。

上の動画の音声はステレオのはずなので、イヤホンやヘッドホンで聴くとある程度音が左右に動いていることが分かるかと思います。案外地味な変化なので分からない可能性もそこそこあります。
初期状態ではバスドラムが中央で鳴り、打楽器の音が右、後半から入るシンセの音が左で鳴っていることを考慮するとある程度分かりやすいかと思います。

最低でもこれの見た目を整えれば最低限VSTらしいものができるわけで、近いうちに何らかの形で公開できればいいですねー。毎回これを言っている気もしますが。
これをダブラーとして機能するようにパラメータを増やしたりしていくとまた完成しないパターンに嵌まることになりそう。

VSTを作ってみる(有音)

前回無音を鳴らすVSTを作ったことを書きましたが、
その後に無音ではない音を鳴らすVSTiも作っていました。
こちらはパラメータの数がだいぶ増えて、現在はこんな感じになっています。

見る人が見ればこれだけでどんな音が鳴るか把握できるかも知れませんねー。
画像が縦に長いので音のサンプル等は続きに。
続きを読む VSTを作ってみる(有音)

VSTiを作ってみる(無音)

DTMをする上で、エフェクトやシンセとして多くの場合使うことになるVSTを試しに作ってみました。

過去にも(特に公開していない)フィルタやスタッターみたいなものを作ってみたことがあったりしますが、その時の規格が現在では非推奨となっているVST2のものでした。
現在はVST3に切り替わり内部の仕様も大きく変わっているものの、SDKにサンプルが数多く入っているので試作段階までは比較的作りやすいように感じました。

そして作ってみたものがこちら。今まで作ったのはVSTeだったのでVSTiを作ってみるのは初めて。

……音符が置かれている間だけ無音を演奏します。入力音声はサイドチェインで他のトラックから持ってきます。
これだけだと使い所があるのかどうか怪しい感じですね。現時点でも一往は人力サイドチェインコンプレッサー的な使い方ができなくもないやつです。

GUIはまだ全く手をつけておらず面倒そうですが、機能を増やしたりしてある程度形になったら何らかの形で公開したいなと思っている次第です。

mac版を追加してみるテスト

譜面配置ツールBe-Sequence Object Placerと、公開から時間が経って今更感のあるbroox-lのmac版を公開してみました。

LÖVE製なのでmac版のappファイルも比較的簡単に作れるのですが、macOSはCatalinaから所謂野良Appが全てマルウェアの疑いのあるものとして扱われることになったので、ダウンロードしたAppを開く際はCtrlを押しながら開くなどしないと起動することができません。安全を担保する意味でzipファイルのチェックサム的なものを記載したほうがいいのか知らん。
マルウェア疑惑を晴らすためにはAppleにファイルを送信して公証を受ける必要があり、これのために年99ドル払ってApple Developer Programに登録するのは割に合わないため当分はこのままとします。そもそもLÖVE製のAppで公証を受けられるのかは謎なところ。

macOS配布用のAppファイルを作るにあたって、現在のwikiに記載されている方法ではAppのアイコンを変えることができなくなっていたため、Assets.carを変更する別の対応を行う必要がありました。これについては恐らく後日メモ代わりにまとめておきます。

続きを読む mac版を追加してみるテスト

BSOP 0.8

譜面配置ツールBe-Sequence Object Placer(BSOP)をVer.0.8に更新しました。
Ctrl+上下カーソルキーを押すことでロングノートの配置ができるようになりました。
動作はだいたい問題ないかと思いますが、RDMタイプ1(50と60番台のチャンネルを使うもの)の場合は怪しいかも知れません。
このロングノート配置機能ができたことで、作りかけの自作の音楽ゲームの譜面も大分作りやすくなる予定です。

また今回の更新で画面上部にメニューバー的なものを追加しています。今後画面右にも情報表示エリア的なものを追加する予定のためそれほど問題にはならない範囲で徐々に画面が狭くなりそうです。

BSOP 0.7

昨日の更新になりますが、譜面配置ツールBe-Sequence Object Placer(BSOP)をVer.0.7に更新しました。
主な更新点はデータの保存時にエラーがよく発生していた点の修正と、正常に終了しなかったときに復帰できるためのバックアップ機能です。

エラーがよく起こっている時点でツールとしてまともに使うには難しかったBSOPが、今回の更新である程度安定して使うことができるようになりました。……といいですね。前回保存時の状態で復帰するバックアップ機能もちゃんと非常時に動作できるかはしっかり確認できていないので、念を押す場合は手動でも別途バックアップを取っておいた方が吉です。

あとはマウスの左右ドラッグでレーンを左右にスクロールできるようになっています。操作性も(自分用に)ちょっとずつ改善していけたらいいですね。
次の更新では自作のゲームの譜面を作るうえで必須なロングノート周りを実装していきたい予定。

ツール(Be-Sequence Object Placer)公開

本日、新しくBe-Sequence Object Placer(BSOP)というツールを公開しました。
所謂未配置BMSツールから演奏用の譜面データを作るためのツールです。
uBMSCにもある「キーボードからレーンに配置する」機能専用みたいなやつ。

以前に作ったBeMidiSlicerWaveEffectSplit-erを組み合わせて使えばBMSの作成が可能です。使い勝手は……?

略称がBeSOPとBSOPで安定していないのは決めかねているからです。どちらでもいいですか。

もともとは製作中の音楽ゲームの譜面配置用ツールとして作っていたものですが、Twitterで予想以上に反応があったため急ぎ公開してみた次第です。
まだ機能が足りていない部分があるものの、特殊でない7KEYS譜面なら多分問題ないのではないかと。

ロングノートとか14KEYSとかの対応は今後追加していきます。多分。

続きを読む ツール(Be-Sequence Object Placer)公開