Commit 5ab8165c authored by Ash Mishra's avatar Ash Mishra
Browse files

renamed maximumBitRate to maxBitRate. Added applyModifiers support

parent 12a482a8
Loading
Loading
Loading
Loading
+1 −1
Changes for Video.js: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -330,7 +330,7 @@ Video.propTypes = {
    // Opaque type returned by require('./video.mp4')
    PropTypes.number
  ]),
  maximumBitRate: PropTypes.number,
  maxBitRate: PropTypes.number,
  resizeMode: PropTypes.string,
  poster: PropTypes.string,
  posterResizeMode: Image.propTypes.resizeMode,
+6 −6
Changes for android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerView.java: 6 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@ class ReactExoplayerView extends FrameLayout implements
    private boolean isBuffering;
    private float rate = 1f;
    private float audioVolume = 1f;
    private int maximumBitRate = 0;
    private int maxBitRate = 0;

    private int minBufferMs = DefaultLoadControl.DEFAULT_MIN_BUFFER_MS;
    private int maxBufferMs = DefaultLoadControl.DEFAULT_MAX_BUFFER_MS;
@@ -246,7 +246,7 @@ class ReactExoplayerView extends FrameLayout implements
            TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveTrackSelection.Factory(BANDWIDTH_METER);
            trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
            trackSelector.setParameters(trackSelector.buildUponParameters()
                            .setMaxVideoBitrate(maximumBitRate));
                            .setMaxVideoBitrate(maxBitRate));

            DefaultAllocator allocator = new DefaultAllocator(true, C.DEFAULT_BUFFER_SEGMENT_SIZE);
            DefaultLoadControl defaultLoadControl = new DefaultLoadControl(allocator, minBufferMs, maxBufferMs, bufferForPlaybackMs, bufferForPlaybackAfterRebufferMs, -1, true);
@@ -910,13 +910,13 @@ class ReactExoplayerView extends FrameLayout implements
      }
    }

    public void setMaximumBitRateModifier(int newMaximumBitRate) {
        if (newMaximumBitRate==0) newMaximumBitRate =  Integer.MAX_VALUE;
        maximumBitRate = newMaximumBitRate;
    public void setMaxBitRateModifier(int newMaxBitRate) {
        if (newMaxBitRate==0) newMaxBitRate =  Integer.MAX_VALUE;
        maxBitRate = newMaxBitRate;

        if (player != null) {
            trackSelector.setParameters(trackSelector.buildUponParameters()
                    .setMaxVideoBitrate(maximumBitRate));
                    .setMaxVideoBitrate(maxBitRate));
        }
    }

+3 −3
Changes for android-exoplayer/src/main/java/com/brentvatne/exoplayer/ReactExoplayerViewManager.java: 3 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -47,7 +47,7 @@ public class ReactExoplayerViewManager extends ViewGroupManager<ReactExoplayerVi
    private static final String PROP_PROGRESS_UPDATE_INTERVAL = "progressUpdateInterval";
    private static final String PROP_SEEK = "seek";
    private static final String PROP_RATE = "rate";
    private static final String PROP_MAXIMUM_BIT_RATE = "maximumBitRate";
    private static final String PROP_MAXIMUM_BIT_RATE = "maxBitRate";
    private static final String PROP_PLAY_IN_BACKGROUND = "playInBackground";
    private static final String PROP_DISABLE_FOCUS = "disableFocus";
    private static final String PROP_FULLSCREEN = "fullscreen";
@@ -202,8 +202,8 @@ public class ReactExoplayerViewManager extends ViewGroupManager<ReactExoplayerVi
    }

    @ReactProp(name = PROP_MAXIMUM_BIT_RATE)
    public void setMaximumBitRate(final ReactExoplayerView videoView, final int maximumBitRate) {
        videoView.setMaximumBitRateModifier(maximumBitRate);
    public void setMaxBitRate(final ReactExoplayerView videoView, final int maxBitRate) {
        videoView.setMaxBitRateModifier(maxBitRate);
    }

    @ReactProp(name = PROP_PLAY_IN_BACKGROUND, defaultBoolean = false)
+10 −8
Changes for ios/Video/RCTVideo.m: 10 added lines, 8 removed lines.
Original line number Diff line number Diff line
@@ -51,7 +51,7 @@ static int const RCTVideoUnset = -1;
  /* Keep track of any modifiers, need to be applied after each play */
  float _volume;
  float _rate;
  float _maximumBitRate;
  float _maxBitRate;

  BOOL _muted;
  BOOL _paused;
@@ -339,8 +339,7 @@ static int const RCTVideoUnset = -1;
      _playerItem = playerItem;
      [self addPlayerItemObservers];
      [self setFilter:_filterName];

      _playerItem.preferredPeakBitRate = _maximumBitRate;
      [self setMaxBitRate:_maxBitRate];
      
      [_player pause];
      [_playerViewController.view removeFromSuperview];
@@ -382,11 +381,6 @@ static int const RCTVideoUnset = -1;
  _videoLoadStarted = YES;
}

- (void)setMaximumBitRate:(float) maximumBitRate {
  _maximumBitRate = maximumBitRate;
  [self applyModifiers];
}

- (NSURL*) urlFilePath:(NSString*) filepath {
  if ([filepath containsString:@"file://"]) {
    return [NSURL URLWithString:filepath];
@@ -859,6 +853,12 @@ static int const RCTVideoUnset = -1;
  [self applyModifiers];
}

- (void)setMaxBitRate:(float) maxBitRate {
  _maxBitRate = maxBitRate;
  [self applyModifiers];
}


- (void)applyModifiers
{
  if (_muted) {
@@ -869,6 +869,8 @@ static int const RCTVideoUnset = -1;
    [_player setMuted:NO];
  }
  
  _playerItem.preferredPeakBitRate = _maxBitRate;
  
  [self setSelectedAudioTrack:_selectedAudioTrack];
  [self setSelectedTextTrack:_selectedTextTrack];
  [self setResizeMode:_resizeMode];
+1 −1
Changes for ios/Video/RCTVideoManager.m: 1 added line, 1 removed line.
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ RCT_EXPORT_MODULE();
}

RCT_EXPORT_VIEW_PROPERTY(src, NSDictionary);
RCT_EXPORT_VIEW_PROPERTY(maximumBitRate, float);
RCT_EXPORT_VIEW_PROPERTY(maxBitRate, float);
RCT_EXPORT_VIEW_PROPERTY(resizeMode, NSString);
RCT_EXPORT_VIEW_PROPERTY(repeat, BOOL);
RCT_EXPORT_VIEW_PROPERTY(allowsExternalPlayback, BOOL);