自作PCのクリーンインストール

marui.hatenablog.com

7月に組み立てたPCにいくつかデバイスドライバ周りのアップデートがきてたので、適用したらFuzeDriveが破壊され、PCが起動しなくなりました。はい、Intel Rapid Storage Technologyのアップデータが含まれていたのでした。(FuzeDriveとIntel Rapid Storage Technologyは喧嘩するので、どちらか一方だけを使用する!)

作業ファイルはすべてGoogle Driveに入れてあるので、失われたデータはありませんが、システムの再インストールがめんどくさかったです。

手持ちのコンピュータはMacしかなかったので、Mac側のParallels Desktopに入っているWindows 7Windows 10インストールメディア作成ツールを入手します。USBメディアから起動できるようにBIOSを設定し、Windowsをインストールします。(この段階でSSDもHDDもパーティションを削除して、SSDにシステムをクリーンインストールです)

Windowsがインストールできたら、以前ダウンロードしてあったEnmotus FuzeDriveをインストールして、FuzeDriveの設定(SSDをFast Tier、HDDをSlow Tierにするだけ)をします。

オーディオインターフェーストラックボール親指シフト周りをはじめ、システム以外のソフトのインストールが地味にめんどくさい……。

本日の給油

給油日 オドメーター (km) 給油量 (L) 単価 (円/L) 燃費 (km/L) 距離単価 (円/km)
2020-03-16 11037.1 3.46 138.73 42.51 3.26
2020-03-20 11217.6 2.83 133.92 63.78 2.10
2020-03-21 11407.0 3.11 142.12 60.90 2.33
2020-03-22 11612.2 3.50 138.57 58.63 2.36
2020-09-21 11760.8 3.04 130.59 48.88 2.67
2021-02-21 11900.9 2.92 139.73 47.98 2.91
2021-03-12 12042.2 3.08 133.77 45.88 2.92

前回の給油は会員価格ではなかったのでやや高かったけど、今回は会員価格なので少しだけ安い。四輪車のように何十リットルも入れるのであれば違いは大きいのかもしれないけど、スーバーカブだと満タンに給油しても20円くらいの違いしかない。

本日の給油

給油日 オドメーター (km) 給油量 (L) 単価 (円/L) 燃費 (km/L) 距離単価 (円/km)
2020-02-22 10890.0 2.67 141.95 51.20 2.77
2020-03-16 11037.1 3.46 138.73 42.51 3.26
2020-03-20 11217.6 2.83 133.92 63.78 2.10
2020-03-21 11407.0 3.11 142.12 60.90 2.33
2020-03-22 11612.2 3.50 138.57 58.63 2.36
2020-09-21 11760.8 3.04 130.59 48.88 2.67
2021-02-21 11900.9 2.92 139.73 47.98 2.91

40 kmくらいなので大した距離ではないけれど、久しぶりに通勤以外でバイクに乗った。久しぶりの中距離だったので、最後の方ではエンジンの反応も良くなってもっと乗っていたい感じになった。楽しい〜。

でも、1年間で1000 kmしか走っていないし、そのほとんどがCOVID-19がまだこんなに深刻な事態になると予想していなかった2020年3月の二泊三日の千葉県一周ツーリングの時のもの。ワクチンが十分に行き渡るまでは、誰にも会わない日帰りツーリングしかないよね。ラーツーとかしたいな。そのためにもイワタニのコンパクトバーナーが欲しい。

https://amzn.to/3emSrkiamzn.to

フィルターバンク (Julia Advent Calendar 2020)

このエントリはJulia Advent Calendar 2020の25日目のものです。Juliaを音に関する研究によく使っているので、その中から一つ紹介したいと思います。

音の加工をするときにフィルタというものを使うことがあります。フィルタは、特定の周波数の音を除去したり強調したりするエフェクタです。フィルタを使って音を周波数帯域ごとに分割する、フィルターバンクというものもあります。周波数帯域ごとにどんな音が含まれているのかを調べるときに使えますし、一部の帯域だけを強調したりするグラフィック・イコライザとして使用することもできます。

グライコとして使うのであれば、フィルタバンクで分割した音をすべて再合成すると元の音に戻ることが必須になります。元に戻るということを必須条件にしているフィルタバンクには直交ミラーフィルタ(QMF)というものもありますが、今回はもっと簡単な原理のものを紹介します。

続きを読む

周波数から音名を得る (Julia Advent Calendar 2020)

このエントリはJulia Advent Calendar 2020の24日目のものです。Juliaを音に関する作業によく使っているので、その中から一つ紹介したいと思います。

音の高さをあらわす方法にはいくつかあります。周波数を使うと「1秒あたりの周期の数」として物理的にも明確な値が得られます。

音楽の分野ではドレミファソラシドやCDEFGABCといったものが使われます(音名・階名表記 - Wikipedia)。国際式では、ピアノ中央のド(約262 Hz)をC4として、ピッチクラスのC~Bとオクターブ番号を組み合わせています。さらに細かい音高をあらわすときには、十二平均律に限りますがセント値(セント (音楽) - Wikipedia)を使うこともあります。セント値は半音の1/100となり、1200セントがちょうど1オクターブになります。

さらにMIDI規格ではC4をノート番号60とし、半音ごとにノート番号を1ずつ増減させます。チューニングの基準とすることが多いA4(440 Hz)は、ノート番号69番です。セント値まで含めたいという目的で、IRCAMで開発されたOpenMusicでは、MIDIセント値が採用されています。これはMIDIノート番号を100倍して、下2桁にセント値を含めようというものです。たとえばA4の35セント上は6935になります。

これら音高をあらわす単位の変換はときどき使うことがあるので、そのために作ったJuliaのプログラムを紹介します。

続きを読む

RでOSを判別する方法

先日、JuliaでOSを判別する方法を書きました。

marui.hatenablog.com

Rでも同じことをやりたい場合があるので、メモしておきます。Sys.info()関数を使うと、システムについてのさまざまな情報が得られます。その中でもsysnameがOSの種類を取ってくるものです。

if (Sys.info()["sysname"] == "Darwin") {
  setwd("/Volumes/GoogleDrive/マイドライブ/")
} else {
  setwd("G:/マイドライブ/")
}

JuliaでOSを判別する方法

普段使用しているコンピュータが2台あります。一つはMacBook Proで、もう一つは自作のWindows PCです。それらのあいだでデータの共有・同期を行うのにはGoogle Driveを使用しています。

Juliaについても同様で、Google Drive_juliaという名前のディレクトリを作って、その中にいろいろなユーティリティを入れてあります。パッケージ化していないものについてはinclude()で読み込むようにしているのですが、Google Driveの場所がMac(/Volumes/GoogleDrive内)とWin(Gドライブ内)とで違うので、使用しているOSの判別をして適切なディレクトリ名を指定する必要があります。

JuliaでOSの判別をするときにはSys.KERNELも使えますが、おそらくSys.isapple()などを使うのが良いのでしょう。例えば僕のコードでは以下のようにOSの判別をさせています。

if Sys.isapple()
  include("/Volumes/GoogleDrive/マイドライブ/_julia/audioutils.jl");
elseif Sys.iswindows()
  include("g:\\マイドライブ\\_julia\\audioutils.jl");
end

詳しくは以下の公式ドキュメントをどうぞ。