@Override public void loadVideo(final Uri uri, final Options options) { if (exoPlayer.hasPlayedContent()) { stop(); } assertPlayerViewIsAttached(); exoPlayer.loadVideo(playerView.getPlayerSurfaceHolder(), drmSessionCreator, uri, options, forwarder, mediaCodecSelector); createSurfaceByShowingVideoContainer(); }
@Override public void attach(PlayerView playerView) { containerView = playerView.getContainerView(); buggyVideoDriverPreventer.preventVideoDriverBug(this, containerView); listenersHolder.addVideoSizeChangedListener(playerView.getVideoSizeChangedListener()); listenersHolder.addStateChangedListener(playerView.getStateChangedListener()); PlayerSurfaceHolder playerSurfaceHolder = playerView.getPlayerSurfaceHolder(); surfaceRequester = playerSurfaceHolder.getSurfaceRequester(); }
@Test public void whenLoadingVideo_thenDelegatesLoadingToFacade() { player.attach(playerView); player.loadVideo(uri, OPTIONS); verify(exoPlayerFacade).loadVideo(playerView.getPlayerSurfaceHolder(), drmSessionCreator, uri, OPTIONS, forwarder, mediaCodecSelector); }
@Test public void whenLoadingVideoWithTimeout_thenDelegatesLoadingToFacade() { player.attach(playerView); player.loadVideoWithTimeout(uri, OPTIONS, ANY_TIMEOUT, ANY_LOAD_TIMEOUT_CALLBACK); verify(exoPlayerFacade).loadVideo(playerView.getPlayerSurfaceHolder(), drmSessionCreator, uri, OPTIONS, forwarder, mediaCodecSelector); }
NoPlayerLog.setLoggingEnabled(false); SurfaceRequester surfaceRequester = mock(SurfaceRequester.class); given(playerView.getPlayerSurfaceHolder()).willReturn(playerSurfaceHolder); given(playerSurfaceHolder.getSurfaceRequester()).willReturn(surfaceRequester); given(playerView.getStateChangedListener()).willReturn(stateChangeListener);
@Before public void setUp() { given(playerView.getPlayerSurfaceHolder()).willReturn(playerSurfaceHolder); given(playerView.getStateChangedListener()).willReturn(stateChangeListener); given(playerView.getVideoSizeChangedListener()).willReturn(videoSizeChangedListener); given(playerView.getContainerView()).willReturn(containerView); given(listenersHolder.getErrorListeners()).willReturn(errorListener); given(listenersHolder.getPreparedListeners()).willReturn(preparedListener); given(listenersHolder.getBufferStateListeners()).willReturn(bufferStateListener); given(listenersHolder.getCompletionListeners()).willReturn(completionListener); given(listenersHolder.getStateChangedListeners()).willReturn(stateChangedListener); given(listenersHolder.getInfoListeners()).willReturn(infoListener); given(listenersHolder.getVideoSizeChangedListeners()).willReturn(videoSizeChangedListener); given(listenersHolder.getBitrateChangedListeners()).willReturn(bitrateChangedListener); player = new ExoPlayerTwoImpl( exoPlayerFacade, listenersHolder, forwarder, loadTimeout, heart, drmSessionCreator, mediaCodecSelector ); } }