Interface IWebRTCAdaptor

All Superinterfaces:
IScopeService
All Known Implementing Classes:
MockWebRTCAdaptor

public interface IWebRTCAdaptor extends IScopeService
  • Field Details

  • Method Details

    • registerMuxer

      void registerMuxer(String streamId, IWebRTCMuxer webRTCMuxer)
    • unRegisterMuxer

      void unRegisterMuxer(String streamId, IWebRTCMuxer webRTCMuxer)
    • registerWebRTCClient

      boolean registerWebRTCClient(String streamId, IWebRTCClient webRTCClient, VideoCodec codec)
    • streamExists

      boolean streamExists(String streamId)
    • getStreamInfo

      List<IStreamInfo> getStreamInfo(String streamId)
    • adaptStreamingQuality

      void adaptStreamingQuality(String streamId, IWebRTCClient webRTCClient, VideoCodec codec)
      Try to find the best bitrate for the client
      Parameters:
      streamId -
      webRTCClient -
    • forceStreamingQuality

      boolean forceStreamingQuality(String streamId, IWebRTCClient webRTCClient, int streamHeight)
      Try to force defined stream quality for the client
      Parameters:
      streamId -
      webRTCClient -
      streamHeight -
    • registerWebRTCClient

      boolean registerWebRTCClient(String streamId, IWebRTCClient webRTCClusterClient, int resolutionHeight, VideoCodec codec)
      Register to specific resolution It is used in clustering
      Parameters:
      streamId -
      webRTCClusterClient -
      resolutionHeight -
    • getNumberOfLiveStreams

      int getNumberOfLiveStreams()
      Returns number of active live streams
      Returns:
    • getNumberOfTotalViewers

      int getNumberOfTotalViewers()
      Returns total number of viewers
      Returns:
    • getNumberOfViewers

      int getNumberOfViewers(String streamId)
      Returns total number of viewer of a specific stream
      Parameters:
      streamId -
      Returns:
    • getWebRTCClientStats

      List<WebRTCClientStats> getWebRTCClientStats(String streamId)
      Return webrtc client stats
      Parameters:
      streamId -
      Returns:
    • getStreams

      Set<String> getStreams()
      Returns the stream id in the WebRTCAdaptor
    • setExcessiveBandwidthValue

      void setExcessiveBandwidthValue(int excessiveBandwidthValue)
      Sets the excessive bandwidth threshold value
      Parameters:
      excessiveBandwidthValue -
    • setExcessiveBandwidthCallThreshold

      void setExcessiveBandwidthCallThreshold(int excessiveBandwidthCallThreshold)
      Sets the excessive bandwidth call threshold value
      Parameters:
      excessiveBandwidthCallThreshold -
    • setExcessiveBandwidthAlgorithmEnabled

      void setExcessiveBandwidthAlgorithmEnabled(boolean excessiveBandwidthAlgorithmEnabled)
      Enable or disable excessive bandwidth algorithm
      Parameters:
      excessiveBandwidthAlgorithmEnabled -
    • setPacketLossDiffThresholdForSwitchback

      void setPacketLossDiffThresholdForSwitchback(int packetLossDiffThresholdForSwitchback)
      Set packet loss threshold if packetLoss is bigger than this value in ExcessiveBandwidth algorithm, it switches back to lower quality without try every attempts setTryCountBeforeSwitchback(int)
      Parameters:
      packetLossDiffThresholdForSwitchback -
    • setRttMeasurementDiffThresholdForSwitchback

      void setRttMeasurementDiffThresholdForSwitchback(int rttMeasurementDiffThresholdForSwitchback)
      Set rtt measurement threshold if rttMeasurement is bigger than this value in ExcessiveBandwidth algorithm, it switches back to lower quality without try every attempts setTryCountBeforeSwitchback(int)
      Parameters:
      rttMeasurementDiffThresholdForSwitchback -
    • setTryCountBeforeSwitchback

      void setTryCountBeforeSwitchback(int tryCountBeforeSwitchback)
      Number of tries to switch back to lower quality in ExcessiveBandwidth
      Parameters:
      tryCountBeforeSwitchback -