ZOOMフィットネスのための環境構築を考察してみました。

ZOOMはあくまでミーティングを行うツールというのが前提でしょう。

音声が重要で、映像はプレゼンテーションや参加者の顔など動作の少ない絵を映すことができれば良いという使い方が前提だと思います。

しかし、フィットネスで使用する場合、声も映像も重要。ヨガならともかく、エアロビクスやステップ、ズンバなど動作が激しく、なおかつ多いときには100人を超える参加者がいる。

ZOOMアプリの作成者としては想定外の使い方でしょうね。

こちら側のパソコン負荷状況

映像が途切れる、BGMが聞こえにくい、音と映像がズレるなど、レッスン参加中にそうった症状がみられますが、他の参加者も同時に同様な症状が起こることから、開催者側の環境に原因があると思います。とはいえ、こちら側の実際の負荷はどのぐらいなのか調べてみました。

インターネット回線の速度テストFast.comで計測した結果です。

ZOOM開催前のネットワーク通信速度は24Mbpsでした。速いというわけではないですが、むしろ今時にしては遅いほうかも。しかしネットサーフィンやyoutubeなど見るにはまったく困らないです。

このとき使用したパソコンはWindows10ノートパソコン。Corei5、メモリ8GB、WiFiです。

タスクマネージャで負荷がどのぐらいあるか調べました。

やはりChromeはメモリを喰いますね。zoomを起動したらchromeは終了させたほうが良いです。メモリはかなり開放されます。CPU負荷もネットワーク負荷も少なく安定しています。

さて、レッスン開始後の状態を見てみます。

それほどでもないレッスン中の負荷

レッスン参加者は20名ほどでしたが、インストラクター画面を固定にして、参加者画面を2×3=6人を同時に写しました。

CPUは一瞬上がったものの、メモリもネットワークも負荷が少ないです。1Mbpsを切っていますね。思ったより少ないです。

GPUの負荷はほぼCPUに比例していますね。まだ余裕があります。

画面を増やしてみました。全員ミュートです。

CPUが100パーセントになっているところは参加者を一覧表示に切り替えたとき。何もいじらないと20パーセント強ぐらいの低負荷ですね。

メモリ負荷も変わらないです。つまり参加人数が多くても負荷は変わらないと思われます。(参加者の音声ミュートが前提です)

ネットワークは1Mbps弱と負荷が少ないです。というより思った以上に負荷が全然少ないですね。

レッスン中、負荷の変化はそれほどありません。ZOOMをいじったときは一時的にCPU負荷が増えますがすぐに元に戻ります。レッスンも映像が乱れることなく続いていました。

ところが終盤の通しに入ったとき、映像が乱れ始めました。

特に動作がすばやくなる瞬間に映像が固まることが多いですね。こちらの負荷はほぼ変わらずです。ズレはほぼありません。固まる、飛ぶのどちらかです。

こちらの低負荷を考えると、やはり主催者(インストラクター)側の環境によるものではないかと推測されます。他の参加者からも固まるという声が同時に聞こえますから。

主催者側と参加者側の違いは音声をミュートにするかどうかです。zoomは音を発した参加者に画面が移りますね。この負荷は大きいのでしょうか。

全員ミュートにしていたら関係ないし、映像がこの程度の負荷ですから、音声が加わったところで知れているはずです。

タスクマネージャで何がどの程度負荷をかけているか見てみたいです。

映像がカクカクする。固まる原因と対策

映像が乱れたり、固まる原因ですが、ミーティング開催者側のネットワーク負荷、パソコン負荷状況を確認したいところですが、おそらく、ネットワークではなく、CPUやメモリの負荷が大きいと推測されます。余計なアプリを落とすことで改善されることがあると思います。

とにかく、ZOOMが起動したら、クロームやIEなど余計なソフトは終了させます。

それとともにZOOMの設定は「ハードウェアアクセラレーションを有効にする」にし、GPUに任せてみるのも手です。先ほど余裕があったGPUがどのくらい負荷が上がったか、タスクマネージャーで見てみたいです。

