RamterStudioRamterStudio
Contact
アプリの舞台裏

Behind Mac Virtual Display

今回のアスペクト比は、本当にとんでもない。

Galaxy Z Fold8にぴったり合うMacのリモート作業空間が欲しかった。その小さな試みが、macOSネイティブのメニューバーアプリになった。

Galaxy Z Fold8専用の2448×1848ディスプレイと、1224×924相当のHiDPI作業空間。
Galaxy Z Fold8専用の2448×1848ディスプレイと、1224×924相当のHiDPI作業空間。
01 · 原点

Fold8から始まった

開いた画面はスマートフォンというより小さなタブレットだった。MacBook Proへ時々リモート接続するのに理想的な形に見えた。

最初のテストから期待以上だった。自宅では即時に感じられ、SKT 5Gでも実作業に使えるほど安定していた。

しかし、ホストとクライアントを接続するだけでは足りない。Mac側にもFoldと同じ比率・解像度・リフレッシュレートの画面が必要だった。

FoldはMacの作業空間を表示する準備ができていた。macOSはまだだった。
02 · 問題

ストリーミングだけでは正しい画面は生まれない

一般的なリモートアプリはMac画面を表示できても、接続端末に合う作業空間をmacOSへ自動作成しない。

比率

黒い余白

物理モニターや別のタブレット用画面をFitにするとFoldに余白が残る。

切り抜き

FillとStretch

Fillはデスクトップを切り、StretchはUIを歪める。

ホスト

存在しない画面

Sunshineは存在する画面を取得するが、Artemis接続だけでFold型画面は作られない。

03 · ディスプレイ

必要だったのはネイティブHiDPI画面

Fold8プロファイルは2448×1848・120Hzで出力し、macOSでは1224×924相当の使いやすい作業空間になる。

HiDPIは実出力を下げるのではなく、1論理ポイントを4物理ピクセルで描いて文字を鮮明にする。

比率が一致すればArtemisをFitのまま使い、余白・切り抜き・歪みを避けられる。

プロファイルネイティブ出力HiDPI更新頻度
Galaxy Z Fold82448 × 18481224 × 924120 Hz
iPad Pro 11-inch2420 × 16681210 × 834120 Hz
04 · アプリ

ショートカットからメニューバーアプリへ

最初はショートカットと複数の表示ツールを組み合わせた。壊れやすい手順を繰り返すうちに専用アプリが必要になった。

作成

端末別プロファイル

FoldとiPadに合う解像度・HiDPI・120Hz画面を作る。

接続

Sunshine連携

作成直後の画面IDを確認しSunshine出力へ設定する。

保護

安全な復元

物理画面の配置を保存し終了時に戻す。

制御

メイン画面

メニューとアプリをリモート画面上で開く。

状態

Tailscale

VPNを操作せず接続状態だけを表示する。

外出

クラムシェル

確認済みの順序で物理モニターを消しても画面を維持する。

05 · 接続

4つの要素で1つの作業空間

Mac Virtual Displayは画面を担当し、Sunshine、Artemis、Tailscaleはそれぞれの役割に集中する。

01Mac Virtual Display

端末に合うmacOS画面を作成・復元する。

02Sunshine

管理画面を取得してエンコードする。

03Artemis

Foldで映像と入力を扱う。

04Tailscale

外出先からMacへの非公開経路を作る。

同一LANではTailscaleは必須ではないが、有線Macが自動検出されない場合にも一定のアドレスを使える。
06 · 設定

Fold8の完全なセットアップ

MacにMac Virtual Display、Sunshine、Tailscaleを、FoldにArtemisのnonRoot game APKとTailscaleを入れる。

  1. Galaxy Z Fold8を選び、Sunshine integrationを有効にしてTurn On。
  2. 両端末を同じTailscaleへ接続し、Macの100.x.x.xをArtemisへ追加。
  3. 4桁PINをSunshineのhttps://localhost:47990へ入力。
  4. Desktopを選び、下の120Hz設定を適用。

確認済みArtemis設定

Artemis設定
Video resolutionCustom 2448 × 1848
Frame rate120 FPS
Video bitrate65 Mbps
Video codecPrefer HEVC
Video frame pacingBalanced
Video Scale ModeFit
HDROff
Use Virtual DisplayOff
ホスト画面はすでに作成済みなのでUse Virtual Displayはオフ。不安定なら先にビットレートを下げる。
07 · 実使用

タッチ、5G、クラムシェル

机上のデモだけでなく、外出先で使えることが重要だった。

1本指でポインター、2本指でスクロール、2本指タップで右クリック、3本指タップでソフトキーボードを切り替える。

日本語入力ではFoldのキーボードを英語に保ち、Mac側で入力ソースを切り替える。

Macはギガビット回線へ有線接続し、自宅はWi‑Fi 7。SKT 5Gでも2448×1848・120Hz・HEVC・65Mbpsが安定した。

クラムシェルでは電源とEthernetを接続し、物理画面が見えるうちにFoldプロファイルとArtemisを確認してからモニターを消す。
Galaxy Z Fold8専用の2448×1848ディスプレイと、1224×924相当のHiDPI作業空間。
Galaxy Z Fold8専用の2448×1848ディスプレイと、1224×924相当のHiDPI作業空間。
08 · 制限

解決したふりをしないこと

表示側の手間は減らせるが、すべてのネットワークやmacOS制限を消すものではない。

回線

モバイル環境

遅延は場所、基地局、Tailscaleの直接接続で変わる。

ヘッドレス

外出前の確認

長時間動作や再起動後の挙動はMacごとに異なる。

入力

macOSの文字経路

合成済み文字が届かない場合があり言語変更はMacで行う。

手に持つ端末に合うMac画面。

Mac Virtual DisplayはmacOS 14以降のApple silicon Mac向けに無料・署名・公証済みで配布しています。