チャーハンノート

チャーハンの作り方に関する覚書

職場でVIAが使えないのでRaspberry Pi Zero 2 WをVIA専用機にした話

こんな感じで運用してるの図

  • はじめに
    • もうすでに2台目
    • Geonix Rev.2とは
    • PC以外ではVIAが使えない問題
    • 職場PCでもVIA使えない問題
    • ラズパイでVIAを使う
    • やりたかったこと
  • 構成
    • 用意するもの
    • Raspberry Pi OSの選定
  • ラズパイのセットアップ(SSH接続、VNC有効化)
    • Raspberry Pi Imagerでの初期設定
    • ラズパイ起動 → SSH接続
    • VNC環境の構築
    • SSHで接続
    • VNC接続テスト
  • キーボードをラズパイに接続
    • キーボードの接続確認
  • VIAのセットアップ
    • VIAの起動
    • VIAのアプリ化
    • キーボード定義ファイルのダウンロード
    • VIAにキーボードを認識させる
    • VIAからキーボードへアクセスさせるための設定
  • よりよい環境構築にむけて
    • VNC画面が横長すぎる
    • VIAを自動起動化する
    • Chromiumの512MB警告を無効化
    • 諸々の設定が反映されたか確認
  • まとめ

はじめに

もうすでに2台目

Luma40という40%キーボードを購入してから早2か月。
Geonix Rev2という似たような40%キーボードも購入してしまった。

キーキャップ選びに難儀した末の無刻印

Luma40は職場用に昇格(?)し、Geonix Rev2は家用/モバイル用として、仕事とプライベートとも40%・オーソリニアキーボードを併用するに至る。

Geonix Rev.2とは

Geonix Rev.2は、キーボードブランドのChosfoxによる、40%サイズ・オーソリニア・ロープロファイルメカニカルキーボード。

チョスフォックス X マスロ |ジオニックス Rev.2chosfox.com

商品サイトより

Luma40よりも先に発売されているので、Luma40はそのパクリだという声も根強い。
確かにキー配置やキースイッチだけでなく、アルミフレームやビカビカLEDなど重複する要素は多い。
ただ、それを言い出すと「そもそも40%オーソリニア配列はPlanckが先で云々・・・」が始まってしまうので、これ以上は触れない。

Geonix Rev.2は、Luma40と比べるとアルミフレームのベゼル部分が若干薄い。
その分軽量で、モバイル用途には有利だ。
なにより、外観がよりシュッとしているのがお気に入り。

そんなGeonix Rev.2には無刻印キーキャップがよく似合う。
(キーキャップ探しが面倒臭くなっただけ、ともいう) (印刷したキーマップをどこでも持参している)

余談だが、Rev2を購入した直後、Rev2.5が発売されたと知ったときはショックだった・・・

Chosfox X Masro 40 Layout| Geonix Rev.2.5chosfox.com

PC以外ではVIAが使えない問題

そんな感じですっかり40%キーボード沼にハマっている状態だ。
VIAを使ってちょくちょくキーマップ編集を行ったりもしている。

VIAとは、対応するキーボードのキーマップをブラウザから変更できるツールだ。
キーの割り当てやレイヤー設定をリアルタイムで変更できるのが特徴で、多くの自作キーボードで採用されている。

そんな状況なので、外出先でiPadとこのキーボードを使っていると、 「ここのキー配置を変えたい」とか 「ここにこんなショートカットがあればいいのに」 などと思うことがちょくちょくあった。

PCで作業中であれば、サッとUSBケーブルで繋いでVIAでキーマップの編集ができる。

しかし問題があった。

iPhoneやiPad、AndroidだけではVIAを使うことができなかった。

VIAでキーマップを編集するにはブラウザがWebHIDに対応している必要がある。
WebHIDは、WebブラウザからUSB機器(HIDデバイス)を直接操作するための仕組みのことだ。
しかし、色々と調べたところWebHIDに対応したブラウザが使えるのはWIndows、MacOS、Linuxぐらいで、iOS や Android OSで対応したブラウザは現時点で存在しない。

そしてもう一つ重大な問題があった。

職場PCでもVIA使えない問題

職場のPCでもVIAを使うことができなかった。

