ソフトな忘却力(25) WSL2とWindows11連携でサウンドファイル生成なんのその

sndfile-spectrogram
Joseph Halfmoon

新PC(Windows11)は便利。今回はWindows10で消えていたSound Recorder が復活しているのに気づきました。10のVoice Recorderは、wavフォーマット対応せずで難渋しました。WSL2とWindows11間は相互乗り入れ。音声ファイルの加工はLinux側のライブラリでさくさく?

“ソフトな忘却力(25) WSL2とWindows11連携でサウンドファイル生成なんのその” の続きを読む

ソフトな忘却力(24) 久しぶりの gprof、簡単なところから思い出す

gprof16_q
Joseph Halfmoon

ここ暫くプロファイラなど使っておらず。すっかり使い方を忘却しております。今回は、open, read, writeなど基本中の基本?のシステムコールのリハビリをしながら、これまた一番基本の gprof を動かして関数が何回呼び出されているんだか勘定してみたいと思います。数えたら早くなるってもんでもないケド。

“ソフトな忘却力(24) 久しぶりの gprof、簡単なところから思い出す” の続きを読む

ソフトな忘却力(23) time_t型、64bit OS上なら64bitになっていたのね

trainTime
Joseph Halfmoon

別件でdateコマンドを使って思い出したのが UNIX時間であります。Linuxでも使用の「伝統」です。そういえば昔は32ビットであったので2038年問題ってのが有った筈。手元のLinux機、ラズパイ4はようやく64ビットOSに切り替えましたが、ラズパイ3は32ビットOSのままです。time_t型の件、調べてみました。
“ソフトな忘却力(23) time_t型、64bit OS上なら64bitになっていたのね” の続きを読む

ソフトな忘却力(22) シグナル、無視するにはsigprocmask()使う方が良いのね

ResultEC
Joseph Halfmoon

シリーズ3か月近く間が空きました。気を許すと練習頻度を忘却速度が上回ります。練習再開、テーマは「シグナル」です。マイコンの場合のハードウエア割り込みのようなアカラサマなものではなく、Linuxの管理下にある「ソフトウエア割り込み」的なやつです。今回はシグナルを無視するやり方を練習。

“ソフトな忘却力(22) シグナル、無視するにはsigprocmask()使う方が良いのね” の続きを読む

ソフトな忘却力(21) gcc、デフォルト設定でのNaN、INF、デノーマル数の挙動

DUT_EC
Joseph Halfmoon

昨日の別件投稿にてRISC-VのFPUでのNaN、INF(無限大)、デノーマル数などを再び扱いました。「そういえば」いつも使っているGCCコンパイラでそれらヤバイ奴らはどんな挙動をするんでしょうか?普段、あまり浮動小数点数を使わぬので、実機でやってみることにいたしました。

“ソフトな忘却力(21) gcc、デフォルト設定でのNaN、INF、デノーマル数の挙動” の続きを読む

ソフトな忘却力(20) Node-REDのsmoothノードのフィルタ特性を推定

LPF_est_BodePlot
Joseph Halfmoon

Node-REDはIoTデバイスなどから集めて来たデータをWeb表示したりするときにとても便利なシステムです。昨日別投稿にてsmoothノードというものを勉強。入って来たデータの平均、最大といった統計量を求める他に、ローパス、ハイパスフィルタも含んでました。しかしHELPみてもフィルタ特性については書いてなかったです。

“ソフトな忘却力(20) Node-REDのsmoothノードのフィルタ特性を推定” の続きを読む

ソフトな忘却力(19) .wavファイルの生成、octaveとcppの両方で

OctaveSample
Joseph Halfmoon

WAVファイルを扱おうとしたらいつの間にかWindowsの標準アプリではそのようなフォーマットは捨て去られていたのにようやく気づきました。お間抜け。自分で音声信号のファイルを生成したりするときには楽なのだWAV形式。単なるPCMだし。ヘッダも簡単。今回はOctaveとC++の両方でWAVファイル書き出しやってみます。

“ソフトな忘却力(19) .wavファイルの生成、octaveとcppの両方で” の続きを読む

ソフトな忘却力(18) 偶数個のときのmedian、浮動小数のgtest

Octave
Joseph Halfmoon

前回はcsv読み込み用のライブラリの使い方をgtestで確認しました。今回は読み込んだデータの処理です。ふと偶数個のときのmedianってどう計算するんだっけという疑問をもったのです。medianの計算をgtestしようとして今度は、gtestで浮動小数の計算のテストってどうするんだっけ、と。疑問は尽きず。

“ソフトな忘却力(18) 偶数個のときのmedian、浮動小数のgtest” の続きを読む

ソフトな忘却力(17) VSCodeでgtest、テンプレートライブラリ使用csvパーサ

csvparser_gtest_results
Joseph Halfmoon

今回は実用的なテンプレート・ライブラリ libfccp を呼び出しているコードにGoogleTest(gtest)を適用してみたいと思います。libfccp はC++用のCSVファイル読み取り用のパーサです。CSVはテキストなので自分でも読み込み簡単な気がしますが、既にライブラリがあるのなら利用させていただいた方が確実でお楽。

“ソフトな忘却力(17) VSCodeでgtest、テンプレートライブラリ使用csvパーサ” の続きを読む

ソフトな忘却力(16) VSCodeで ctest+gtestその2、Classのテスト

CTEST_Results
Joseph Halfmoon

前回 CMakeのテストランナーである ctest の元で GoogleTest(gtest)フレームワークのTEST走らせました。調子に乗って今回はC++のClass のテストに手を広げてみました。前回の関数単体とはちょっと書き方が違ってました。今回は分量多いので「前回との差分」部分にフォーカスして記述いたします。

“ソフトな忘却力(16) VSCodeで ctest+gtestその2、Classのテスト” の続きを読む