2018年1月18日木曜日

LabとLabo

日本時間の本日朝、任天堂からNintendo Switch用の
新しい概念のゲーム[Nintendo Labo]が発表されました。
その内容については後日考察するとして、今回はちょっと別の話。

[Nintendo Labo]の“labo”は研究室を意味する“laboratory”の略と思われます。
まさか違うなんてことはないよね?
まあそれはともかく、私の直感的には略としては“lab”の方がふさわしい気がし、
このブログのタイトルもそれに沿って名付けています。
この認識は欧米では正しいようで、
例えばIBMのワトソン研究所(Thomas J. Watson Research Center)の
トップページでは”lab”となっています。
ところが日本では“labo”の方が一般的に使われているようで…

で思いついたのは、日本では[Nintendo Labo]ですが、
もしかしたら欧米では[Nintendo Lab]かも、ということです。
しかし米国任天堂のサイトで確認すると[Nintendo Labo]の表記が。
どうやら全世界統一で[Nintendo Labo]が採用されているようです。
多分欧米向けローカライズの時にそういう話は出たと推察されますが、
日本側が貫いたんでしょうね。多分。

2018年1月17日水曜日

HDMIミニディスプレイ

私がHDMIに出会ってからもう10年ほど経つでしょうか。
今でこそHDMI端子が標準となっていますが、
当時はD端子等が幅を利かせている中で、
個人的にHDMI至上主義を掲げ、
PCでも何でも映像を扱うのにHDMI端子がない製品は
基本的に購入対象から外してきました。
それなりにHDMI機器が手元に集まると、
HDMI入力付きの小さいディスプレイって欲しいと思うようになりましたが、
ここ数年で登場してきたものの値段が高すぎて
購入に踏み切れませんでした。
明確な目的がなかったのが理由の1つです。

さて、ここ1~2年、Raspberry Pi用の小さなディスプレイが出回っており、
もしかしてこれが汎用的に使えるじゃないかと考え、試しに購入してみることに。
わりと廉価なので使えなかったとしても諦めがつきます。
選んだのはOSOYOO HDMI 3.5インチLCDディスプレイです。

早速このディスプレイに適当にHDMI信号を与えてみます。
まず接続したのはNintendo Switch
TVモードで接続すると問題なく表示できます。
ゲームによってはこの小ささでも遊べないことはありません。
細かい字が読めないことは仕方ないにしても、
やや縦長に表示されてしまうのでちょっと気持ち悪いかも。
まあこれは他機器を接続しているときでも言えることです。
なおこのディスプレイにはイヤフォンジャック(ラインアウト端子?)がついており、
適当なイヤフォンを接続すると音も出ます。
ただしディスプレイ側では音量調整できず、
耳元で爆音で鳴ることになるので注意が必要です。

次にChromecast。普通に表示できます。YouTubeも再生できます。
一眼カメラ(LUMIXのGF3)でも撮影した写真を表示できました。
AndroidスマートフォンではSlimPortで有線接続できるau isaiでは表示できました。
同じくSlimport対応のAndroidタブレット Nexus7(2013)でも表示はできるのですが、
表示できない時もあり、なんだか不安定です。

MacBook ProについてはmacOSでも
Windows10でも表示可能ですが、
2台持っている廉価なWindows10タブレットと、
廉価なWindows10のドングル型PCでは表示されるものの
色が変(黄緑とピンク)になってしまいます。
YUVデータで何か齟齬があるのかもしれません。
色がおかしいだけなので操作はできないことはありませんが、
実用には厳しいものがあります。
これら3台はIntelのAtomプロセッサベースなので、
チップ(チップセット)かデバイスドライバの問題なのかも。

BDレコーダーのDIGA BZT710でも録画した番組が表示できますし、
ポータブルBDプレイヤーAPBD-F1050HKでも適当なDVDが表示できます。
PS3でもメニュー画面はもちろん、
torneの録画番組やゲーム画面も表示できます。
(ゲームは唯一所有している旧機種向けのダウンロード版[POLICE NAUTS]で確認)
どうやらHDCPに対応しているようです。
こんなRaspberry Pi用の小さなディスプレイがHDCPに対応しているとは
全く期待していなかったのですが、試験結果からすると対応してますよね。

あっそうだ。Raspberry Piはどうかというと…
ちゃんと表示できました。

2018年1月16日火曜日

Nintendo Switchのプレー動画

