自宅のTV録画サーバ兼NASを新調した

自宅のTV録画サーバ兼NASを新調した。
録画サーバとNASを前に作ったのは 8 年前で、ほぼ8年間稼働しっぱなしだったので、さすがに古くなってきたと思って新調した。
今年始めにメインのデスクトップPCを組んだので、今年に入ってから2台目の自作PCとなった。まぁ、そういうこともある。

ハードウェア構成

ハードウェア構成はこんな感じ。ケースとケースファンは流用。

項目型番とか大体の値段
マザーボードASRock H610M-HDV/M.2\11000 くらい
CPUintel Celeron G6900(Alder Lake)\7000 くらい
メモリADATA AX4U320088G16A-DCBK20 8GBの2枚セット\7300 くらい
システム用 m.2 SSDWestern Digital WDS480G2G0C 480GB\6300 くらい
電源Scythe CORE-TFX275\3300 くらい
データ保存用 HDDSeagate ST8000DM004 8TB\15000 くらいを2台
合計\65000 くらい

データ保存用のHDD を除くと \35000 くらいで、既製品の NAS の箱と同じくらいの値段になったりするのだけど、メモリを16GB積めていてこれがキャッシュとしてきいてくれていい感じであってくれ、という気持ち。
でも家のネットワークが未だに 1GBit Ethernet なので結局こっちがネックになる感じはある。

CPU はAlder Lake世代で一番性能が低いものだけど、用途を考えれば十分だと思う。というか、シングル性能は i9-10900 と変わらないということらしくなんか未だに CPU は進化を続けているのだなぁと思う。
いろいろなことをしたくなって性能に不足を感じるようになってきても、多分 i3 くらいまでは載せ替えても電源の面でも熱の面でも問題は起きないと思う。

録画機能の選定

8年前は、chinachu というTV録画用のwebサービスを使って、環境を構築した。
今回も chinachu を使おうと考えていたのだけど、この8年の間に chinachu のテレビ録画ボードを操作するAPIを提供することを目的とした部分が Mirakurun として切り出され、 chinachu 自体にはこの API を操作するための Web UI が残されるという機能分割が行われたようだった。
で、その Web UI の方についても obsolete になるらしく、じゃあどうやって使えばいいのかと思ったんだけど、 Web UI の部分を置き換えるいくつかの代替品があるらしく、それと組み合わせて使うといった形になったらしい。

今回は、Web UI としては EPGStation というものを使うことにした。
EPGStation と chinachu はともに Docker 内で動くようになっており、両方をまとめて起動できる docker-compose 用のファイルも配布されていたので、これを使うことにした。

心残り

標準の状態では Quick Sync Video を使わずに、完全にソフトウェアでトランスコードするので、トランスコード時の CPU の負荷が高い。
Dockerfile 内で FFMpeg をコンパイルしているので、ここで必要なライブラリやコンパイルオプションの追加をすれば、 QSV を利用可能になる。でも、とりあえずソフトウェアエンコーディングでも性能が足りているようなので、後回しにすると決めた。

OS の選定

録画機能がDocker コンテナの中で動くということで、物理マシンに直接インストールする OS についての制限はなさそうだったので、長期的にちゃんとアップデートを行っていくことを念頭に置き、 arch linux をホストの OS として用いることにした。

NAS 機能

録画機能が docker-compose で管理されているので、NAS機能の方も docker-compose で管理することにした。
debian のベースに samba をインストールした Dockerfile を書いて、それを使った。
NAS 用のディスクは btrfs の RAID 1 でフォーマットした。1台壊れても大丈夫だし、容量足りなくなったら大きめのディスクを足せば良いだけのはず。

心残り

