M1 Mac mini買ったった

こんにちは。Mac mini買いました。色々あったので報告します。速いぜ軽いぜ最高だぜというお話ではないので、もし参考になる人がいれば。 こういうリサーチは購入前にするのが賢いよね。

色おかしい、画面ぼけぼけ(YUVリミテッドレンジ)問題

HDMIの規格に色域空間というパラメータがあって、RGBとかEDIDとはExtended Display Identification Dataの略。パソコンにモニタを繋ぐとき、こういう解像度とか周波数まで対応できますよ、っていうことをモニタがパソコンに情報として与えてくれるもの。この中に色空間を指定するところがあって、最近のモニターではどうも RGB と、 YUVないしYCbCrないしYPbPrという指定ができるようです。こいつらはほとんど同じものを指しているらしく、ここでは YPbPrに統一します。Yは明るさ信号で、bとrはそれぞれ青方向、赤方向の色相環の値を指定するみたいで、RGB形式に対するメリットとしては情報量の削減だそうだ。

Macは元々 HDMI出力したときに、YPbPrの色空間を指定してしまい、外部モニタに繋いだ時によくわかないがボケぼけの画像になってしまう、ということがあって意識高い系の人にはケーブルやモニタの相性の一言で片付けられていた歴史があります。YPbPrは元々デジタルテレビの色空間のようです。

色空間が合っていない例。サブピクセルレンダリングがおかしくなっている。画面をスマホで撮影。HP LP2475w Debian Linux 10
色空間をRGBとして設定がうまくいっている例。HP LP2475w

こちらのサイトなんかに詳しくありますが、Intel Macの時代は基本的にはモニタのEDID (Extended Display Information Data) をいじってRGBしか受け付けないとMacに誤認識させて、強制的にRGB出力とする、あるいはHDMI接続を諦めてDisplayPortからの出力にする、という方法がありました。

https://discussionsjapan.apple.com/thread/252288295

https://www.eizo.co.jp/support/compati/pc/mac/apple-m1/

https://forums.macrumors.com/threads/m1-mac-external-display-fuzzy-fonts-colors-ypbpr-vs-rgb.2276345/

ここによると、 M1 MacではIntel Macより劣化が進み、HDMI出力だけでなく、その他の出力でも YUV limitedになっちゃうそうです。基本的にはモニタ側で制限かけるしかない。色々やるのが面倒な人は、 HDMI-DVI-D変換コネクタを使うことです。DVIにはYUV色域がないので、上手くいくはず(うちではうまくいっている)。

今 Thunderboltポートからドックを通じて Display Portに接続、っていうヤヤコシイことをやっているので、ちゃんと映るかどうか、もうちょっと考察していきます。

M1 Macになってからは上のページで散々議論されていますがEDIDの変更で対応する方法は上手くいかないようです。うちの新しく買った4Kモニタ+ Macbook Pro 2016では当初はYPbPrで写りましたがEDIDを変更することでRGBになり、画像もきれいになりました。このとき作成したEDIDをM1 Macの方にもってきたのですが、読み込んでもらえないようです。EDIDを読み込んでくれた事案もあるらしいのでこのあたりに回避策があるようにも思えます。

4Kやらretinaやら言っていますが、高解像度のモニタでは色空間の問題ははっきりわからず、色あいが多少変わるだけです。通常のHD画質のモニタだとアンチエリアシングの文字がやたらぼやけて猛烈に目が疲れます。ここいらにAppleの巧妙な買い替え作戦が潜んでいるように思えてなりません。

映像では大手のナナオが問題を発表してくれたから、Appleも対応してほしいと思いますが、なかなか解決しないだろうな。

ちなみにモニタにYUVないしYPbPrモードを制限する設定があれば、それに設定しましょうとナナオのサイトにはあるのですが、うちのDell U2720Qというモニタではそうしたら色が変になるだけでちゃんと写りませんでした。

