✦ニューラルアップスケーリング · 検討中

ラボの中のアイデア — いつか、もっと鮮明なピクセルを。

低いビットレートのストリームから、より鮮明な文字とエッジを再構築できるデバイス上のモデルが成り立つか、検討しています。動作はすべてお使いのデバイスのNPU上で、クラウドには決して出しません。まだ提供しておらず、いつになるかもお約束していません。ここでは、そのアイデアと、こうした仕組みがなくても今日のRemioのセッションを鮮明に保っているものをご紹介します。

✦アイデア

ストリーミングの文字がぼやける理由と、アップスケーリングが役立つと考える理由。

従来のビデオエンコーダーは、動きに合わせて調整されていて、文字やUIの枠を形づくる、細くコントラストの高いエッジには向いていません。帯域が逼迫すると、まずそのエッジが失われます。これはRemioに限らず、どのリモートデスクトップにも共通する、動画圧縮のしくみそのものです。

リモートデスクトップのストリームは、目に届くまでに2回の圧縮を受けます。まず、元の解像度がクライアントの表示できる範囲を超えているとき、ホストが縮小します。たとえば、3024×1964でホストしているM4搭載の14インチMacBook Proを、2266×1488のiPad miniにストリーミングすると、エンコーダーがフレームを見る前に、すでにピクセルのおよそ3分の1を手放しています。次に、エンコーダー自身が、ネットワークで運べるビットレートに収めるため、非可逆圧縮をかけます。どちらの工程も、高周波の細部を捨てます。くっきりした文字の字形と、にじんだ塊を分けるのは、まさにその細部です。

私たちが検討しているのは、デコードの後にクライアントで動く品質回復の処理です。展開されたフレームを見て、縮小され、エンコーダーで圧縮される前の元のフレームが持っていた高周波の内容を予測します。すでにあるピクセルから補間することしかできない、従来のバイリニアやバイキュービックのアップスケーリングと違い、学習済みのニューラルネットワークは、エッジ、字形、UIの形が、フル解像度でどう見えるかを学べます。単純な補間では取り戻せない細部を、再構築できるのです。

期待どおりに働くなら、その効果は、まさに最も必要な場面で目立つはずです。11ポイントの本文、等幅フォントのコード、Figmaファイルの細い線、サイドバーのボタンの輪郭。数ピクセルのにじみが、「読める」と「顔を近づけないと読めない」を分ける場面です。これは、動きに合わせて調整されたエンコーダー単独では埋められない、実際のギャップです。だからこそ、デバイス上のモデルがそれを埋められるかどうかを確かめる研究に、時間をかける価値があります。

まだ、そこには至っていません。「回線の悪い環境で、セッションを鮮明に保つには」という問いへの、今日の正直な答えは、Remioの適応型ビットレートエンジンです。ネットワークを読み取り、ラグを急増させずに、回線が許す限り映像を鮮明に保つ範囲を選びます。ニューラルアップスケーリングは、その上に重ねる追加のレイヤーで、置き換えではありません。

✦ネイティブだから、先行できる理由

本物のネイティブクライアント。ラップしたWebビューではありません。

Remioのクライアントは、どれも各プラットフォームで100%ネイティブなアプリです。Electronも、間に挟まるブラウザのサンドボックスもありません。だから、ニューラルアップスケーリングのモデルが必要とするハードウェアのフレームワークに、すでに直接つながっています。Apple SiliconではCore MLとNeural Engine、専用NPUを持つAndroidデバイスではNNAPIです。これを作るなら、キャプチャ、エンコード、デコードのためにすでにある設計に組み込めます。クラウドを経由せず、別のランタイムを後付けする必要もありません。

デバイス上で動かすことだけが、私たちの検討するこのアイデアの形である理由は、これに尽きます。クラウドとの往復は、Remioのバッファリングなしという考え方が受け入れない遅延を加えます。出荷するモデルは、ローカルで動くものでなければなりません。そうでなければ、出荷しません。

MacのデスクトップをストリーミングするRemioのネイティブiPhoneクライアント

Apple Siliconでは、つまり、すべてのMシリーズのMac、iPad Pro、iPad Air、最近のiPhone Proでは、Core MLが、コンパイル済みのモデルをNeural Engineに振り分けられます。Neural Engineは、同じダイ上でCPUとGPUの隣にある専用のコプロセッサーで、ニューラルネットワークが時間の大半を費やす、小さく反復的な行列の乗算のために作られています。消費電力は、GPUで同じ処理をする場合のほんの一部です。このアイデアが必要とする種類のモデルにとって、能力が高く、効率のよい動作先です。ただ、まだ接続していないだけです。