samba に対する書き込みを行っている際に、 docker-proxy というプロセスがそこそこ CPU を使っていることに気づいた。
このプロセスはコンテナの中と外の通信を仲介する役割であり、–userland-proxy=false オプションを docker daemon に与えるとこれを使わずに、iptables で代替の処理を処理を行うようになるようだ。多分、iptables でやったほうが軽くなるだろうとは思うのだけど、とりあえず性能面で今すぐ困る感じにはならなかったので、標準の状態でいいやと言うことにした。
今後、コンテナで大量の通信を行うような利用法を考えるときにはこのオプションについて真面目に検討しようと思う。

ARM64 な VM に サーバーの引っ越しをした

今あなたが見ているこの blog の html は ARM プロセッサ上の VM から送られてきているんだ。(唐突)

Oracle Cloud の ARM インスタンスの無料枠に引っ越した

というわけで、海外の VPS (vultr) に乗り換えてから2年くらい経って、なんだか大したことしてないのに結構高くついちゃってるのが気にかかっている状況が割と長く続いていたので、この blog を含む各種サービスを Oracle Cloud の ARM インスタンスの上に引っ越しました。

VM の上では、この blog であったり、ちょっとしたツールを雑に作るための nodered であったり、grafana や chronograf といった可視化ツールを docker-compose で管理して動かしています。この blog には大したアクセスはないし他のサービスは自分しか使っていなくて CPU の負荷は小さい一方、いろんなサービスを動かし続けて置く必要はあってメモリは割りと多く使う状況で、CPU弱くてもメモリがたくさんある、安く使える環境があったらいいなぁと思っていました。

そんな中、 Oracle Cloud では ARM の CPU を 4コア分、メモリは24GB 分無料で使えるぞということを聞きつけ、こりゃあいいと思って、思い切って移行しました。

もともと各種サービスはすべて docker-compose による管理を行っていたものの、 x86_64 で動かすことしか考えておらず、ちゃんと移行できるんだろうかというのがネックでしたが、サーバサイドの ARM64 も出てきてずいぶん時間が経ったせいか、使っていた docker のイメージについては cAdvisor 以外は ARM64 のイメージがあり、MySQL については新しいメジャーバージョンにしか ARM64 用のイメージがなくバージョンを移行する必要があったりもしましたが、おおよそつつがなく移行できました。

昔、docker とサーバーサイドの ARM64 が出て来つつあるのを、自分はほぼほぼ同じタイミングで認識しました。で、イメージが cpu のアーキテクチャにがっつりと依存する docker が流行ったので、docker のせいで ARM64 がサーバサイドで広く使われるようになるのは少し遠のいたようなきがするなぁと思ったりもしたのですが、それから結構経って、ARM64 でも docker がずいぶん普通に使えるようになったことが確認できました。
今や macbook さえ ARM64 な時代ですしね。そんなもんなのかもしれません。

そんなわけで、 ARM1コア 6GBメモリで機嫌よく動いています。
無料の範囲だ。本当にええんか。

今後の予定

引越し後も相変わらず docker-compose でサービスを管理しているのですが、まだARMが 3コア、メモリは18GB 残っていて、かつ k8s のマネージドサービス自体はこっちも無料で使える ので、残ったコアとメモリで k8s の素振りでもして慣れてきたあたりでまたそちらへ引っ越そうかなぁと思っています。
最近、仕事で k8s に触れる機会が増えてきたので、趣味と実益を兼ねてぼちぼちやっていきたいですねぇ。

オレンジスケール / 長瀬有花 が好きすぎるので語らせてくれ

2022年1月31日に、youtube で一本のミュージックビデオ、オレンジスケール – 長瀬有花 (Official Video) が公開されました。友人に勧められるがままに見てみたら随分好きになってしまい、何度も見返してすっかりハマってしまいました。

この曲がなんでそんなに好きなのか、自分にはどう聞こえているのかをすきたい放題書いて行こうと思います。

オレンジスケールという単語

この曲のタイトルである「オレンジスケール」は、検索しても広く知られた用例などはないようで一般的な名詞ではなく、一般的な名詞である「オレンジ」と「スケール」をつなげて作られた造語であるようです。