昨今ゲームをプレーするのではなく、
他人がプレーする動画を視るのが流行ってると聞きますが、
私には正直意味不明です。
大昔に5面より先に進めなかったアーケード版GRADIUS IIIの
ノーミスプレービデオを友人から借りて視たことはありますが、
基本、ゲームはプレーしてなんぼでしょう。
まあその考え方がすでにオッサンなのかもしれませんが。

さて、大ヒット爆売れ中のNintendo Switchには、
発売当初から標準でゲーム画面の静止画を
撮影する機能がついていましたが、
しばらく前のバージョンアップにより
最大30秒の動画も撮影できるようになりました。
ただしゲームソフト側が対応している必要があります。
ゼルダの伝説 ブレス オブ ザ ワイルドSplatoon2
スーパーマリオ オデッセイあたりの任天堂製ゲームは
対応しています。

撮影は任意のゲーム中にJoy-Con(L)についている
撮影ボタンを押すだけです。
スーパーマリオ オデッセイで試してみたところ、
単に押すとjpeg形式の静止画として保存されますが、
長押しすると動画になります。
動画の保存処理には多少の時間が必要ですが、
その間ゲームのプレーに支障が出るようなことはありません。
また基本的には押した時から遡って30秒前からの動画が
記録されるようになっていますが、
連写制限があり、静止画含め撮影しまくっていると
それより短くなったりします。

撮影した静止画・動画はmicroSDXCカードを挿していると、
そのSDカードの"Nintendo/Album/<年>/<月>/<日>/"
ディレクトリに保存されます。年月日は撮影日で、
2018年1月1日に撮影したなら"Nintendo/Album/2018/01/01/"となります。
ファイル名は"yyyyMMddHHmmssff"形式の撮影日時で始まり、
‘-’に続くのは32バイトのハッシュ値っぽいゲーム識別コードです。
拡張子は静止画は”jpg”です。
動画については”mp4”ファイルで映像のエンコード形式はH.264、
音声はAACです。映像のフレームレートは30fpsです。
静止画・動画ともに解像度は1280×720で、
これは携帯・テーブルモードでの本体のディスプレイと同じです。
TVモードにすると表示は1920x1080になるものの、
静止画・動画は1280×720のままです。

ちなみに動画ファイルのサイズは30秒で20MB程度なので、
ビットレートは数Mbpsですね。
となると映像のBPP(Bits Per Pixel)は0.17ほどでしょうか。
品質はわりと高めかも。

2018年1月15日月曜日

また受けてたITサービスマネージャ試験

昨秋受けたきりすっかり忘れていたITサービスマネージャ試験。
IPAの高度試験では秋季でとり損ねている唯一の試験だけに、
早く合格してコンプリートしたいところですが、
他に優先度の高い試験が同時期にあるため
毎年ほとんどぶっつけ本番。
ということで今回も合格証書が届くことはありませんでした。
不合格の通知は来ないので、次の試験申し込みが
近くなったころに思い出して確認するのが定番です。

まあ年が明けても何も来てないので不合格なのは確定として、
どれぐらい得点できたかは一応知っておきたい。
ということで成績照会してみると…
予想通り午後IIがB判定で落とされていますね。
って、テーマが何で、どんな事書いたか全く覚えていませんが、
どうせその場ででっち上げたものなので、程度は知れてます。
ちなみに午前IIは80点、午後Iは68点とまあまあです。

ところで先ほどIPAの秋季開催の高度試験で未合格なのは
ITサービスマネージャ試験と書きましたが、
逆に言えばこれだけなので何年か連続で受けてれば
いつか奇跡が起きるでしょう。多分。
ということで結構気楽です。
受験代金が痛いのに目を瞑ればですけど。

なお春季試験の申し込みは2018年2月19日までとなっております。
詳しくはIPAのサイトをご覧ください。

2018年1月11日木曜日

Ubuntu 14.04でBDが焼けない

