Raspberry Pi OS Bookwormでfcitx5-mozcのかな入力ができない

かな入力って日常的に使っている人はあまり多くないため,日本語入力ソフトにおける検証が十分なされないことが多々あることをこれまでの経験で知っています.

Manjaro AMD64, 同 ARM64, Debian AMD64ではfcitx5-mozcはちゃんとかな入力可能です.

しかし,先日リリースされたRaspberry Pi OS Bookwormにfcitx5-mozcをインストールした状態ではだめです.少なくとも今のところだめです.どうだめかというと,濁点を打とうとすると, “ふ” になってしまいます.「だくてん」と打ったつもりが,「たふくてん」と表示されます.これでは使い物になりません.

実はManjaro ARM64は日本語のかな入力はfcitx5-mozcでちゃんとできるのですが,FirefoxでWordPressの編集などをしているとよく固まります.そんなわけでRaspberry Pi OS Bookwormが使えるんだったら乗り換えようかと考えていただけに,ちょっと残念です.

その後: 濁点は解決したものの長音記号がNG

いろいろ,いじって濁点は解決しましたが,長音記号が出ません.いじっているのは,CUIのシステムのキーマップ,/etc/X11/xorg.conf.d/内の設定,KDEのキー設定など思いついたキーボード設定に関わるところ手当り次第です.

長音記号についてはシフトを押すと出ますが,基本的にタイピングは文章を考えながらやるので,長音記号のときにいちいちシフトを押すことを気にかけていては文章の作成の思考が止まってしまうので,非常に使いづらいとしか言いようがありません.

ちゃんとかな入力ができているManjaro AMD64のKDE Plasma Desktop + fcitx5-mozcの設定を真似ていますが,どうしたものかDebian ARM64 KDE Plasma Desktop + fcitx5-mozcではうまくいきません.

さらに後の注: 解決

/etc/X11/xorg.conf.d/00-keyboardというファイルを以下の中身のテキストファイルとして作ります

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "jp"
    Option "XkbModel" "jp106"
    Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

ただし,Waylandでは/etc/X11/xorg.conf.d/以下を参照しないようなので意味をなしません.

Raspberry Pi 3 でRTSPを見る(結論)

使い道のないRaspberry Pi 3 Model B (RPi3) やRaspberry Pi 3 Model B+ (RPi3+)で,RTSPを視聴する方法の結論としては,

ffplay (FFMPEG)で見る

で最終決定しました.唯一懸念されていた時間遅れの蓄積は,その後半日ほど連続運転したところ,不思議と解消されました

FFMPEGが使えるならばRaspberry Pi OSでも行けるはずですが,いまさら面倒なので,RPi3ではManjaro ARM xfce, RPi3+ではManjaro ARM KDE Plasmaでこのまま行きます.

自動起動については,

#!/bin/sh
sleep 30
DISPLAY=:0 /usr/bin/ffplay rtsp://ユーザー名:パスワード@ホストのFQDN/指定された文字列 -loglevel quiet -fs > /dev/null 2>&1 &

というスクリプトを実行可能にして適当な場所に置いて設定からAutostartに指定したら,xfceもKDE Plasmaもうまくいきました.sleep 30については要調整です.フルスクリーンオプション-fsはお好みで.

なお,xfceでは設定のScreen saverをOFFが機能しますが,KDE Plasmaはそのスイッチが効かないようなので,ワークアラウンドとして,.xprofile

DISPLAY=:0 xset -dpms
DISPLAY=:0 xset s off

を書いてます.

たぶん,下記のスクリプトのように,コンソールにlogを出さないようにしたためかもしれません.それでも多少は遅れます.
と言いつつ後日試しました.ffplayだけのためにインストールするなら,Raspberry Pi OSが一番楽で,起動も早いのでお勧めです.
一年前にそうだったのですがその後確認はしていません😅

Manjaro ARMでもVLCでRTSPはNGに

ここだけの話にしておいてください.2023年10月3日(火)現在ですが,Manjaro ARMの配布しているVLC最新版(3.0.18-16)は,RTSPの視聴が可能です.Raspberry Pi 4 Model B (RPi4)で確認しました.

で,めでたしめでたしと行きたかったのですが,他の2台のManjaro ARMを最新版にしたところ,VLCによるRTSPの視聴はできなくなりました.

どうも,視聴できる方がどこかおかしいようです.パッケージ管理のデータベース上は最新版にアップデートされているはずが実際は古いままだとか.

FFMPEGも微妙

かつて,VLCでなくコマンドラインのmplayerPython3のライブラリーを試したことがありましたが,いずれも遅延がどんどん大きくなって,実時間の監視用には使えないことがわかりました.Raspberry Pi 3 Model B (RPi3) とRaspberry Pi 3 Model B+ (RPi3+) でのテストでした.