この曲において用いられる「スケール」の曖昧さ

この曲の歌詞には幾度となくスケールという単語が使われています。
一般的に、スケールといわれて最初に思いつくのは、物差し等の大きさや重さを測るための基準、あるいは計測のための道具、という人がほとんどだと思います。
この曲においても、1番のサビの歌詞の、傾く陽とそれによりできる夕焼けの中で伸びていく影という描写において、この意味を持って使われています。
また、2番のBメロにおいて自分と宇宙の大きさの対比においては、基準により計測されたものの大きさそのもの、すなわち「スケールが大きい」といった言い回しに近い意味で使われています。
上記の2つの用例を混ぜて用いることで、スケールという概念を異なる視点から見たり、あるいは、陽の傾きにより計測基準自体が伸び縮みするという描写により、なんとも言えない曖昧さが表現されていてすごく良いなと思います。

でも、歌を歌う女の子の視点から描かれたこの曲におけるスケールは、上記の意味だけにはとどまらないと考えます。

オレンジという色はブルーではない

先にも書いたように、「オレンジスケール」は造語です。
オレンジは、色の三原色である、赤、黃、青のうち、青を除く、赤と黄を混ぜて作られるものです。つまり、オレンジスケールというのは、青くはないスケール、ブルーではないスケールを意味していると考えます。

色の三原色

ブルースケールという単語

逆にブルースケールとは何であるかについて考えると、ブルースケールという単語そのものはないものの、これに似ているブルーススケールという音楽用語に自然とたどり着くことになります。
音楽用語としてのスケールとは、曲の中で使われる音名の集合です。例えば、ハ長調ないしイ短調は白鍵盤だけで構成され、黒鍵盤は使わないといったことは多くの方がご存知であると思います。
スケールは、曲全体の雰囲気に強く影響します。例えば、長調なら明るい雰囲気であり、短調なら暗い雰囲気であるとされています。
ブルーススケールは、正確な定義については調べていただければと思うのですが、簡単に説明すると、短調(ナチュラル・マイナー・スケール)にフラットファイブを足したものです。
ブルーススケールを用いた曲は、その名の通り一般的にブルーな、すなわち憂鬱な雰囲気の曲となるとされています。

そして、ブルーススケールは、このオレンジスケールという曲のAメロで使われています。
しかし、ブルーススケールを特徴づけるフラットファイブを鳴らす機会が限られており、ブルーススケールであるにも関わらず、ブルーススケールが持つとされる憂鬱な雰囲気を特段強く感じることはないように思います。

また、Bメロでは、ブルーススケールからブルーススケールを特徴づけるフラットファイブを含む4つの音を取り除き、4音のみで構成されています。
ブルーススケールを特徴づけていたフラットファイブを完全に取り除いたことで、憂鬱さは完全に失われ独特な雰囲気が生じています。これはなんというか、前後関係から考えてブルーススケールから音を抜いたものですが、むしろブルーススケールではないということを主張しているようでもあります。

オレンジスケールとは

1番のサビは、5音で形成されています。これは、A♭を基音とした長調の下から4つ目の音と6つ目の音を抜いたものです。
長調から2つ音を抜くものとしては、4つ目と7つ目を抜くヨナ抜きと呼ばれるスケールや、2つ目と6つ目を抜く琉球音階と呼ばれるスケールがよく知られています。一方、1番サビで使われている4つ目と6つ目を抜くものについては、調べた限りではこのスケールを示すよく知られた呼び方は存在していないようです。

また、2番のサビは、1番のサビで用いられた5音に下から6つ目の音を足した6音です。これは結果的には、長調から4つ目の音のみを抜いたものです。
1番のサビの一部と、これに相当する2番サビ下から6つ目の音が出てくる部分の抜粋は以下のようになっています。