いろいろ試してみたところ、Intel Macから持ってきたEDIDを読む条件があるようでした。Macbook Pro 2016でこのモニタにつないだときはHDMI経由で、M1 Macも条件をそろえてHDMI接続するとEDIDを読むことがあるようです。ただし解像度こそはMacbook Proを反映して2560xなんとかの設定あ出現しましたが、色空間はYPbPrでした。EDIDを読ませる作戦もうまくなさそうです。

EDIDのパッチやら改造やらは以下のサイトに詳しい。WindowsでEDID吸い出してMacにつないでみたらどうなるか、やってみたいと思います。

https://github.com/Akemi/macOS-edid-modification

現在はThunderbolt3 Dock (HP Thunderbolt3 Dock G2とかいうやつ)経由でUSB typeCでモニタに接続しています。このドックがまた相性があって、裏向かって左のポートじゃないと起動時に認識しない。それはさておき。

  1. U2720Qの SmartHDR をDesktopに設定
  2. Macのディスプレイ設定でHDRを有効に
  3. モニタの色空間をYPbPrからRGBに(色が変になるが気にしない)
  4. 再起動
  5. Macのディスプレイ設定でHDR設定を無効に(モニタ側のSmartHDRはDesktop設定のまま)

的なことをやったらRGBで固定されてしまいました。いろいろやっているので何がよかったのかよくわからないですが、名前から察するにSmartHDRはHDRを要求されていないときにはRGBモードに切り替えてくれそうな気がする。

プラセボかもしれませんが色空間がYPbPrよりRGBのが明らかに目が疲れません。

そもそもApple silicon対応してない問題

OfficeもSafariもChromeもFirefoxも対応してるからいいもんね、Rosetta2があるからなんとかなるっしょ。待ってればいいよ、という人には問題はありません。そう考えていた時期が自分にもありました。

問題となるのはいつもドライバです。Logitechのマウス(トラックボール) CT-100/TM-400を私は愛用していますが、 LogitechのArmのドライバはまだ出ていません。具体的には左右クリックとホイール、センターボタンクリックは動きますが、他のボタンはちゃんと動きません。古い製品なので、サポート切れが心配です。Kensingtonもあまり期待できそうにありません。まあ普通のホイール付き3ボタンマウス使うか、MacだったらMagic Trackpad2使えばいいんだろうけど。Magic Trackpadだけどアルカリ電池を入れて取れなくなった例を複数みているので、本当に気を付けた方がいいと思います。

あと探したけどプリンタドライバもなかった。

HomebrewはM1対応したけれども、自分が使う範囲では Rstudioがネイティブ対応していない。Pythonはいけるようだけれども、他にもネイティブ対応できないものはまだまだありそう。Anacondaもまだだよ、というか、Anacondaのライセンス有償問題があっってConda-forgeに以降していくのかな?

スワップでSSDすり減りまくり問題

購入したのは予算の関係でメモリ16GB、ストレージ256GBのちょっとだけカスタマイズしたやつです。これで救われたのですが、どうもSSDへのスワップがかなり頻回に起こっており寿命が早めに来ちゃうんじゃないかと。今のところ自分の使い方では(ってまだwebブラウズしかしてないが)スワップが発生したことはないようで、16GBならまあ安心なのかな。今9.33GBのメモリを使用している(iterm1つ、firefoxのタブが10こくらい)なんですが、8GBメモリの人はこの程度でスワップ発生してしまうんですね。誰ですか8GBで十分、16GBもいらないなんて提灯記事つくってるのは。8GBモデル全部リコールして16GBに無料アップグレードになるか、そのまましれっと早くぶっこわれるモデルになるような気がします。おそらく計画的陳腐化のうちの一つなんでしょう。だって記事になってないもんね。

Twitterの記事。

ほんとうはノートを買おうと思って都合でMac miniになってしまいましたが、少なくとも上記の問題が解決しない限りおっかなくて使えたもんじゃないと思います。真面目に仕事で使う用の機械はやっぱり初期ロットは外した方がいいな、と実感しました。

と、Surface Go2で書いています。