• 本当は、田舎に庵を建てて隠遁生活したいけど、先立つものも無いので自宅で..。

C#

【C#】エレキーもどき

何の役にも立たないけど、こんなものを作ってみた。 PCの(仮想)COMポートに繋いだパドルでエレキーみたいに短点、長点の音を出せるソフト。 外観。 下のラベルはデバッグ用。 ソース コメントは、自宅P ...

続きを読む

【C#】【NAudio】timerで音を断続させる

timerをdatetimeクラスで測定してみたらばらつきが大きかったけど、音を断続させてみたらどうなるか確かめてみた。 NAudioを使ってサイン波を発生させ、音量をコントロールして断続させてみた。 ...

続きを読む

【C#】timerの精度を測定してみる

timerコンポーネントの精度を測定してみた。 1ms単位で設定できるけど、相当ばらつくみたい。 一つ目の数値は、初期値が入ってないので無視するとして、38ms設定で最小値が33ms、最大値が60ms ...

続きを読む

【C#】serialPortの信号を入力する

Blenderで使おうと思ってPythonに手を出してみたけど、窓の作成が面倒なのであっさり挫折してしまった。 だけどプロブラムしていたら、また何かプログラミングしたくなったので、結局C#にもどってプ ...

続きを読む

.NET6+でのコンソールアプリ

VisualStudioで滅多に作ったことのないコンソールアプリを作ろうと思ったら、テンプレートが全く変わっていた。 main()やusingが必要ないみたい。 ラムダ式を使ってListの内容をコンソ ...

続きを読む

MathNet BPFの特性測定

MathNetのバンドパスフィルターの特性を測定してみた。 下のグラフで、左がフィルタ前、右がフィルタ後。 帯域外での減衰量は、-29.1dB。 次数を1024にすると、帯域外での減衰量は、-55.4 ...

続きを読む

FFTの縦軸の調査

FFTの縦軸は、今まで適当に表示していたけど、ちょっと調べてみた。 入力する信号は、NAudioでキャプチャすることを想定しているので16bitの整数とする。 なので、最大値は32767。 MathN ...

続きを読む

FFTの処理数とデータ数の関係

FFTの処理数は、2のべき乗にする必要がある。 一方、NAudioでデータをキャプチャする場合、キャプチャ時間はms単位でしか設定できない。 というわけで、サンプル数をFFTの処理数に合わせることがで ...

続きを読む

MathNet Filterの特性

MathNet.FilteringのBand Pass Filterの特性を、ホワイトノイズを入力して表示してみた。 信号は、2kHzと8kHzとホワイトノイズ。 フィルターは、1kHz~10kHz。 ...

続きを読む

MathNet.Filtering

MathNet.Filteringを使って見た。 NugetからMathNet.filteringパッケージをインストールする。 ProcessSampleメッソドは、引数として配列を受けるやつもある ...

続きを読む