サーバ側でスケーリングしてもらうのがよい?
Nexus 7 でフルスクリーン化して動かしてみましたが、デスクトップの更新が非常に遅れます。前回試した時は遅延していたイメージがないので、確認のためフルスクリーンを解除して再度試してみました。
やはり、フルスクリーンにしなければほとんど遅延しません。
フルスクリーン機能で行っていることは送られてきたjpeg画像をスケーリングしてから描画するという違いだけです。ということは、スケーリングするために遅延するということになりますね。
WindowsやUbuntuのようなデスクトップPCならクライアント側(Qt Brynhildr)でスケーリングすることはそんなに大変ではありませんが、タブレットやスマフォのようなデバイスだと一秒間に10枚程度のjpeg画像をスケーリングしながら描画するのはちょっと大変みたいです。別スレッドでサウンドも再生してますし。
そういえば、少し前にKeroRemoteについてIchiGekiさんにお尋ねしたことがありました。
確か…iOSデバイス側でスケーリングして描画するのは大変なので、サーバ側でスケーリングして、必要な領域の画像データだけ転送するようにしている、という感じだったと思います。
サーバー側でスケーリングを行ってもらうように変更する仕組みはすでに入れてあるので、非力なデバイスの場合はこちらを標準にするようにしたほうが良さそうですね。そうすれば、タブレット側ではスケーリング処理をせずに最小限の領域の描画だけで済みます、たぶん。
(追記)
フルスクリーンでなく等倍で表示させてもやはり遅れますね…どちらでスケーリング処理を行うかという問題でもなさそうです。Nexus 7でのjpeg描画処理自体が間に合っていないのでしょうね…さて、どうしたものか。
最近のコメント