getDefaultDegradationPreference method

DegradationPreference getDefaultDegradationPreference(
  1. LocalVideoTrack track
)

Implementation

DegradationPreference getDefaultDegradationPreference(LocalVideoTrack track) {
  // a few of reasons we have different default paths:
  // 1. without this, Chrome seems to aggressively resize the SVC video stating `quality-limitation: bandwidth` even when BW isn't an issue
  // 2. since we are overriding contentHint to motion (to workaround L1T3 publishing), it overrides the default degradationPreference to `balanced`
  final VideoDimensions dimensions = track.currentOptions.params.dimensions;
  if (track.source == TrackSource.screenShareVideo || dimensions.height >= 1080) {
    return DegradationPreference.maintainResolution;
  }
  return DegradationPreference.balanced;
}