1番がこっちで、
1番サビ抜粋

2番がこっちです。
2番サビ抜粋

2番の、オレンジスケールと歌っているところで、まさに背伸びをしているように見えませんか?僕には見えます。

このことから、オレンジスケールとは、1番のサビで使われていた5音、並びに2番で使われる6音、さらに使われる音が6音に増えることを示しているのだと思います。
2番で使われる音が増える部分の旋律は、1番の歌詞にあるように少し背伸びしたようであり、スケールに使われる音の数が大きくなったこと、すなわち成長し、この曲で描かれる女の子のスケールが大きくなることを表すのだろうと僕には聞こえました。

まとめ

オレンジスケールという曲は、ブルーススケールとの対比、1番と2番のサビで使われるスケールの変化、音楽的要素とも呼応する作り込まれた歌詞によってふわふわとした釈然としない日々の中にある確かな成長を描いた、優しい中にも力強さがある素敵な曲だなと思います。
他にもこの曲の好きなところはたくさんあるけれども、ここまでに書いたことがいちばん大切な部分なんじゃないだろうかと思って、文章に書き起こしてみました。

先にも書いたように、1番のサビで使われている4番目と6番目の音が抜けた長音階には、広く知られた呼び方はありません。
でも、この曲が多くの人に聞かれれば、この曲のサビで使われている音階である46抜き長音階が、オレンジスケールと広く呼ばれ親しまれるようになる、いつかそんな日も来るのかもしれません。その時はきっと、長瀬有花さんや共にある作編曲及び映像作成を行ったいよわさんを始めとする周囲の人々の存在も、いくつもの次元を超え、広く知られることになるのだろうとおもいます。

素敵な曲をありがとう。これからも楽しみにしています。

core i7-12700 を CPU に使ったPCを組んだ

あけましておめでとうございます。
最近、メインで使っている Windows のデスクトップ PC で曲を書いているときに CPU の不足を如実に感じるようになってきたので、PC を新調しました。
前回、前々回購入したデスクトップ PC は、 mouse computer で買って、出来合いのデスクトップ PC に SSD やら GPU やらのパーツを足して使っていました。
今回は、core i7-12700 という CPU がどんなもんなのか気になって仕方なかったので、パーツごとに自分で買って、いわゆる自作 PC を作りました。

今回使ったパーツ類

最後に PC を自作したのは、およそ 8 年前で、そのときには celeron j1900 ベースの録画マシンを作りました。
その頃と比べると、最近は CD-ROM/DVD-ROM ドライブはそもそもつけなかったり、HDD/SSDも m.2 でマザーボードに直接つけるようになっていたりと、配線が随分少なくなり最近は随分手軽になったんだな、という印象を持ちました。

主目的は先に書いたように CPU の性能不足の解消なのですが、CPU の新しい機能に興味があってそれがどのように動くかを見るというのもサブの目的としてある。というのも今回選んだ core i7 12700 には高性能な Performance-cores と高電力効率の Efficient-cores が乗っており、Windows 11 ではこれらをうまいこと使い分けることで高性能を実現しているらしい。
当然 Linux にも今後類似の機能が実装されていくことになるわけなので、その進化をソースコードレベルで負いつつ実感してみたいなと思っている。

というわけで、CPU の機能を直接叩くために、久々に VM 上ではなくベアメタルで Linux を動かす必要があるので、すごく久しぶりに、 Windows と Linux の dual boot 環境も作ってみるつもり。
楽しみだなぁ。

Apple Pencil もどきを買って日本語の手書き入力を試したら、「Who wants a stylus?」って思った。

こんにちは。ちゃーりーです。

以前より、2000円から3000円で買える、Apple Pencil の類似品があるんだという事に気づいて興味を持っていたんですが、最近ようやく買いました。