久しぶりにUbuntu 14.04でデータをBD-Rに焼く用があり、
以前と同様に[Brasero]アプリケーションで焼こうとしたところ、
何やら警告が。
2GB越えのファイルがあると保存形式がISO9660のlevel3じゃないとだめとのこと。
実際単一ファイルで10GBオーバーなものが含まれています。
まあlevel3でも構わないということでそのままスルーです。
後に試してみるとmacOSでは読めませんでしたが、
WindowsとUbuntuなら読めましたし。
ところがいざ書き込もうとするとメディアが排出されてエラー。
何度やってもダメです。
もしかして一旦ディスクイメージを作ったら焼けるかも、と考え、
$ genisoimage -J -r -R -allow-limited-size -o <書き出すイメージファイル> -V "<ラベル>" -v <書き込むファイルを置いたディレクトリ>
を実行し、さらに
# mkdir bd
# mount -o loop <書き出したイメージファイル> bd
でイメージファイルが正しいことを確認してから
それを[Brasero]で焼こうとしても状況は変わらず。
詰んだかと思いつつ調べていると[K3B]なるライティングソフトがあるらしく、
# apt-get update
# apt-get install k3b
でインストールしてからターミナルで”k3b”を実行するとGUIが現れました。
焼きたいファイルを下のペインにドラッグ&ドロップして
焼いてみるとなんか書き込んでるっぽい。
ところが最後の最後にエラーが発生してしまいましたorz
しかし確認してみると焼いたデータに破損は見られません。
決してすっきりはしませんが結果オーライということで。
今後BDを焼くときは[K3B]を使う事にします。

2018年1月10日水曜日

リモコンの大掃除

使い始めて数年が経つBDレコーダーDIGA BZT710
長く使っているのでリモコンのボタン上の印刷が消えてきたりしますが、
より都合が悪いのは接点が劣化してボタンを押しても反応しなくなることです。
私の場合一番最初にダメになったのは録画した番組を削除するのに使う
[黄]ボタンだったりするのですが、その後も順調に調子が悪くなり、
この冬の寒さも手伝ってか、電源ボタンが反応しないことが多々ある
末期的症状に到達してしまいました。
手垢がついて汚いですし、別売りの専用リモコンに買い替え、
という手もあるにはありますが、
単純に掃除すれば直るだろうということで、
この正月休みに分解掃除を試みました。
リモコンの電池蓋を外すとわかりやすくネジが4つあります。
また送光部の脇にも2つネジがあります。これら6つの+ネジを外し、
送光部あたりの隙間を広げ、マイナスドライバーで
強引に爪を外しつつ3枚に下ろします。
そして綿棒
エタノールをふりかけて
電子基板の全体を拭いてカーボン接点部を綺麗にします。
ボタンの裏のカーボン接点に接触する部分も同様に掃除します。
ついでにその他のゴミ等拭き取り、組み立てて完了です。
掃除前までの反応の悪さが嘘のようにサクサク操作できます。
面倒ですけど時々はやるべき作業ですね。

2018年1月9日火曜日

ttyACM0につながらない

とある機器をUSBでUbuntu 14.04なPCに接続したところ、
“/dev/ttyACM0”として認識されたのですが
うまくアクセスできません。なぜ?
実はttyACMって携帯電話系ネットワークへ接続する
モデムデバイスなんだそうで、
つまり、その機器はモデムとして認識されているということです。
そしてModemManagerがそいつを先にガメてしまっているのです。
ということで
$ ps axf | grep Modem
を実行してみると"/usr/sbin/ModemManager"が起動していました。
これを一時的に止めるには
# stop modemmanager
を実行すればよいのですが、
OS起動時に立ち上がらないようにするには
# echo manual > /etc/init/modemmanager.override
の実行で可能です。
もしModemManager自体いらないのであれば
# apt-get remove modemmanager
または
# apt-get purge modemmanager
でアンインストールしてもいいでしょう。

2018年1月8日月曜日

Windows10のbashは遅い

Windows7への表示のさせ方先日セットアップしたWindows10とUbuntu14.04のデュアルブートPC。
もしかしてUbuntuを立ち上げなくても
Windows on Linuxで代替できるかも、
と思い立ちちょっと試してみたものの、どうも遅い気が。
そこでちょっと調べてみました。結果は下表となります。
もちろん同じ物理マシンでデュアルブートで環境を切り替えています。
またキャッシュは効かないように工夫しているつもりです。
 Windows on LinuxネイティブUbuntu
約1GBの.tar.gzファイルの展開約5分26秒
約1GBのファイルコピー15秒16秒
約1GBのファイルのmd5ハッシュ値計算7秒9秒
約150MBの.tar.gzファイルの展開6分30秒12秒

