コナステクライアント(2018: 1.0.0)は.NET Framework 4のシンクライアントアプリであり,最近のWindowsであればまず動くことになっている.端的に言えば映像(H.264?),音声をサーバーから受け取りレンダリングし,タッチ(クリック)やキーボードなどの入力をサーバーに送る……といったよくあるクラウドゲーミングとみてよさそう.そのうち,映像のデコード方法として
から選択することができる.
デフォルトではOpenH264による実装が選択されているのだが,これをRyzen APUのiGPU環境で使用していると映像が固まって動かなくなることがある.
この問題自体はDXVAデコーダを選択することで解決する.ハードウェアアクセラレーションによるデコードが行え,軽快に使用できるようになる.
ただし,切り替える際に注意点が2つある.私は見事にこれにハマり,苦労した.
まず,初回起動時などの設定ファイルが生成される前にこれを切替えてはいけない.アプリケーションが無言でクラッシュする.
エラーが一切出ていないわけではなく,イベントビューアーを確認するとSystem.IO.FileNotFoundException
が記録されていることが確認できる.でもなぜそうなってるかわからなかった.
どうやら,%LOCALAPPDATA%\KONAMI\usersettings.xml
にある設定ファイルを開こうとして,それが存在しないためにこの例外が発生しているらしい.そして,このファイルが生成・保存されるのアプリケーションの(正常)終了時である.つまり,正常に終了させてやる必要がある.わたしはQMAをプレイしようとしてこの問題に遭遇したが,ウインドウの×ボタンやalt+F4で終了しようとした場合は確認のダイアログが映像中に表示されるためうまく終了することができない.タスクマネージャーで殺してしまうとファイルが生成されていないままプロセスを殺すことになる.QMAで手っ取り早くアプリケーションの終了をするには雑にウインドウ上をクリックしPINエントリー画面に遷移し,タイムアウトを待つのがいい.PIN入力画面の左下の方にキャンセルボタンがあるのでそれを押せるともっと早く終るし,さわらずに放置しておいてもこの画面になりタイムアウトするので勝手に終了してくれる.
再度ゲームを起動し,デコーダ(DXVA)を選択するとクラッシュすることなく次回起動時から適用される旨を示すダイアログが表示される.例によって画面は固まったままで詰んでしまうので,前述の手段で再度終了させる必要がある.(やっぱり強制終了させてしまうと保存されない)
再度起動すると,映像が固まることなくプレイできるようになっていた.
上記の問題は Ryzen APUである Ryzen 7 PRO 4750G および Ryzen 5 PRO 3500U の環境で確認した.(Radeon driver 20.9.1/2, Windows 10 1909)
同様にRyzen CPUである2700XとNVIDIAのGPUであるRTX2070を使用している環境では表題の問題は発生しなかったためGPUに依存する問題とみている.ただし,動作するとの報告もあったのでGPUドライバのバージョンによっては問題ないのかもしれない.また,RadeonのdGPUを使用している環境での挙動は把握していない.