iPadOS のバージョン 14 では、文字入力が可能になる scribble と呼ばれる、Apple Pencil 及びその類似品を使って手書きによる文字に入力が可能となりました。
しかし、対象の言語が、英語と中国語だけであり、日本語には対応しないのだなと思って頭の片隅に留めていました。
で、最近 iPadOS のバージョンが 15 になりました。このタイミングで、 scribble を用いた日本語入力が可能となったという情報を見かけました。

2021年に実現された、手書きによる日本語入力とはどんな感じなのかというのが気になったので、Apple Pencil の類似品をようやく購入し、試してみました。
そしたら、なんだかものすごい違和感を感じるとともに、その違和感を共有したくなったので、頑張って文章に書き起こすことにします。

なお、購入したものはこれです。似たような製品は amazon でたくさん見つかります。どれが良いのか、というのはわからないです。
https://www.amazon.co.jp/gp/product/B099RGJ39Y/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

Apple Pencil の類似品とはなんなのか

ここまで、「Apple Pencil の類似品」という書き方を何度かしています。
でも色々調べてみた感じ、多分これらの類似品は Apple Pencil の直接の類似品ではなく、Apple から公式に認証を受けた Logicool Crayon という製品と同等の機能持っているような気がします。
理由は、Logicool Crayon と 2000〜3000円で買える Apple Pencil の類似品は、いずれも以下の特徴を持っているためです。

  • 筆圧検知はない
  • 3段階の傾き検知で線の太さなど変更可能
  • きちんと調べていないけれど、対応している iPad の機種が共通している

おそらく、 scribble の扱いについては、Apple Pencil も Logicool Crayon も Apple Pencil の類似品も、同様の機能を利用可能であると考えられ、以下の文章の内容には影響しないため、以降は Apple Pencil という書き方にまとめます。

scribble による日本語の手書き入力を試してみた

テキストエディタやブラウザのURL欄など、従来ソフトウェアキーボードなどで入力可能だった箇所に、Apple Pencil で日本語を書くと、書いた文字を検出して、テキストエディタやブラウザのURL欄などに入力してくれました。
でも、少し使っただけでも、良くない点がいくつも思いつきました。

文字の認識ミス

複数の文字をまとめて入力すると、文字の前後関係や、記入された文字の大きさがより明確になる、といった理由で認識の精度が上がるような気がしました。1文字だけ書いた場合には認識が失敗する場合が多い気がしました。
かんたんに言うと、罫線等の文字のサイズの基準となる情報がないノートに対して、単に丸を1つ書いた場合、その丸を書いた人が「○」のつもりで書いたのか「。」のつもりで書いたのかを見分けることは、人間でもできないはずです。なので、そのあたりは scribble も盛大に間違えます。

画数の多い文字は入力が面倒くさい

例えば、「複雑」という文字を scribble で入力しようと思うと、「複」も「雑」も14画であるため、合計 28 回の入力が必要になります。
キーボードでローマ字で入力をしたとすると 「hukuzatu」と打つことによって入力できます。人によってはスペースで変換をしたり、それをenterキーで確定したりすると思いますが、おおよそキーボードを10回叩くと入力ができます。

どう考えてもキーボードで入力したほうが楽な気がします。

Apple Pencil を手に持ってないと入力できないから面倒くさい

スクリーンキーボードを使って文字を入力するときには、指で入力ができます。
しかし、scribble による入力を行うためには、事前に Apple Pencil を手に持っておく必要があります。
そして、机のない場所で入力を行うためには、iPad mini であれば 300g 程度、11inch くらいの iPad や iPad Pro であれば 500g 弱の本体を、反対側の手で、片手で持っておく必要があります。

この体制は継続的に取りつづけるのは辛いんじゃないかなと思います。
iPad を片手で持つのが辛いから事前に机などに置くようにするのなら、もう、普通に物理キーボードで入力する方が良さそうです。

scribble を使い続けたいとは「自分には」思えなかった

