Class KeepFramesPerSecondPolicy
java.lang.Object
com.openinventor.inventor.Inventor
com.openinventor.remoteviz.rendering.IFrameEncodingPolicy
com.openinventor.remoteviz.rendering.KeepFramesPerSecondPolicy
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 the
Connection.
If the Client owns multiple connections, the network bandwidth allocated to each Connection will be equitably shared. Otherwise, the network bandwidth allocated to the Connection will be equal to the network bandwidth allocated to the Client. The network bandwidth allocated to the Client can be defined from ClientSettings.setBandwidth. This policy works as described below:
- When the network bandwidth allocated to the
Connectiondecreases, the FPS value will keep the FPS target value and the frame quality will decrease. - If the frame quality decreases until the frame quality threshold, then the FPS will start to decrease.
- When the network bandwidth allocated to the
Connectionincreases, the FPS will increase until it reaches the FPS target and then the frame quality will increase until it reaches the frame quality target.
See ConnectionSettings.setFrameEncodingPolicy to define the frame encoding policy.
- See Also:
-
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
ConstructorsConstructorDescriptionConstructor.KeepFramesPerSecondPolicy(int fpsTarget, float qualityTarget, float qualityThreshold) Convenience Constructor. -
Method Summary
Methods inherited from class com.openinventor.remoteviz.rendering.IFrameEncodingPolicy
getFrameQuality, getFramesPerSecond, updateMethods inherited from class com.openinventor.inventor.Inventor
dispose, getNativeResourceHandle
-
Constructor Details
-
KeepFramesPerSecondPolicy
public KeepFramesPerSecondPolicy(int fpsTarget, float qualityTarget, float qualityThreshold) Convenience Constructor.- Parameters:
fpsTarget- : FPS target, the value range is [1, 60].qualityTarget- : frame quality target, the value range is [0, 1].qualityThreshold- : frame quality threshold, the value range is [0, 1]. (qualityThreshold <= qualityTarget)
-
KeepFramesPerSecondPolicy
public KeepFramesPerSecondPolicy()Constructor. The FPS target will be set to 30.
The frame quality target will be set to 0.7.
The frame quality threshold will be set to 0.3.
-