酒と機械とときどき読書

PCいじりやウイスキーについて書くブログ。ほとんど自分用備忘録

USキーボードで日本語入力をしたい(Debian)

新しいノートPCのセットアップ中、USキーボードで日本語入力と英字入力をAlt+`で切り替えたいなと思った。(MozcはAltやSuperをショートカットに使えないようなので)今まではGnomeibus-mozcを使って、Alt+`はウィンドウの切り替えに割り当てられてしまっているため、super+spaceでUSとmozcを切り替えていた。USキーボードが繋がってるDebianは今まで使用頻度が低かったので大して気にならなかったが、今回はメインのノートPCなのでこだわりたい。

まずは必要なパッケージのインストール。

sudo apt-get install ibus-mozc dconf-editor

SettingのRegion&Languageから左下の+をクリックして、More…→OtherからJapanese(Mozc)をAddする。

次にdconf-editorを起動して、/org/gnome/desktop/wm/keybindings/switch-groupを編集する。

Use default valueをオフにして、Custom value

['<Super>Above_Tab']

あたりにする。(ここは好みで)
値を変更すると下に青いチェックマークが出てくるのでクリックして反映。

最後に、SettingsのKeyboardから、Switch to next input sourceをAlt+`にして終わりだ。
起動時はMozcがDirectInputになってるので何らかの手段でひらがなにすれば、Alt+`で切り替えができるようになる。

TWRPでカスタムROMのインストールが失敗する

結構前に買ったVerneeのApollo Liteの画面を割ってしまい、しばらく放置していたのだが、Oreoにしたいと思い立ったので手を付けてみた
やり方はぐぐると出てくるので簡単にだけ説明する。

・7.1.2をSPFTで書き込んだあと、TWRPの新しい奴(3.2.1-0?)を入れる
・TWRPを使って8.1.0をインストール

という流れ。
なのだが、インストール中に

Updater process ended with ERROR: 7

と出て失敗してしまう。どうやらそのZIPは古いからインストール出来ないよって事らしいのだが、そんなはずはないと思う。
取り敢えずの解決策として、zip内のスクリプトを書き換えれば良いらしい。zip展開後に出来るMETA-INF\com\google\androidのupdater-scriptをテキストファイルで編集する。
分岐っぽい処理の後にabortと書いてある行を消せば良さそう。今回使ったROMの場合は上の2行。

(!less_than_int(1514919490, getprop("ro.build.date.utc"))) || abort("E3003: Can't install this package (Di 2. Jan 19:58:10 CET 2018) over newer build (" + getprop("ro.build.date") + ").");
getprop("ro.product.device") == "apollo_lite" || abort("E3004: This package is for \"apollo_lite\" devices; this is a \"" + getprop("ro.product.device") + "\".");

保存して圧縮して再チャレンジするとインストール成功したので良かった。

LinuxでGPUベンチをしたい

最近は全然増えていないがPCを集めるのが趣味みたいなところがあるので家にPCがたくさんある。だが、家のPC全てにWindowsをインストールするお金はないので普段はLinux(主にDebian)を入れて使っている。
大多数のPCが勝手に増える人と同じで自分もベンチマークを走らせるのが大好きなのだがベンチマークソフトはWindowsの方が圧倒的に充実している。とはいえベンチのためだけにWindowsをインストールするのは面倒だしライセンスもないのでLinuxで動くGPUベンチマークを探してみた。

ちょっと探すとこんなものを見つけた。
GitHub - glmark2/glmark2: glmark2 is an OpenGL 2.0 and ES 2.0 benchmark
OpenGL2.0を使っていてちょっと古いのが気になるが、他に良さそうなものも見つけられなかったので試してみる。ちなみにglxinfoを使うと自分のGPUが対応しているOpenGLのバージョンを確認できる。Debianではglmark2のパッケージが提供されていないようなのでビルドする。
まず必要なパッケージをインストールする。2018年11月のDebian testingで必要になったパッケージは以下の通り。
libpng-dev libjpeg-dev build-essential libgl1-mesa-dev pkg-config 

gitでクローンしてビルド、インストールする。

git clone https://github.com/glmark2/glmark2
cd glmark2
./waf configure --with-flavor=x11-gl
./waf
sudo ./waf install

こんな感じ。--with-flavorのところは適宜変えたほうが良さそう。INSTALLってファイルにどんなのが選べるか書いてある。

実行するとこうなる。

=======================================================
    glmark2 2017.07