上記の理由で、物理キーボードやソフトウェアキーボードから、ローマ字入力なりフリック入力なりをするほうがよっぽど効率は良さそうだと思いました。
少なくとも自分にとっては。

「Who wants a stylus?」

ちょうど、1ヶ月くらい前に youtube で iPhone の発表当時、2007 年のスティーブ・ジョブズによるプレゼンテーションを見かけたので、一通り見てしまいました。
Apple Pencil を用いた scribble を試しながら、このプレゼンテーションのことをふと思い出しました。

スティーブ・ジョブズが「Who wants a stylus?」と言っています。
2007年にプレゼンテーションで「Who wants a stylus?」と言ったスティーブ・ジョブズは2011年に亡くなり、そして 2015 年には Apple製スタイラスである Apple Pencil が発売されました。

2007年の時点で、「Who wants a stylus?」とスティーブ・ジョブズが言ったにも関わらず、なぜ Apple Pencil が発売されるに至ったのだろうか、という疑問には当然行き当たります。
Apple Pencil をつかって scribble をまどろっこしいと思いながらも使い続けていたら、Apple は誰がスタイラスを必要としているのかの答えを見つけたのではないかという気がしてきました。

2007 年の Apple と 2021 年の Apple

上記のiPhone のプレゼンテーションが行われた 2007 年当時は、スマートフォンはまだまだ新しいものでした。
日本では多くの人がガラケーを使っていたように思いますし、日本の中で比較的流行ったような気がする W-ZERO3 シリーズの発売は2005年末です。
スマートフォンという概念自体が新しい時代でした。
初代 Macbook Air の発表は翌年の 2006 年であり、いわゆるノートPCのセグメントで Apple が存在感を示すのはもう少し先の話です。
Apple 製品は、2007 年時点では、イノベーター理論における、イノベーターかアーリーアダプターを対象としたものだったと思います。
スマートフォンや Apple 製品はこのあと見事にキャズムを超え、一気に普及しました。

一方、2021年には、スマートフォンは使っている人のほうが多い状態で、かつ iPhone はスマートフォンを選ぶ際に当然の選択肢として上がってきます。
妻が最近、図書館に付属の施設で、高齢者向けのスマートフォン教室が開かれていて、その先生が「スマートフォンは2種類あって、iPhoneとAndroidです。」と説明していたのを聞いたそうです。なるほどそういう時代なのかと思いました。
iPad もすっかり普及しました。こないだコロナウイルスのワクチンの集団接種に行ったのですが、摂取する人を管理するためなどに端末は iPad PRO だったように見えました。
Macbook シリーズも、ノートPCを選ぶ際に当然の選択肢として上がってきます。
2007年から14年を経て、Appleの製品はアーリーマジョリティはおろか、レイトマジョリティにまで普及したと思って良さそうです。

「Who wants a stylus?」への答え

物理的なキーボードの入力に不慣れで、もちろんソフトウェアキーボードももちろん使えなかったような人でも、Apple Pencil による手書き入力ならできるはずです。
スタイラスによる文字入力を求めている人というのは、そういうことができない、ラガードへ分類される人であったのだろうという確信に至りました。

おわりに

長らくコンピューターへの文字の入力といえばキーボードであるってことになっていましたし、現在でも多くの場合はそうです。
でも、音声入力も普及してきていますし、今回手書き入力もほどほどに実用的なレベルで可能になったことを確認しました。

コンピューターはかつてはキーボード入力ができる人のものであり、文字入力に伴うバリアがあったように思います。

最近、うちの3歳児は、自分で alexa に話しかけて曲を聞いたりタイマーをかけたりといったことを当然のようにします。
そんな感じで、コンピューターの利用に伴う文字入力のバリアフリー化は少しずつ進んできていて、これまでコンピューターを使えなかった人がどんどん使えるようになっていくはずです。

これから先も、人間とコンピューターの関わりがどうなっていくのかが楽しみです。