タブレットやスマホ、GPUスペックの低いミニノートではアクセラレーションの設定で効果は期待できません。

 

音と映像がずれる原因と対策

自分にとってズレが非常に大きなストレスです。すごく気持ち悪いです。という自分はリアルなレッスンでカウントがずれることがしばしばありますが、自分がずれるときは気持ち悪くありません。。。

推測するにはカメラとマイクを別々にしていることがズレの原因ではないかと思います。たしかにカメラとマイクを別々にすることで綺麗な映像、音は幅が広がるなど、質がよくなりますがパソコンのスペックもそれなりに求められます。

よってマイクとカメラが一体となっているウェブカメラを使用すれば、経路の差が小さくズレることが少なくなるのではないかと思います。

 

CPU負荷が少ないときはズレも少ないと思いますが、負荷に耐えられなくなったときズレが大きくなってしまうのではないかと考えられます。

しかし、その前に

ZOOMの設定で以下の項目に影響があるようです。

「連続的な背景の雑音の抑制」と「断続的な背景雑音の抑制」の欄を「自動」から「無効化」

「インミーティングオプションをマイクからオリジナルサウンドを有効にする表示」にチェックをつける

こちらが参考になりますね。「旅するダンサー

動きが速くなるとなぜ乱れるのでしょう。

最後の通しで激しく動き出したら映像がカクカク飛ぶようになりました。

動画を伝送するときは圧縮して送られます。ただ、映像を単純に圧縮するのではなく、前のフレームと次のフレームの差分が処理されます。

差分だけを処理することで負荷を軽減させているのですが、静止画が続くと差分は無く処理は軽く、早い動きだと差分が大きくなり処理が重くなります。急激に動きが速くなるということは急激に処理が必要となり、追いつかずに映像が乱れるだろうと思われます。

この場合でもZOOMの設定は「ハードウェアアクセラレーションを有効にする」にするのが有効的と思われます。

CPUを速くしたり、メモリを増やしたりするなどスペックをあげることである程度改善されますが、GPUの優れたゲーム用パソコンにしたほうが良さそうです。

また、急に動きを速くするのではなく徐々に速くすると良いかもしれません。

まとめると

・回線速度は理論的には5Mbpsでも大丈夫ですが、5Mbpsを下回ったり不安定ならまずはネットワーク構築を見直したほうがよいです。有線がいいとかWifiがだめとかではなく回線速度、安定度をまずは調べた方がよいです。

・タスクマネージャーでパソコンの負荷を調べる。何もしていないときは負荷は常に20%以下がよい。メモリ4GBでは足りません。使用していないアプリを停止することで改善されるが8GBは欲しい。ズームアプリ以外はできるだけ落とす(クロームやIEも)

ZOOMのハードウェアアクセラレーションを有効にし現在のGPUの負荷を確認します。パワー不足であれば、GPU処理能力が優れているゲーマーパソコンに変えた方が良いと思います。

・ZOOMの「連続的な背景の雑音の抑制」などの設定を見直す。無駄な処理を行っていたら設定を外すした方が良いです。また、マイク、カメラを別々にしてズレが生じるなら、マイク、カメラ一体型のウェブカメラにしてみる。

・動作は急に速くしない。一定の速度または徐々に速くする・・・。

余談

*ハードウェアエンコード搭載WEBカメラを使用すると低スペックのパソコンでも安定動作が得られると思いますが、探したのですがZOOMに対応しているものが見つかりませんでした。(ZOOMで使えるものはあるが、エンコードを再処理してしまう可能性があります)今後、適合機種が販売されるか、アプリ更新に期待したいです。

*ZOOMを液晶テレビに映すときの負荷ですが、HDMIケーブルを使用した場合はまったくといいほど影響はありません。ビデオチップで処理を行っているためです。
HDMIではなく、AppleテレビやChromeCastなどwifiを飛ばして写すのは高負荷なので遅延や乱れが起きやすいです。

いろいろ当てずっぽな考えもありますが行き詰ったらこれらを見直してもよいかと思います。