=======================================================
    OpenGL Information
    GL_VENDOR:     X.Org
    GL_RENDERER:   AMD KABINI (DRM 2.50.0, 4.18.0-2-amd64, LLVM 6.0.1)
    GL_VERSION:    3.1 Mesa 18.1.9
=======================================================
[build] use-vbo=false: FPS: 920 FrameTime: 1.087 ms
[build] use-vbo=true: FPS: 1117 FrameTime: 0.895 ms
[texture] texture-filter=nearest: FPS: 992 FrameTime: 1.008 ms
[texture] texture-filter=linear: FPS: 1005 FrameTime: 0.995 ms
[texture] texture-filter=mipmap: FPS: 1039 FrameTime: 0.962 ms
[shading] shading=gouraud: FPS: 957 FrameTime: 1.045 ms
[shading] shading=blinn-phong-inf: FPS: 939 FrameTime: 1.065 ms
[shading] shading=phong: FPS: 941 FrameTime: 1.063 ms
[shading] shading=cel: FPS: 929 FrameTime: 1.076 ms
[bump] bump-render=high-poly: FPS: 817 FrameTime: 1.224 ms
[bump] bump-render=normals: FPS: 1104 FrameTime: 0.906 ms
[bump] bump-render=height: FPS: 1043 FrameTime: 0.959 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 846 FrameTime: 1.182 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 454 FrameTime: 2.203 ms
[pulsar] light=false:quads=5:texture=false: FPS: 932 FrameTime: 1.073 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 394 FrameTime: 2.538 ms
[desktop] effect=shadow:windows=4: FPS: 604 FrameTime: 1.656 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 265 FrameTime: 3.774 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 355 FrameTime: 2.817 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 278 FrameTime: 3.597 ms
[ideas] speed=duration: FPS: 915 FrameTime: 1.093 ms
[jellyfish] <default>: FPS: 619 FrameTime: 1.616 ms
[terrain] <default>: FPS: 77 FrameTime: 12.987 ms
[shadow] <default>: FPS: 650 FrameTime: 1.538 ms
[refract] <default>: FPS: 104 FrameTime: 9.615 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 1061 FrameTime: 0.943 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 1025 FrameTime: 0.976 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 1060 FrameTime: 0.943 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 1054 FrameTime: 0.949 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 1025 FrameTime: 0.976 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 1052 FrameTime: 0.951 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 1054 FrameTime: 0.949 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 1050 FrameTime: 0.952 ms
=======================================================
                                  glmark2 Score: 808 
=======================================================

他のマシンでも試してみないとなんとも言えないが全体的にフレームレートが高すぎる(負荷が軽すぎる)気がする。

DebianでのHW動画再生支援機能

しばらく触っていなかったサブPCでm2tsの動画を再生しようとしたらカクカクで使い物にならなかった。CPUはAthlon5350という安いAPUでOSはDebianのStretchだった。

Linuxはデスクトップとしてよりサーバーとしての使用がメインだったので動画のハードウェアデコードに関しては殆ど気にしたことがなかった。気になったのでちょっと調べてみた。

Linuxにおける動画再生支援機能のAPIは大きく分けて2種類らしい。VA APIとVDPAUの2つがあるのだが、これらの違いは他に詳しいサイトがあるのでリンクを貼っておく。

ハードウェアビデオアクセラレーション - ArchWiki

LinuxでGPUの動画再生支援を用いる(主にDebian/Ubuntu向け) - kakurasan

 

また、Radeonの機能のサポートについてはこのページが詳しい。

RadeonFeature

上のページのAthlon5350(KABINI)の欄を見ると、H264とMPEG2のハードウェアデコードはしてくれそうである。自分のPCに載っているGPUが何なのかについては、lspciで確認してもいいがscreenfetchというコマンドを使うと見やすくていいかもしれない。

 

手動でのインストールが必要なパッケージはfirmware-linuxだけのようで、/etc/apt/sources.listにcontribとnon-freeを追加してからインストールすると、他の必要なパッケージを一緒にインストールしてくれる。また、vainfo又はvdpauinfoを入れると同名のコマンドで使える支援機能の確認ができるようになる。

 

再生用ソフトについてはmpvを使用した。--hwdecオプションにvdpauかvaapiを引数として渡すと再生支援機能を使ってくれる。

mpv --hwdec vdpau movie.mp4

のように使う。 

 

