koorimizuw / YamaPlayer

Modern video player for VRChat.
https://yamadev.booth.pm/items/4768863
21 stars 1 forks source link

Resync中に動画を停止したり、次の動画を再生したりされると、同期ズレが発生する #2

Closed Sayamame-beans closed 3 months ago

Sayamame-beans commented 4 months ago

説明

動画を視聴している側がResyncを行っている最中(動画の再読み込みが行われている最中)に、他の人が動画の再生を停止したり、キューに入っている次の動画の再生を開始したりする(>ボタンを押す)と、同期ズレが発生してしまうようです。

前者のケースでは、既に止まっているはずの動画が再生され続けてしまいます。 (その状態で、再生されている側で一時停止などの操作を行うと、他の人でも再生が開始されます。)

後者のケースでは、それぞれ異なる動画が同じ再生位置で再生される挙動になります。 (その状態で、正しくない動画が再生されている側で一時停止などの操作を行っても、動画は正常にならず、異なる動画のままです。どちらかがResyncすると、もう片方のユーザーに揃います。)

環境

Unity 2022.3.22f1 VRChat SDK - Worlds 3.6.1 YamaPlayer v1.4.2

koorimizuw commented 4 months ago

@Sayamame-beans 後者のほうですが、ロード中に新しいUrlをロードしてOnVideoErrorを起こした場合、数秒後に一個前にロードしたUrlの動画が再生されます、SDK側のバグでかつ再生中のVRCUrlを取得することが不可能なので、現状は対応することが難しいです。

Sayamame-beans commented 3 months ago

なるほど…