Class KeepFrameQualityPolicy
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.remoteviz.rendering.IFrameEncodingPolicy
-
- com.openinventor.remoteviz.rendering.KeepFrameQualityPolicy
-
public class KeepFrameQualityPolicy extends IFrameEncodingPolicy
This class provides a calculation policy which allows to manage the FPS (frames per second) and the quality of interactive frames sent from Remoteviz service depending on the network bandwidth allocated to theConnection
. If theClient
owns multiple connections, the network bandwidth allocated to eachConnection
will be equitably shared. Otherwise, the network bandwidth allocated to theConnection
will be equal to the network bandwidth allocated to theClient
. The network bandwidth allocated to theClient
can be defined fromClientSettings.setBandwidth
. This policy works as described below:- When the network bandwidth allocated to the
Connection
decreases, the frame quality value will keep the frame quality target value and the FPS will decrease. - If the FPS decreases until the FPS threshold, then the frame quality will start to decrease.
- When the network bandwidth allocated to the
Connection
increases, the frame quality will increase until it reaches the frame quality target and then the FPS will increase until it reaches the FPS target.
See
ConnectionSettings.setFrameEncodingPolicy
to define the frame encoding policy.- See Also:
KeepFramesPerSecondPolicy
- When the network bandwidth allocated to the
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description KeepFrameQualityPolicy()
Constructor.KeepFrameQualityPolicy(float qualityTarget, int fpsTarget, int fpsThreshold)
Convenience Constructor.
-
Method Summary
-
Methods inherited from class com.openinventor.remoteviz.rendering.IFrameEncodingPolicy
getFrameQuality, getFramesPerSecond, update
-
Methods inherited from class com.openinventor.inventor.Inventor
dispose, getNativeResourceHandle
-
-
-
-
Constructor Detail
-
KeepFrameQualityPolicy
public KeepFrameQualityPolicy(float qualityTarget, int fpsTarget, int fpsThreshold)
Convenience Constructor.- Parameters:
qualityTarget
- : frame quality target, the value range is [0, 1].fpsTarget
- : FPS target, the value range is [1, 60].fpsThreshold
- : frames per second threshold, the value range is [1, 60]. (fpsThreshold <= fpsTarget)
-
KeepFrameQualityPolicy
public KeepFrameQualityPolicy()
Constructor. The frame quality target will be set to 0.7
The FPS target will be set to 30.
The FPS threshold will be set to 15.
-
-