Androidでは、NNAPIが、対応デバイス(Google Tensorを搭載したPixel、最近のGalaxyやOnePlusのスマートフォン)で、同じようにハードウェアのNPUへの振り分けを行います。どちらのプラットフォームでも、十分に速いNPUを持たない古いデバイスは、1対1のデコードに戻るだけです。今日のRemioがあらゆる場所でそうしているのと同じように、存在しないハードウェアを待ってストリームを止めることはありません。

これは、いずれも出荷時期のお約束ではありません。この研究に取り組む価値があると考える理由です。むずかしい設計上の前提条件がすでに整っているのは、この種の機能の出発点としては、実に珍しいことです。

✦出荷するための基準

出荷の前に、証明しなければならないこと。

「AI」が売れるからといって、AIの機能を後付けするつもりはありません。まず、十分な答えを出せなければならない、正直な問いを挙げます。

すでにあるものを、はっきり上回るか? Remioの適応型ビットレートエンジンは、すでにお使いの回線を読み取り、ネットワークが許す限り映像を鮮明に保つ範囲を選びます。ニューラルモデルが存在する意味を持つのは、そのベースラインを超える細部を、人が実際に気づくほどの差で取り戻せる場合だけです。通常の視聴距離では消えてしまうような、ベンチマーク上の勝利ではありません。

スマートフォンやタブレットで、無視できないバッテリーを消費しないか? セッションのあいだ、デコードされたすべてのフレームでモデルを動かすと、電力の負担は実際にあります。誰も気にしなくてよいほど小さく抑えたいところです。あるいは、取り戻す価値のあるものがあるときだけバッテリーを使う、明確で正直な「自動」の挙動と、負担を払いたくない人のための本当のオフスイッチが必要です。

自分が何をしているかについて、正直であり続けられるか? 圧縮されたピクセルから、それらしく見える細部を再構築するモデルは、もともとなかったコンテンツを作り出すモデルとは別のことをしています。見えているものがホストにあるものと一致しなければならないリモートデスクトップでは、この区別は、あればよいものではありません。信頼のモデルそのものです。出荷するものは、再構築はしても、決して幻覚を起こしてはなりません。

3つすべてに、予測ではなく実際の数値で答えられるまで、これはこのページに書かれた研究上のアイデアにとどまり、アプリのトグルにはなりません。

✦今日、すでに実現していること

すでに映像を鮮明に保っているもの。AIは不要です。

今日、鮮明なRemioのセッションを得るのに、研究プロジェクトは要りません。すでに提供中の4つの確かな技術が、その役割を果たしています。

コーデック
ハードウェアH.265、エンドツーエンドエンコードもデコードも専用のシリコンで動作し、H.264をフォールバックとして用意
ビットレート
ネットワークに適応ラウンドトリップ時間を読み取り、ラグを急増させずに鮮明さを保てる範囲を選択
ディスプレイ
ウインドウに合わせたサイズホストのモニターを縮めたコピーではなく、クライアントのキャンバスに合わせた仮想ディスプレイ
レンダリング
バッファリングなし描画されるすべてのフレームは、その時点で最新のもの。失われたパケットは、間に合う場合は再送し、そうでなければ新しいフレームのためにスキップします。古いフレームを再生し直すことはありません

ハードウェアH.265のエンドツーエンドとは、ホストのエンコーダーもクライアントのデコーダーも、CPUではなく専用のビデオ用シリコンで動くということです。ソフトウェアでデコードしようとすると詰まってしまうスマートフォンでも、4K動画がなめらかに再生されるのと同じ理由です。この余力があるから、Remioは、ソフトウェアのコーデックでは維持できないビットレートでも、細部を保てます。

適応型ビットレートエンジンは、ニューラルアップスケーリングが助けになるかを検討している仕事を、実際に担っている部分です。セッションの開始時にお使いの回線を測り、ラグを急増させずに維持できる最も高いビットレートの範囲を選びます。ストリームをこっそり痩せさせることはしません。適応型品質のしくみを読む →

仮想ディスプレイと、バッファリングなしのレンダラーが、これを仕上げます。Remioがストリーミングするディスプレイは、ホストのモニター全体ではなく、お使いのウインドウにぴったり合わせたサイズなので、より大きなものを縮小したコピーを見ることはありません。そしてレンダラーは、常に最新のデコード済みフレームを描画し、古いものは追いかけずに捨てるので、画面に届くときに古くなっているものはありません。この4つがそろえば、ほとんどのセッションで、品質回復の処理は、そもそも必要ありません。

✦提供しないもの

もし提供するなら、守る原則。

生成AIのマーケティングによって、「AIによる強化」は細部を作り出すことだ、という期待が広がりました。このようなモデルをRemioに入れる前に、短く、正直なリストをクリアしなければなりません。