うーん、この結果だけでは何が悪いのか不明ですが、
Windows on Linuxには大きなボトルネックが存在してそうです。
時間を測定したわけではありませんが、
Cのソースコードからのビルド時間も
Windows on Linuxのほうが圧倒的に遅い気がしますし、
どうやら万能というには無理がありそうです。
まあしかしcygwinを入れなくていいのは助かります。
もっと高速に、そしてWindowsネイティブと
シームレスになると便利になるでしょうね。

2018年1月4日木曜日

Windows10で拡張子を表示

インストールしたばかりのWindowsの何が嫌って
ファイルの拡張子が表示されないことです。
過去Windows7への表示のさせ方を書いたことがありますが、
今回はWindows10についてです。

この辺方法が変わっていてWindows10では
[エクスプローラー]の[表示]メニューにある
[ファイル名拡張子]チェックボックスで制御可能です。
ずいぶんお手軽になりました。

また別の方法もあって、
[エクスプローラー]の[ファイル]メニューから
[フォルダーと検索のオプションの変更]メニューを選び、
[フォルダーオプション]ウィンドウの[表示]タブで、
[詳細設定]の[登録されている拡張子は表示しない]をチェックを外す
ことでも実現可能です。以前のWindowsっぽいです。
またここからならWindows7等と同様にもっといろいろ設定可能で、
例えば[フォルダーオプション]ウィンドウの[全般]タブで
[エクスプローラーで開く]を[クイックアクセス]から[PC]に変更すると
古き良き時代のスタイルに戻せます。
個人的にこっちの方がしっくりきていいです。

2018年1月3日水曜日

デュアルブート環境でデータ共有

先日作成したWindows10とUbuntu14.04のデュアルブートPC。
相互にデータをやっぱり相互にデータをやりとりできないと不便です。
もっとも汎用性が高いのは別にFAT系のパーティションを作って
を経由する方法でしょうか。
あるいはFAT系でフォーマットしたUSBメモリを常時挿して、
そこを共有ドライブにする方法です。
これなら気軽に取り外して他のPCに持っていくのも容易です。
最近のUSBメモリは非常に小型だったりしますし。
今時はオンラインストレージを使う方法もありでしょう。
ただこれらの方法は共有したいデータを意識して
共有ドライブにコピーする必要があり面倒です。

まあわざわざそんなことしなくても、
WindowsのNTFSはUbuntuから読み書きできます。
リードしかできなかったのはもはや過去のことです。
ところがUbuntuのext4はWindowsで読めもしない…
と思っていたらext2fsdなんていう便利なフリーソフトがあったんですね。
これをWindowsにインストールして設定すれば、
ストレージ上のext4パーティションに
好みのドライブレター(Dドライブとか)をつけて普通にアクセスできます。
ext4側のパーミッションがどう扱われるのか詳細は把握していませんが、
普通に一般ユーザーで作業しているようなファイルなら
あまり気にせず読み書きしても問題なさそうです。
パーミッションの話ならUbuntuからのNTFSへのアクセスだって
大して変わりませんからね。
その辺り心配なら書き込みはしないようにすればいいだけですし。
なにしろ相互に読み取り可能なんですから。

2018年1月2日火曜日

Intel NICとSecure Bootの呪い

新しめのPC(サーバー含む)に
古めのLinux系OSをインストールしようとしてよく問題になるのが
Intel社製ネットワークインターフェイス。
多くの場合OS標準ドライバでは動いてくれません。
先日触ったLenovo ThinkPad L570もそうでした。
しかしどうすればいいのかは既に分かっています。

Windows10とUbuntu14.04のデュアルブートにしていたため、
Windows側で[Windows]ボタンを右クリックし、
[デバイスマネージャー]から[ネットワークアダプター]を調べると
Intel(R) Dual Band Wireless-AC 8265
Intel(R) Ethernet Connection (4) I219-V
となっています。
Ubuntu側では"lspci"を実行してその結果を抜粋すると
Ethernet controller: Intel Corporation Device 14d8 (rev 21)
Network controller: Intel Corporation Device 24fd (rev 78)
と表現が異なっていますがまあ気にしないことに。
で、これらをサポートしてそうなデバイスドライバを探すと、
有線の"e1000e-3.3.6.tar.gz"と
無線の"iwlwifi-8265-ucode-22.361476.0.tgz"が見つかりました。
早速インストールです。

まずは有線から。以下を実行します。
# tar zxf e1000e-3.3.6.tar.gz 
# cd e1000e-3.3.6/src/
# make install
リブートすればつながるかと思いきや残念ながらだめ。
その後も散々試して諦めかけたとき、modprobeの以下の結果に着目。
# modprobe e1000e
modprobe: ERROR: could not insert ‘e1000e’: Required key not available
これを手がかりにネット検索していると、
Secure Boot を無効にしないとダメとか言う情報をキャッチ。