職場にもよるが、USBメモリのような外部記憶媒体の使用が制限されているようなところは少なくないと思う。
そんな環境ならばWebHIDのようなブラウザを経由してUSB機器にアクセスするような機能を使用するなど言語道断だ。

いちおう筆者の職場では自前のキーボードを使用することは容認されてはいる。
だが、試しにLuma40とPCをUSBケーブルで接続し、VIAにアクセスしてみたところ、下図のようなエラー表示となってしまった。

念のため、これは iPhone のブラウザからVIAにアクセスしたときのメッセージ。
職場PCも同じメッセージだったと思う。

そんなわけで、現状では外出先や職場で無性にキーマップを編集したくてもできないという状況が発生しうる。おそろしや。

もしこんな状況に陥ったら、現状はただただ我慢するしかない。
でも我慢している間に、キーマップのアイデアが風化してしまうかもしれない。
おそろしや。

この状況どうにかならんのかと色々考えたところ、ふと光明が差してきた。

「ラズパイがあるやんけ」

続きを読む

Luma40購入・設定メモ (Windows時々Mac)

先日、Luma40というキーボードを購入した。
ここではそのきっかけと、MacBookでの設定で難儀したことなどを書き連ねることにする。

目次

  • 購入のきっかけ
    • メインのキーボード(65%)
    • EpoMaker Luma40
      • 40%キーボードとは
      • オーソリニア(格子)配列とは
  • 40%キーボード 設定方針 (Win ときどき Mac)
    • JISキーボード設定
    • VIAでLuma40に接続
    • VIA用デザイン設定
    • Luma40 キーマップのカスタマイズ例(ご紹介)
    • キーキャップ交換
  • MacBookのキーボード設定
    • Karabiner- Elementsによる設定
  • まとめ
続きを読む

ポケットカメラ風 Webカメラの製作 (ラズパイ編)

ラズパイにポケットカメラ風映像を生成させた様子

前回の記事では、ゲームボーイポケットカメラ風の映像をPC画面上に再現する方法について検討した。
今回はラズパイ(Raspberry Pi)に同様の機能に実装し、Webカメラとして活用できるところまで挑戦する。

続きを読む

ポケットカメラ風 Webカメラの製作 (試作編)

ポケットカメラ風カメラビューワ(Processing)で撮ったグワシ

目次

ポケットカメラとは

ポケットカメラは、1998年に任天堂から発売された携帯ゲーム機「ゲームボーイ」の周辺機器。
180度回転が可能なカメラが内蔵されたカートリッジ型の構造で、ゲームボーイに差し込むことで簡易的なデジカメとして使うことができる。
周辺機器という位置づけながら、顔写真を取り込んだミニゲームやDJ風機能など遊び心が随所に散りばめられているところがとても任天堂らしい。

任天堂ニュースリリース(1997.11.21) www.nintendo.co.jp

ポケットカメラの仕様

ポケットカメラで撮影できる写真のスペックは以下のとおり。

 画素数:縦112 × 横128  画素:モノクロ4階調

素数ゲームボーイ(縦144 × 横160ドット)よりも少ない。これは、内蔵されたCMOSセンサーが128×123ピクセルであることに起因する。

CMOSセンサーは三菱製の「M64282FP」だそう。ASCII.jpには1997年にこのM64282FPを出荷したとする記事が残っていた。 ascii.jp

記事によれば「人工網膜チップIC」を謳い、特徴検出や並列処理が行えるとのこと。あいにくそれらの機能がポケットカメラに採用された様子はない。それにしても27年も前の記事がWayback Machineのようなアーカイブ要らずで読めてびっくりした。

余談だが、当時(1998年)のデジタルカメラやビデオカメラに採用されている撮像素子はCCDが主流だった。当時まだCMOSセンサーは低画質・高ノイズと、性能ではCCDと比べ物にならなかったらしい。とはいえ低価格・低消費電力という優位点もあった。
その後、半導体の微細化技術の進展とともにCMOSセンサーも性能向上し、2000年にはCMOSセンサーのカメラ内蔵携帯電話が発売されたりもした。
そしてCMOSセンサーは順調にCCDのフィールドを駆逐していき、今に至る。

枯れた技術の水平思考」の塊ともいえるゲームボーイの周辺機器として、当時としては低画質・高ノイズだが低価格なCMOSセンサーを搭載したポケットカメラが発売されたのは、タイミングとして絶妙で、とても感慨深い。

