プログレッシブWebアプリ(PWA)によってブラウザなしで特定ブラウザサービスを使う。
ホントはブラウザと同じだから
Google傘下のYouTubeが、プログレッシブWebアプリ(PWA)に対応した。
デスクトップ版Google ChromeやMicrosoft Edgeで、アドレスバーにインストール可能なマークが表示されていれば、そのボタンからインストールが可能になる。もしマークが表示されていないようなら、アドレスバーの「+ボタン」から“www.youtube.com”をPWAとしてインストールできる。
このインストールによって、Webブラウザとは別のウィンドウで表示され、見た目としてローカルアプリケーションのように利用する事ができる。
このインストールの説明でも大凡わかると思うが、別にPWAは別アプリケーションになるわけではなく、単純にWebアプリを別の枠で表示しているにすぎない。
具体的に説明するとPWAはWebブラウザで利用しているWebアプリをPCやモバイル端末のOSに直接インストールできるようにする仕組みである。なのでブラウザとは別に独立したウィンドウで動作し、Windows10ではスタート画面やタスクバーのジャンプリストといったシェル機能との統合にも対応する。
PWAによってはオフラインモードやプッシュ通知をサポートするものもあり、ネイティブのデスクトップアプリのように使えるものもある。
今回のYouTube以外でいえばTwitterもPWAとして動作している。
繰り返すが、PWAはあくまでも中身はブラウザ上で動作するWebアプリと変わらない。見た目が変わっただけ、と言ってもいいぐらいのものだが、そこにシェル機能など別の機能と組み合わせる事ができるものである。
WebアプリのVideo設定
PWAの話が出たので、もう少しWebアプリの話を。
個人的な話なのだが、ブラウザで動画などを表示する際、動画再生のフィルタなどを指定したりするようにできないものか? と考える事がある。
というのは、最近では当たり前になっているが、動画処理をDirectXの処理としてGPUのハードウェアを利用して処理する事ができるのだが、それと同じようにAMDのFluid Motionをブラウザ動画の処理に利用出来ないか? と考える事があるのである。
Media Player Classicという動画プレーヤーソフトは、フィルタとしてFluid Motionを利用出来る機能がある。
これを提供してくれているのは、bluesky氏のサイトで公開されている「Bluesky Frame Rate Converter」というDirectShowフィルタなのだが、このフィルタを利用する事でFluid MotionというAMD製GPUを利用したフレーム補間を使った動画再生が可能だったりする。
Media Player Classic-BEという動画プレーヤーは、通常の動画ファイルだけでなく、URLを指定する事でそのURLにある動画を再生する事ができるため、Fluid Motionを利用したネット動画再生までできるハズ。…なぜ「ハズ」と記載したかというと、機能としては存在するが、動画サイトの仕様変更が良く行われる為、ストリーミング再生できると言い切れないからだ。なのでHPC-BEでのURL動画再生はオマケ機能と考えた方がよいだろう。
このMedia Player Classicのようなフィルタを指定する機能をPWAが持っていれば、Media Player Classicのような動画プレーヤーを使わずともFluid Motionが利用可能になるので、AMD製GPUを利用する者からすればかなり便利になるのだが…。
PWAが今後より発展し普及していく上では、そうした機能拡張は必須ではないかと思う。開発者の方は、そうした外部プラグインやフィルタの適用が可能になるような方法を考えて戴けると助かる。
Fluid Motionは消えるのか?
この話、以前にもしたかもしれないが、Fluid MotionはAMD製GPUでもVega系アーキテクチャのものまでしか今の所対応していない。もっと正確にいうと、2014年あたりにAMDが掲げたGraphic Core Next(GCN)世代のコアで採用され、それ以降Vega系アーキテクチャのGPUまでが対応している機能である。
だから最新のRDNA系アーキテクチャのGPUでは、Radeon Settingの中からもFluid Motionの項目は削除されてしまっている。
Fluid Motionとは、動画のフレーム補間をGPU処理でやってしまおうという機能で、動画再生にハードウェア支援を入れていこうとしたところから生まれた。当時はDirectShowを利用したGPUによる動画支援機能というのが流行りだしていて、AMDはその動画支援機能をGPU内に盛り込み、その中でフレーム補完を機能として持たせた。ライバルのNVIDIAも動画再生支援機能をGPUに持たせたが、Fluid Motionのようなフレーム補完機能までは実装していない。
このFluid Motionの優れた所は、秒間24フレームの動画も綺麗に等分配して60フレームに補完するところである。アニメーションでは24フレームの作品もある事から、アニメを綺麗にフレーム補完する時には、通常の30フレームを60フレームに補完する機能とは異なるアプローチが必要になる。
30フレームから60フレームにする時は単純に各フレーム毎の中間にもう1フレームを補完すればよいだけだが、24フレームだと単純なフレーム補完という訳にはいかない。
Fluid Motionはそれを可能にする機能があるため、登場した2014年にはかなり注目された機能である。
だが…時は既に6年が経過し、最近の動画は30フレームでも滑らかに再生できるよういろいろ工夫された事もあり、その視覚的効果が小さい事からFluid Motionはあまり注目されなくなってきた。
だが私は思う。
折角搭載している高機能なGPUなのに、動画再生でそのGPUを最大限利用しない手はないのではないか?
その演算力を使って動画さえも綺麗にできれば良いではないか、と。
だが、残念ながら今の所Fluid Motionは消えゆく技術ではないかという感じだ。
AMDの最新アーキテクチャでは利用できないようになっている事からも、それは想像出来る。おそらくこのままフェードアウトしていく機能ではないかと思う。
というわけで、私は今の所よほど高性能を必要としない状況なら、今のRadeon VIIをそのまま継続して使用していこうと思っている。
もっとも、おそらく来年くらいに発売されるもうミドルレンジクラスでもRadeon VIIはついていけなくなる可能性はあるが、もう少し様子を見ようと思っている。
どのみちメインPC入れ替えのタイミングも見失っているし(-_-;)