実際に試してみると--hwdecを付けた時のほうがCPU使用率が低く、しっかり再生できていた。実は以前にプロプライエタリなドライバを入れ、その後アンイストールした経験があり、そのせいか一度インストールし直すまではvaapiもvdpauも初期化に失敗していた。動画の再生時にやたらカクついていたのも以前のプロプライエタリドライバの残滓が何か悪さをしていた様でクリーンインストール後は--hwdecを使わずともカクつかずに再生できるようになった。

耳コピしたMIDIを楽譜にしたい

アニメのパチスロのキャラソンというマイナーどころにハマってしまった。その曲のピアノで弾いてみたが聞きたかったのだが、当然見つからない。ので頑張って耳コピをしてみた。

DTM的な事は殆ど経験が無かったのだがDominoでMIDIファイルを作ってみた。MIDIを楽譜にするソフトを3つ使ってみたので使用感を書いてみる。ついでにその過程で覚えておくと便利だなと思ったことについてもメモしておく。ちなみに、MIDIファイルは右手と左手に1トラックずつ割り当てて作ったのでその様なMIDIを楽譜化する時の感想である。

 

・MuseScore

だいぶ有名だししっかりしている(印象がある)。ファイルを開くからMIDIファイルを選択すれば大体いい感じに楽譜にしてくれる。声部の数を1にして、楽譜の分割のチェックを外すと猶良い感じになる。

・Score Grapher View

正直実用レベルに達していないと思う。設定項目がほぼないし、トラックを勝手にト音記号ヘ音記号に分けてしまう。調号も上手くつかない。あまり使う理由がない。

Midi Sheet Music

そこそこ使える。フリー(無料という意味でなく)なのも良い。設定項目も色々あってそんなに不満はないが、3連符を処理できてなかったので実用は難しいかもしれない。

 

以下はメモ

耳コピ

耳コピする過程でVocalReducerというソフトを使ったのだが中々便利だった。左右チャンネルの差からセンター成分を消去してくれる。ボーカル以外の音も結構消えちゃうけどハモリ等を取るときに役に立った。

また、作ったMIDIと元の曲をAudacityでスタート位置とテンポを合わせると音があってるか確認するのが楽だった。

 

・Dominoの使い方について

上の方にある玉ねぎをクリックすると一つ前のトラックを表示できて便利だった。

選択ツールとペンの切り替えはF5で出来る。

ペダルのON/OFFは下の方からできる。CCの64番。

 

MIDIを音声ファイルにしたい

SMF to MP3 converter with VOCALOU

このサイトが便利だった。mp3とwavを生成してくれる。音源も色々選べてよい。

 

おサイフケータイを試す(F-02E)

このご時世に小銭やらポイントカードで財布を膨らませるのはばからしいと思ったのでおサイフケータイを使ってみる事にしました。長年Androidを使っていて、前々から興味はあったのですが、メイン端末にNexusを使い続けていた事もあり手を出していませんでした。


まともな対応端末を持っていないと思い込んでいた事もあって試していなかったのですが、白ロムで購入したF-02Eが眠っていることを思い出したので0SIMを入れて数日持ち歩いてみる事にしました。

ちなみに、F-02Eは5年ほど前の端末でカイロとか呼ばれていた悪名高いARROWSです。Tegra3が載っていてRAM 2GB,ROM32GBなのでSNS,ブラウジング程度なら普通にこなせます。使用していない時のバッテリー持ちも悪くないのでおサイフケータイ専用端末としてはありかと思います。※追記 OSのバージョンが古いので新規購入などは全くおすすめできません。

準備

おサイフケータイアプリがインストールされていましたが、これは現在使用しているサービスとその残高の確認をするだけのようで、実際に使用するためには各サービス専用のアプリをインストールしなければならない様です。使用機会が多そうなSuicaEdyをインストールしてみる事にしました。

モバイルSuica

クレジットカードを登録するためには有料会員にならなければいけないようなので、三菱東京UFJ銀行のネットバンキングからのチャージにしました。クレカを使うのにお金がかかるのはかなりマイナスですね。

Edy

楽天のアカウントとの連携がかなり考えられています。楽天スーパーポイントからのチャージに対応し、すでに登録してあるクレカからの支払いも可能です。Suicaよりも使い勝手が良さそうです。

感想

使い始めて4日ほどですが、かなり便利ですね。財布からカードを探す手間が省けるだけでこんなに快適だとは思いませんでした。私自身が整理できないせいもありますが、財布がパンパンになっていてポケットから取り出しづらいのもあったのでなおさらです。サービスを増やしてもうしばらく使ってみたくなりました。