com.google.android.exoplayer2.Timeline.getNextPeriodIndex()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(3.6k)|赞(0)|评价(0)|浏览(129)

本文整理了Java中com.google.android.exoplayer2.Timeline.getNextPeriodIndex()方法的一些代码示例,展示了Timeline.getNextPeriodIndex()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Timeline.getNextPeriodIndex()方法的具体详情如下:
包路径:com.google.android.exoplayer2.Timeline
类名称:Timeline
方法名:getNextPeriodIndex

Timeline.getNextPeriodIndex介绍

[英]Returns the index of the period after the period at index periodIndex depending on the repeatMode and whether shuffling is enabled.
[中]根据repeatMode和是否启用混洗,返回index periodIndex处时段后的时段索引。

代码示例

代码示例来源:origin: google/ExoPlayer

/**
 * Returns whether the given period is the last period of the timeline depending on the
 * {@code repeatMode} and whether shuffling is enabled.
 *
 * @param periodIndex A period index.
 * @param period A {@link Period} to be used internally. Must not be null.
 * @param window A {@link Window} to be used internally. Must not be null.
 * @param repeatMode A repeat mode.
 * @param shuffleModeEnabled Whether shuffling is enabled.
 * @return Whether the period of the given index is the last period of the timeline.
 */
public final boolean isLastPeriod(int periodIndex, Period period, Window window,
  @Player.RepeatMode int repeatMode, boolean shuffleModeEnabled) {
 return getNextPeriodIndex(periodIndex, period, window, repeatMode, shuffleModeEnabled)
   == C.INDEX_UNSET;
}

代码示例来源:origin: google/ExoPlayer

/**
 * Given a period index into an old timeline, finds the first subsequent period that also exists
 * in a new timeline. The uid of this period in the new timeline is returned.
 *
 * @param oldPeriodUid The index of the period in the old timeline.
 * @param oldTimeline The old timeline.
 * @param newTimeline The new timeline.
 * @return The uid in the new timeline of the first subsequent period, or null if no such period
 *     was found.
 */
private @Nullable Object resolveSubsequentPeriod(
  Object oldPeriodUid, Timeline oldTimeline, Timeline newTimeline) {
 int oldPeriodIndex = oldTimeline.getIndexOfPeriod(oldPeriodUid);
 int newPeriodIndex = C.INDEX_UNSET;
 int maxIterations = oldTimeline.getPeriodCount();
 for (int i = 0; i < maxIterations && newPeriodIndex == C.INDEX_UNSET; i++) {
  oldPeriodIndex = oldTimeline.getNextPeriodIndex(oldPeriodIndex, period, window, repeatMode,
    shuffleModeEnabled);
  if (oldPeriodIndex == C.INDEX_UNSET) {
   // We've reached the end of the old timeline.
   break;
  }
  newPeriodIndex = newTimeline.getIndexOfPeriod(oldTimeline.getUidOfPeriod(oldPeriodIndex));
 }
 return newPeriodIndex == C.INDEX_UNSET ? null : newTimeline.getUidOfPeriod(newPeriodIndex);
}

代码示例来源:origin: google/ExoPlayer

for (int repeatMode : REPEAT_MODES) {
 if (i < accumulatedPeriodCounts[expectedWindowIndex + 1] - 1) {
  assertThat(timeline.getNextPeriodIndex(i, period, window, repeatMode, false))
    .isEqualTo(i + 1);
 } else {
  int nextPeriod =
    nextWindow == C.INDEX_UNSET ? C.INDEX_UNSET : accumulatedPeriodCounts[nextWindow];
  assertThat(timeline.getNextPeriodIndex(i, period, window, repeatMode, false))
    .isEqualTo(nextPeriod);

代码示例来源:origin: google/ExoPlayer

while (true) {
 int nextPeriodIndex =
   timeline.getNextPeriodIndex(
     currentPeriodIndex, period, window, repeatMode, shuffleModeEnabled);
 while (lastValidPeriodHolder.next != null

代码示例来源:origin: google/ExoPlayer

timeline.getNextPeriodIndex(
  periodIndex, period, window, repeatMode, shuffleModeEnabled);

代码示例来源:origin: google/ExoPlayer

for (int repeatMode : REPEAT_MODES) {
 if (i < accumulatedPeriodCounts[expectedWindowIndex + 1] - 1) {
  assertThat(timeline.getNextPeriodIndex(i, period, window, repeatMode, false))
    .isEqualTo(i + 1);
 } else {
  int nextPeriod =
    nextWindow == C.INDEX_UNSET ? C.INDEX_UNSET : accumulatedPeriodCounts[nextWindow];
  assertThat(timeline.getNextPeriodIndex(i, period, window, repeatMode, false))
    .isEqualTo(nextPeriod);

代码示例来源:origin: google/ExoPlayer

int currentPeriodIndex = timeline.getIndexOfPeriod(mediaPeriodInfo.id.periodUid);
int nextPeriodIndex =
  timeline.getNextPeriodIndex(
    currentPeriodIndex, period, window, repeatMode, shuffleModeEnabled);
if (nextPeriodIndex == C.INDEX_UNSET) {

相关文章