今回,FFMPEGを試してないことを思い出し同じくRPi3, RPi3+でFFMPEGのコマンドラインプレーヤーffplayを試してみましたが,mplayer, Python3のライブラリーほどではないものの微妙に遅延していきます.

RPi3でffplayを動かしていると,一時間に数十秒遅れて,数時間で数分遅れという状況になります.一時間ごとに再起動すれば良いかもしれませんが,あんまりスマートではありません.

いろいろ試すとVLCがよくできているのが解るばかりで弱ります.

いずれもあくまで当社調べです.

ちなみにCore i7のデスクトップ機ではffplayでも遅延が増大することはありません.

「VLCでrtspを見る」は依然難航中

なんだか相変わらず断片的な書きなぐりなので,何をどうしたくて今どういう問題に直面しているのかというのを一旦まとめます.

最終目標としては,安いモニターカメラが出力するRTSP (Real Time Streaming Protocol)をRaspberry Pi 3 Model B (以下RPi3.Raspberry Pi 3 Model B+はRPi3+)にて視聴するというプロジェクトです.

昨年の段階ではRPi3およびRPi3+にManjaro ARMをインストールして,Manjaroが配布する(もとはArch Linux)VLCで視聴できていました.

しかし,その後一年間モニターカメラの運用を停止していた間にManjaroのVLCもDebianやUbuntu等と同様にRTSPのサポートを止めてしまったようで,RPi3(+)で視聴する方法がなくなってしまいました.

それで現在RPi3(+)でRTSPサポートの付いたVLCを動かす方法を色々探しています.

VLCについて明らかなのは,「本家のVLCはRTSPの視聴が可能」ということです.直接本家がバイナリーを配布しているmacOS版は問題なくモニターカメラからのRTSPを音声込みで再生できています.Windows版については確認していませんが,たぶん同様に問題ないと思います.

一方,Linuxについては,各distroのbuildを尊重しているようです.

SlackwareはdistroにはVLCは含まれていません.SlackBuildsにスクリプトがあるので,sbopkgでbuildできるはずですが,必要なパッケージが35もあってめげてしまいます.それでも気を取り直してまずVLC本体からbuildして,エラーが出るパッケージ(=必須のパッケージ)をbuild & installしていこうと方針を立て,

sbopkg -b vlc

とすると,ソースの配布サイトのアドレスがresolvできないというどうしようもないエラーが出てしまいます.

なお,前述のVLCのダウンロードサイトには,Slackwereのバイナリーのリンクもあります.これはSlackwareに貢献著しいAlienさんがbuildしたもので,試したところ,32bit版も64bit版も問題なくRTSPを再生できます.もし,Alienさんに限らずだれかがARM用もbuildして配布していれば解決なんですが😅

仮想マシンのSlackware 15.0 (32bit版)でRTSPを再生するAlienさんbuildのVLC

ManjaroのVLCもRTSP NGか

色々事情がありまして,しばらくRTSPを視聴せずに来ましたが,また必要にかられて再開しました.

macOSでVLCの本家からdownloadしたVLC media playerは,従来どおり難なく視聴できます.たぶんWindowsでも本家からdownloadすれば使えると思います.

ところが,Manjaro (AMD64版)では視聴できなくなっていました.Debian同様ソースコードにライセンス上の問題があるとかそういう関係でRTSPの機能を除外してしまったのでしょうか

ManjaroでRTSPが視聴可能というのは,Raspberry Piでも視聴可能にできるという大きな意義があったのですが,それができないとなると,Raspberry Piでの監視カメラシステム構築に大きな支障となってしまいます.

さてどうするか

ManjaroのVLCでRTSPの再生ができないことを他のいくつかの環境からテストしてみます.それで確定となれば新しいdistroを探さなければなりません.

Slackwareではsbopkgでbuildできることが解っています.しかし,slackbuilds.orgに登録されているスクリプトは,すべてのアーキテクチャでエラー無くbuildできるとは限りません.特に最終ゴールはRaspberry Pi 3なので,AMD64やx86環境はOKでもaarch64環境でbuildができる可能性は低いと考えています.

それと,依存ファイルの多さです.35もあります.オプショナルなモジュールならば無くてもVLCのbuildスクリプトがその機能を除外して先に進んでくれるようですが,必須のライブラリーがbuildできないとそこでアウトです.一番成功の可能性が高いAMD64でのbuildも躊躇してしまいます.

筆者にはその辺の事情は関係ないので調べません😅
日本の政府やメディアは「防犯カメラ」と呼ばせたいようですが.