目次: Arduino
ゲーミングマシンの流行により、最近のコンピュータは意味もなくビカビカ光って点滅しています。個人的にはマザーボードや電源が七色に光る意味が全く見出せません……。電気を無駄にしてる感があります。
しかし組み込み機器の場合は話が別です。画面出力やUARTなどが確認できる機器なら状態がわかりやすいですが、外部出力に乏しい機器は動いているかどうかよくわかりませんので、生存確認方法の1つとしてLEDを交互に光らせる(もしくは点滅させる)方法は現代でも割と見かけます。
先日購入したROCK 3Cも生存確認で青色LEDが点滅するようになっています。ドライバで実装しているようで点滅が鬱陶しいなら、
$ sudo rmmod ledtrig_heartbeat
とすると点滅が止まります。二度と点滅しなくて良ければ/etc/modules-load.d/modules.confを編集してledtrig-から始まる4行を全てコメントアウトすれば良いです。ただし青色LEDは消灯ではなく常時点灯になってしまいます。消灯させる方法は、
# echo 0 > /sys/class/leds/user-led1/brightness
もっとスマートに消灯させる方法はあるんだろうか……?
AVIFが読めないアプリケーションがたまにあるので、AVIF(AV1 Image File Format)画像をJPEGなど他の形式に変換する方法をメモしておきます。AVIFが変換できるなら別に何でも良いのですが、今回はImageMagickを使用します。
AVIFとは何かですが、まずMPEG系のHEICファイル形式があります。HEIF(High Efficiency Image File Format)コンテナにHEVC(High Efficiency Video Coding, ISO/IEC 23008-2 HEVC, ITU-T H.265)で圧縮した画像を格納したファイル形式です。AVIFはHEIFコンテナを流用して、HEVCの代わりにAV1(Alliance for Open Media Video 1)で圧縮した画像を格納したファイル形式です。まとめるとこんな感じです。
ファイル形式 | コンテナ | 画像圧縮方式 |
---|---|---|
HEIC | HEIF | HEVC/H.265 |
AVIF | HEIF | AV1 |
WebP | WebM(Matroskaサブセット) | On2/Google VP8, Google VP9(当時、AV1対応が遅れていたらしい) |
AOMedia(Alliance for Open Mediaを略したもの)を含む、非MPEG系の陣営はWebMというMatroskaベースのコンテナを使うことが多いです。でもAVIFはHEIFを使うんですよね。動画系コーデックは大抵MPEG系のMP4(ISO/IEC 14496-12, 14 MP4ファイルフォーマット)コンテナに対応していますし、MPEG系コンテナを使うこと自体は変ではないですが……。WebPの策定が遅れたらしく、AVIFが先に流行っちゃったのは面白いなと思います。
ビルド前の準備です。AVIFはHEIFコンテナを使っていますので、HEIFを扱うためのライブラリをインストールしておきます。
# apt-get install libheif-dev
ImageMagickのソースコードはGitHubにあるので、cloneしてきてビルドします。
$ git clone https://github.com/ImageMagick/ImageMagick $ cd ImageMagick $ mkdir build $ cd build $ ../configure $ make
AVIFを扱えるかどうかはconfigureログのHEICの行に表示されます。
Delegate library configuration: BZLIB --with-bzlib=yes yes Autotrace --with-autotrace=no no DJVU --with-djvu=yes no DPS --with-dps=no no FFTW --with-fftw=no no FLIF --with-flif=no no FlashPIX --with-fpx=no no FontConfig --with-fontconfig=yes yes FreeType --with-freetype=yes yes Ghostscript lib --with-gslib=no no Graphviz --with-gvc=yes no HEIC --with-heic=yes yes ★yesになっていればOK JBIG --with-jbig=yes yes JPEG v1 --with-jpeg=yes yes JPEG XL --with-jxl=yes no ...
下記のように実行します。
./magick.sh ./utilities/magick hato.avif hato.jpg
ビルドに失敗していると、no decode delegate for this imageエラーが出て怒られます。
magick: no decode delegate for this image format `AVIF' @ error/constitute.c/ReadImage/746.
このメッセージが出るときは先ほど紹介したconfigureのログを確認してみてください。
いきなり仕事部屋のシーリングライトが消えました。蛍光管の寿命にしては去年(2022年10月19日の日記参照)替えたばかりですし、もしかして本体が壊れた……?
リビングのシーリングライト(同機種)と蛍光管を入れ替えると点くので、蛍光管は生きていて本体(Panasonic HHFZ4290)が壊れたようです。去年の蛍光管交換時に「2回目交換する前にシーリングライト本体が壊れそう(本体の寿命<蛍光管2回分の寿命)」と予想していましたが、その通りになりました。悲しいね。
昨今は蛍光灯が悪者扱い(わずかに水銀を使う)で製造禁止に向かっているようです(一般照明用の蛍光ランプの製造・輸出入は2027年までに廃止されます - 環境省)。店頭にはほぼLEDのシーリングライトしか売っていません。
広範囲を照らせると触れ込みのPanasonic HH-CG1034Aを買いました。明かりの色を白くしたり黄色くしたり好きに変えられるのは、LEDならではですね。あとリモコンがでっかいです。邪魔くさい。
< | 2024 | > | ||||
<< | < | 05 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 | - |
合計:
本日: