當前位置: 首頁>>代碼示例>>Java>>正文


Java ExoPlayer.STATE_BUFFERING屬性代碼示例

本文整理匯總了Java中com.google.android.exoplayer.ExoPlayer.STATE_BUFFERING屬性的典型用法代碼示例。如果您正苦於以下問題:Java ExoPlayer.STATE_BUFFERING屬性的具體用法?Java ExoPlayer.STATE_BUFFERING怎麽用?Java ExoPlayer.STATE_BUFFERING使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在com.google.android.exoplayer.ExoPlayer的用法示例。


在下文中一共展示了ExoPlayer.STATE_BUFFERING屬性的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getStateString

private String getStateString(int state) {
  switch (state) {
    case ExoPlayer.STATE_BUFFERING:
      return "B";
    case ExoPlayer.STATE_ENDED:
      return "E";
    case ExoPlayer.STATE_IDLE:
      return "I";
    case ExoPlayer.STATE_PREPARING:
      return "P";
    case ExoPlayer.STATE_READY:
      return "R";
    default:
      return "?";
  }
}
 
開發者ID:Dreamxiaoxuan,項目名稱:AndroidTvDemo,代碼行數:16,代碼來源:EventLogger.java

示例2: isPlaying

@Override
public boolean isPlaying() {
    if (mInternalPlayer == null)
        return false;
    int state = mInternalPlayer.getPlaybackState();
    switch (state) {
        case ExoPlayer.STATE_BUFFERING:
        case ExoPlayer.STATE_READY:
            return mInternalPlayer.getPlayWhenReady();
        case ExoPlayer.STATE_IDLE:
        case ExoPlayer.STATE_PREPARING:
        case ExoPlayer.STATE_ENDED:
            default:
            return false;
    }
}
 
開發者ID:Dreamxiaoxuan,項目名稱:AndroidTvDemo,代碼行數:16,代碼來源:IjkExoMediaPlayer.java

示例3: isPlaying

@Override
public boolean isPlaying() {
    if (mInternalPlayer == null)
        return false;
    int state = mInternalPlayer.getPlaybackState();
    switch (state) {
        case ExoPlayer.STATE_BUFFERING:
        case ExoPlayer.STATE_READY:
            return mInternalPlayer.getPlayWhenReady();
        case ExoPlayer.STATE_IDLE:
        case ExoPlayer.STATE_PREPARING:
        case ExoPlayer.STATE_ENDED:
        default:
            return false;
    }
}
 
開發者ID:bigjelly,項目名稱:ShaddockVideoPlayer,代碼行數:16,代碼來源:IjkExoMediaPlayer.java

示例4: run

@Override public void run() {
  switch (player.getPlaybackState()) {
    case ExoPlayer.STATE_BUFFERING:
      mlistener.onBuffering(playerControl.getBufferPercentage() + "");
      break;
    case ExoPlayer.STATE_ENDED:
      mlistener.onCompletion();
      break;
    case ExoPlayer.STATE_IDLE:
      break;
    case ExoPlayer.STATE_PREPARING:
      mlistener.onBufferingStarted();
      break;
    case ExoPlayer.STATE_READY:
      mlistener.onBufferingFinished();

      break;
    default:
      break;
  }
  mlistener.onProgressChanged((int) player.getCurrentPosition());
  mainHandler.postDelayed(updatePlayer, 200);
}
 
開發者ID:karanvs,項目名稱:ExVidPlayer,代碼行數:23,代碼來源:ExVidPlayerImp.java

示例5: getStateString

private String getStateString(int state) {
    switch (state) {
        case ExoPlayer.STATE_BUFFERING:
            return "B";
        case ExoPlayer.STATE_ENDED:
            return "E";
        case ExoPlayer.STATE_IDLE:
            return "I";
        case ExoPlayer.STATE_PREPARING:
            return "P";
        case ExoPlayer.STATE_READY:
            return "R";
        default:
            return "?";
    }
}
 
開發者ID:nextux,項目名稱:sbs-android-tv,代碼行數:16,代碼來源:EventLogger.java

示例6: onPlayerStateChanged

@Override
public void onPlayerStateChanged(boolean playWhenReady, int state) {
  switch (player.getPlaybackState()) {
    case ExoPlayer.STATE_BUFFERING:
      playerState = "buffering";
      break;
    case ExoPlayer.STATE_ENDED:
      playerState = "ended";
      break;
    case ExoPlayer.STATE_IDLE:
      playerState = "idle";
      break;
    case ExoPlayer.STATE_PREPARING:
      playerState = "preparing";
      break;
    case ExoPlayer.STATE_READY:
      playerState = "ready";
      break;
  }
  updateDebugInfoTextView();
}
 
開發者ID:asifkhan11,項目名稱:ExoPlayer-Demo,代碼行數:21,代碼來源:PlayerActivity.java

示例7: updatePlaybackState

private void updatePlaybackState(int playbackState) {
    PlaybackState.Builder state = new PlaybackState.Builder();
    long position = player.getCurrentPosition();
    if (ExoPlayer.STATE_PREPARING == playbackState) {
        state.setState(PlaybackState.STATE_CONNECTING, position, 1.0f);
    } else if (ExoPlayer.STATE_BUFFERING == playbackState) {
        state.setState(PlaybackState.STATE_BUFFERING, position, 1.0f);
    } else {
        if (player.getPlayerControl().isPlaying()) {
            state.setState(PlaybackState.STATE_PLAYING, position, 1.0f);
        } else {
            state.setState(PlaybackState.STATE_PAUSED, position, 1.0f);
        }
    }
    mediaSession.setPlaybackState(state.build());
}
 
開發者ID:nextux,項目名稱:sbs-android-tv,代碼行數:16,代碼來源:VideoPlayerActivity.java

示例8: onStateChanged

@Override
public void onStateChanged(boolean playWhenReady, int playbackState) {
    state = playbackState;
    String text = "playWhenReady=" + playWhenReady + ", playbackState=";
    switch (playbackState) {
        case ExoPlayer.STATE_BUFFERING:
            text += "buffering";
            break;
        case ExoPlayer.STATE_ENDED:
            text += "ended";
            break;
        case ExoPlayer.STATE_IDLE:
            text += "idle";
            break;
        case ExoPlayer.STATE_PREPARING:
            text += "preparing";
            break;
        case ExoPlayer.STATE_READY:
            text += "ready";
            break;
        default:
            text += "unknown";
            break;
    }
    Log.d(TAG, text);
}
 
開發者ID:xwz,項目名稱:iview-android-tv,代碼行數:26,代碼來源:DurationLogger.java

示例9: onPlayerStateChanged

@Override
public void onPlayerStateChanged(boolean playWhenReady, int state) {
  String playerState = "";
  switch (player.getPlaybackState()) {
    case ExoPlayer.STATE_BUFFERING:
      playerState = "buffering";
      break;
    case ExoPlayer.STATE_ENDED:
      playerState = "ended";
      break;
    case ExoPlayer.STATE_IDLE:
      playerState = "idle";
      break;
    case ExoPlayer.STATE_PREPARING:
      playerState = "preparing";
      break;
    case ExoPlayer.STATE_READY:
      playerState = "ready";
      break;
  }
  playerStateView.setText("Player State: " + playerState);
}
 
開發者ID:raphanda,項目名稱:ExoPlayer,代碼行數:22,代碼來源:VideoPlayer.java

示例10: onStateChanged

@Override
public void onStateChanged(boolean playWhenReady, int playbackState) {
    if (mPlayer == null) {
        return;
    }

    if (playWhenReady && playbackState == ExoPlayer.STATE_READY) {
        notifyTracksChanged(getAllTracks());
        String audioId = getTrackId(TvTrackInfo.TYPE_AUDIO,
                mPlayer.getSelectedTrack(TvTrackInfo.TYPE_AUDIO));
        String videoId = getTrackId(TvTrackInfo.TYPE_VIDEO,
                mPlayer.getSelectedTrack(TvTrackInfo.TYPE_VIDEO));
        String textId = getTrackId(TvTrackInfo.TYPE_SUBTITLE,
                mPlayer.getSelectedTrack(TvTrackInfo.TYPE_SUBTITLE));

        notifyTrackSelected(TvTrackInfo.TYPE_AUDIO, audioId);
        notifyTrackSelected(TvTrackInfo.TYPE_VIDEO, videoId);
        notifyTrackSelected(TvTrackInfo.TYPE_SUBTITLE, textId);
        notifyVideoAvailable();
    } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
            Math.abs(mPlayer.getPlaybackSpeed() - 1) < 0.1 &&
            playWhenReady && playbackState == ExoPlayer.STATE_BUFFERING) {
        notifyVideoUnavailable(TvInputManager.VIDEO_UNAVAILABLE_REASON_BUFFERING);
    }
}
 
開發者ID:googlesamples,項目名稱:androidtv-sample-inputs,代碼行數:25,代碼來源:RichTvInputService.java

示例11: onStateChanged

@Override
public void onStateChanged(boolean playWhenReady, int playbackState) {
    switch (playbackState) {
        case ExoPlayer.STATE_BUFFERING:
            // Do nothing.
            break;
        case ExoPlayer.STATE_ENDED:
            mIsMetadataSet = false;
            mMediaController.getTransportControls().skipToNext();
            break;
        case ExoPlayer.STATE_IDLE:
            // Do nothing.
            break;
        case ExoPlayer.STATE_PREPARING:
            mIsMetadataSet = false;
            break;
        case ExoPlayer.STATE_READY:
            // Duration is set here.
            if (!mIsMetadataSet) {
                updateMetadata(mSelectedVideo);
                mIsMetadataSet = true;
            }
            break;
        default:
            // Do nothing.
            break;
    }
}
 
開發者ID:nejtv,項目名稱:androidtv-sample,代碼行數:28,代碼來源:PlaybackOverlayFragment.java

示例12: onStateChanged

@Override
public void onStateChanged(boolean playWhenReady, int playbackState) {
	if (playbackState == ExoPlayer.STATE_ENDED) {
		showControls();
	}
	String text = "playWhenReady=" + playWhenReady + ", playbackState=";
	switch (playbackState) {
	case ExoPlayer.STATE_BUFFERING:
		text += "buffering";
		goatMediaController.showLoading();
		break;
	case ExoPlayer.STATE_ENDED:
		text += "ended";
		goatMediaController.showComplete();
		break;
	case ExoPlayer.STATE_IDLE:
		text += "idle";
		break;
	case ExoPlayer.STATE_PREPARING:
		text += "preparing";
		goatMediaController.showLoading();
		break;
	case ExoPlayer.STATE_READY:
		text += "ready";
		goatMediaController.hideLoading();
		break;
	default:
		text += "unknown";
		break;
	}
	playerStateTextView.setText(text);
	updateButtonVisibilities();
}
 
開發者ID:vuthanhict,項目名稱:ExoPlayerController,代碼行數:33,代碼來源:PlayerActivity.java

示例13: onStateChanged

@Override
public void onStateChanged(boolean playWhenReady, int playbackState) {
    if (playbackState == ExoPlayer.STATE_ENDED) {
        showControls();
    }
    String text = "playWhenReady=" + playWhenReady + ", playbackState=";
    switch (playbackState) {
        case ExoPlayer.STATE_BUFFERING:
            text += "buffering";
            break;
        case ExoPlayer.STATE_ENDED:
            text += "ended";
            break;
        case ExoPlayer.STATE_IDLE:
            text += "idle";
            break;
        case ExoPlayer.STATE_PREPARING:
            text += "preparing";
            break;
        case ExoPlayer.STATE_READY:
            text += "ready";
            break;
        default:
            text += "unknown";
            break;
    }
    Log.d(TAG, text);
}
 
開發者ID:konifar,項目名稱:droidkaigi2016,代碼行數:28,代碼來源:VideoPlayerActivity.java

示例14: maybeReportPlayerState

private void maybeReportPlayerState() {
  boolean playWhenReady = player.getPlayWhenReady();
  int playbackState = getPlaybackState();
  if (lastReportedPlayWhenReady != playWhenReady || lastReportedPlaybackState != playbackState) {
    for (Listener listener : listeners) {
      listener.onStateChanged(playWhenReady, playbackState);
    }
    switch (playbackState) {
      case ExoPlayer.STATE_IDLE:
        break;
      case ExoPlayer.STATE_PREPARING:
        break;
      case ExoPlayer.STATE_READY:
        if (onPreparedListener != null && !isPrepared) {
          isPrepared = true;
          onPreparedListener.onPrepared(this);
        }
        break;
      case ExoPlayer.STATE_BUFFERING:
        break;
      case ExoPlayer.STATE_ENDED:
        if (playWhenReady && onCompletionListener != null) {
          onCompletionListener.onCompletion(this);
        }
        break;
    }
    lastReportedPlayWhenReady = playWhenReady;
    lastReportedPlaybackState = playbackState;
  }
}
 
開發者ID:XueyanLiu,項目名稱:miku,代碼行數:30,代碼來源:MediaPlayer.java

示例15: onStateChanged

@Override
public void onStateChanged(final boolean playWhenReady, final int playbackState) {
  if (playbackState == ExoPlayer.STATE_ENDED) {
    finish();
  }

  if (playbackState == ExoPlayer.STATE_BUFFERING) {
    this.loadingIndicatorProgressBar.setVisibility(View.VISIBLE);
  } else {
    this.loadingIndicatorProgressBar.setVisibility(View.GONE);
  }
}
 
開發者ID:kickstarter,項目名稱:android-oss,代碼行數:12,代碼來源:VideoActivity.java


注:本文中的com.google.android.exoplayer.ExoPlayer.STATE_BUFFERING屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。