そこでPCの起動時に[Enter]押して[F1]でセットアップに入り、
[Security]タブの[Secure Boot]メニューから
[Secura Boot]を[Disabled]に変更して[F10]で保存して終了すると…
有線LANが動き出しました。
呪いがかかっていたんですね。はたはた迷惑な機能です。

ところで無線LANの方は諦めました。
どうもUbuntu14.04ではダメで16.04にアップグレードする必要がありそうです。
事情があって14.04に留まりたいためそれは却下です。
まあちょっと古めのLinux対応USB-WiFiアダプタ
挿せば使えるので気にしてはいません。

2018年1月1日月曜日

EFIマシンにUbuntu 14.04を追加

私がこれまで使用してきたPCはMacBook Proを除くと
古き良き(?)BIOS搭載マシンです。
しかしどうやら最近はWIndows PCでもBIOSの代わりに
EFIを搭載したマシンが出回っているようで、
先日Windows10プリインストールのEFIマシンLenovo ThinkPad L570
Ubuntu 14.04をデュアルブートできるようインストールした時は
結構おっかなびっくりでした。
ということでインストール記を書き残すことに。

まずはデュアルブートするにあたりWindows10の設定を変更します。
Windows10の[設定]の[システム]メニューから[電源とスリープ]タブを選び、
[電源の追加設定]リンクをクリックして[電源オプション]ウィンドウを開きます。
[電源ボタンの動作を選択する]の
[現在利用可能ではない設定を変更します]をクリックし、
[シャットダウン設定]欄にある[高速スタートアップを有効にする(推奨)]を
無効にしてから[変更の保存]をクリックします。

次いでUbuntuのためにストレージを空けます。
Windows10のデスクトップ左下の[Windows]アイコンで右クリックし、
[ディスクの管理]を開きます。
[Windows(C:)]のボリュームで右クリックして[ボリュームの縮小]を選び、
[縮小する領域のサイズ]を調整します。
これがUbuntu用のパーティションになります。
通常はWindows用のパーティションの半分程度までしか増やせん。
復元ポイントを削除したりするともっと大きくとれるらしいので、
必要に応じてやってみるとよいでしょう。

あとはUbuntu14.04のインストールDVDから起動して
インストールをしていくだけですが、ここでちょっと問題が。
ThinkPad L570ではIntel社製の新しめのネットワークチップを搭載していて、
Ubuntu14.04の標準ではドライバーが対応できないということです。
よくあることです。
回避するのも簡単で、古めのUSB-Ethernetアダプタを使うことで、
これを挿してからOSを起動すれば大体通信可能です。
これならインストール作業の最中の
[インストール中にアップデートをダウンロードする]を有効にできます。

さて実際のインストールですが、起動DVDのブートメニューでは
安全のため[Try Ubuntu without installing]を選択し、
正常に起動してからデスクトップ上の
[Install Ubuntu 14.04 LTS]アイコンを実行して作業を開始します。
途中[インストールの種類]では、
[ディスクを削除してUbuntuをインストール]ではなく[それ以外]を選択し、
パーティション編成では[空き容量]部分(サイズが十分大きなもの)から
2つのパーティションを新規に作ります。
1つ目は数GB程度のスワップパーティションです。
昔は搭載メインメモリ(DRAM)と同容量か言われてましたが、
今はどう言われてるんでしょうか?
私は今でも同容量にしてます。
2つ目は残りすべてをext4でフォーマットしてルート(‘/’)にマウントします。
その他は…特に特筆すべきことはないですね。

インストールの完了してPCがリブートすると、
まずブートローダー(grub2.02)が立ち上がります。
ここで[Ubuntu]を選ぶと先にインストールしたUbuntu14.04が起動します。
[Windows Boot Manager (on /dev/sda1)]を選ぶと
Windowsが立ち上がるはずです。
もし立ち上がらなかったら…エラいことです。
昔ならWindowsのインストールDVDから起動して何とかしてましたが、
今はどうするんでしょうか?
起動時にBIOS、じゃなくてEFIのメニューに入って、
Windows修復用のソフトの入ったパーティションから起動するんでしょうか。
こういうときMacの方が修復が楽なんですよね。