存在しないUIを、幻覚で作り出しません。エンコーダーが領域を落としたために、ストリームの端でボタンが途切れている場合、そのボタンの残りを作り出すモデルは、リモートデスクトップにふさわしくありません。iPadで見ているものが、ホストの実際の内容と一致すると信頼できなければなりません。もともとなかった内容を埋める生成モデルは、その信頼を壊します。だから、実際にエンコードされたピクセルから再構築するモデルだけを出荷し、作り出すモデルは決して出荷しません。

フレームレートが上がる、とは謳いません。Remioのフレームレートは、ホストのキャプチャレートと、ネットワークがフレームを時間どおりに届けられるかどうかで決まります。それは、すでに提供中のバッファリングなしのレンダラーの仕事で、アップスケーラーの仕事ではありません。私たちが作るどのモデルも、デコードしたフレームごとに、より鮮明な1フレームを出すだけで、それ以上のことはしません。

ホスト上の動画再生を直す、とは売り込みません。リモートのMacで映画を観ているなら、ストリーミングされるのは、ホスト自身のビデオデコーダーが、ホストの解像度で描画したものです。ストリームに品質回復の処理をかけても、ホストがすでに作り出した元の映像以上にはなりません。より鮮明な映画の再生を望むなら、正直なアドバイスは今日と変わりません。ホストではなく、手元のクライアントデバイスで再生してください。

そして、良いネットワークの代わりになるとは、決して売りません。LANの直接接続は、どれだけアップスケーリングを重ねても、帯域が絞られたWAN接続より、常に鮮明です。今日提供しているRemioの適応型ビットレートエンジンは、実際の回線が維持できる最高の映像を、すでに届けています。ここで作るものは、悪いネットワークのための追加の保険であって、良いネットワークの代用品ではありません。

✦FAQ

よくあるご質問

デバイス上のニューラルアップスケーリングについて、よく寄せられる質問に、正直にお答えします。

デバイス上のニューラルアップスケーリングは、今日Remioで利用できますか?
まだです。これは、検討している研究の方向性であって、オンにできる機能ではありません。出荷時期もお約束していません。今日、Remioのセッションを鮮明に保っているのは、確かな技術です。ハードウェアH.265のエンドツーエンド、ネットワークを読み取って適切な範囲を選ぶ適応型ビットレートエンジン、ウインドウにぴったり合わせたサイズの仮想ディスプレイ、そして常に最新のフレームを表示する、バッファリングなしのレンダラーです。
もし作った場合、何かがデバイスの外に出ることはありますか?
いいえ。Remioのクライアントは、デバイス上のハードウェアのフレームワークに直接アクセスできるネイティブアプリです。AppleのプラットフォームではCore MLとNeural Engine、AndroidのNPUではNNAPIです。出荷するモデルは、Remioのほかのすべてがすでに動いているのと同じ方法で動きます。つまり、お使いのデバイス上でローカルに動き、クラウドでの処理のために余分に外へ出るものはありません。
出荷せずに、なぜ検討しているのですか?
すでにある手段を、はっきり上回らなければならないからです。Remioの適応型ビットレートエンジンは、回線が維持できる最も鮮明な範囲をすでに選んでいます。だからモデルは、それを超える実際に見える鮮明さを加えられると証明しなければなりません。しかも、スマートフォンやタブレットで無視できないバッテリー消費を伴わずに。その上で初めて、アプリに載る資格が得られます。
今のRemioで、文字やコードの鮮明さを保っているのは何ですか?
今日提供している4つです。ハードウェアH.265のエンコードとデコードのエンドツーエンドと、フォールバックのH.264。ラウンドトリップ時間を読み取り、ラグを急増させずに映像を鮮明に保つ範囲を選ぶ、適応型ビットレートエンジン。ホストのモニターを縮めたコピーではなく、クライアントのウインドウにぴったり合わせたサイズの仮想ディスプレイ。そして、バッファリングなしのレンダラー。描画されるすべてのフレームはその時点で最新のものなので、待ち行列で画質が甘くなることはありません。
提供するときは、お知らせしてもらえますか?
はい。このページとAIの概要ページは、すべての機能の実際の状況を、検討中か、提供中かで追っています。ニューラルアップスケーリングが実現し、検証できるようになったその時点で、両方のページが同じ正直さでそれを伝えます。それまでは、ありのままの表示のままです。研究中のアイデア、ということです。
Remioのアプリアイコン

今日も、速くて鮮明。さらに鮮明にする方法を、探っています。

Remioをインストールすれば、ハードウェアH.265のエンドツーエンドのストリーミング、ネットワークを読み取る適応型ビットレートエンジン、ウインドウにぴったり合わせたサイズの仮想ディスプレイが、すべて今すぐ使えます。デバイス上のニューラルアップスケーリングは、このページではまだ研究中のアイデアです。時期はお約束せず、状況が変わった時点で、このページが正直にお伝えします。