続きを読む

【python】自炊したPDFファイルに目次を追加する

自炊した書籍のPDFファイルに目次を追加した様子

ここでいう自炊とは

本が溜まってくると、年に1回ほどのペースで自炊をしている。
ここでいう自炊とは「書籍をスキャナーで取り込んで電子書籍化する」ことだ。

「自」分で「吸い」出すから自炊。
いかにもネットスラング的な言い回しなので違法行為かのようだが、個人の利用においては合法であり、権利として保障されている。もちろんデータを他人に配布すればたちまち違法となる。
自分はトラ技のような専門誌や、買ってから1年以上経った技術書をひたすら電子化してはライブラリを眺めてニヤニヤしている。(読んでない)

目次

  • ここでいう自炊とは
  • 目次
  • 自炊の方法
  • 自炊本に目次がない件
  • pypdfに決めた
  • しおり派?目次派?
  • ブックマークファイルの作成
  • PDFファイルに目次を追加する
  • 最後に
続きを読む

スペクトログラムに文字列を表示する


iphoneのスペクトログラム用アプリで”青椒肉絲”を表示した様子。

目次

  • 目次
  • スペクトログラムとは
  • 作りたいもの
  • Pythonista 3を使う
  • Pythonistaで日本語フォントを扱う準備
    • フォントのダウンロード
    • フォントファイルをPythonistaのディレクトリに移動する
  • 作成したプログラム
  • プログラムの中身
    • 関数の構成
    • 補足1 : 文字数をカウントする方法
    • 補足2 : 周波数ステップの区切り方
  • 反転モードも用意した
  • 終わりに

スペクトログラムとは

スペクトログラムは、音声などの信号情報を可視化する手法。
縦軸を周波数、横軸を時間とする座標上に、信号成分の強さを色で表現する。

高額な機材は必要なく、スマホ用アプリなんかもある。iPhone用だとSpectrogram Proというアプリ(有料)を日常で多用している。

Spectrogram Pro (with super-smooth 60Hz update)

Spectrogram Pro (with super-smooth 60Hz update)

  • Dominik Seibold
  • ミュージック
  • ¥600
apps.apple.com

口笛で小刻みに半音ずつ上げたり下げたりを繰り返すと、iPhoneにはキレイなジグザク模様が描かれる。 そんな様を眺めては悦に入っている。

スペクトログラムを使った例で好きなのは、電車のインバータ音(磁励音)を表示したもの。

youtu.be

この動画では一般的に「ノイズ」と言われがちな電車の磁励音を、特殊なアンプを使用することで高音質に、スペクトログラムとともに提供されている。
さらにはインバータ音の再現版も作成されており、本物の磁励音と再現音とを視覚的に比較できる。
鉄道に興味がなかった自分でも「こんな法則で音がでているのか」と驚くとともに、聴いているとなんだか癒やされてきて、次第に鉄道(というかモーター)にも興味が湧くようになった。

話を戻すと、
音声を画像で表現できるということは、画像を音声に変換することも可能ということになる。
同じことを考える人は多数おり、ググれば無数に情報が上がっている。
今回は自分がほしいと思う用途に特化して、Pythonで試作することにした。

続きを読む

AlexaにKindle本を朗読させてオーディオブックにする

AmazonブラックフライデーでEcho Show 5という製品を購入した。
Kindleの読み上げ機能があり、思いの外読み上げの品質が良かったので、録音してオーディオブックにしてみた。
その過程と手順についての記録。

目次

  • 目次
  • Alexaというものを知った
  • AlexaがKindle本を朗読する
  • オーディオブックの代わりになるか
  • AlexaのKindle読み上げ機能が苦手なところ
    • レジュームができない
    • Echo Show5にはライン出力端子がない
  • Alexaのアプリがあった
  • 読み上げと録音はAndroid端末で
  • 各種設定と収録手順
    • AZスクリーンレコーダーの設定
    • Android端末の設定
    • Alexaアプリの設定
    • 収録を始める
  • 収録動画から音声ファイルを抽出する
    • Android端末の動画ファイルをMac本体にコピー
    • 音声ファイルへ変換
    • 無音区間のトリミング
  • 自作オーディオブックの再生環境
  • 数時間聴いた感想
  • 最後に
続きを読む