当前位置: 首页>>代码示例>>Java>>正文


Java RendererCapabilities.FORMAT_SUPPORT_MASK属性代码示例

本文整理汇总了Java中com.google.android.exoplayer2.RendererCapabilities.FORMAT_SUPPORT_MASK属性的典型用法代码示例。如果您正苦于以下问题:Java RendererCapabilities.FORMAT_SUPPORT_MASK属性的具体用法?Java RendererCapabilities.FORMAT_SUPPORT_MASK怎么用?Java RendererCapabilities.FORMAT_SUPPORT_MASK使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在com.google.android.exoplayer2.RendererCapabilities的用法示例。


在下文中一共展示了RendererCapabilities.FORMAT_SUPPORT_MASK属性的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: findRenderer

/**
 * Finds the renderer to which the provided {@link TrackGroup} should be associated.
 * <p>
 * A {@link TrackGroup} is associated to a renderer that reports
 * {@link RendererCapabilities#FORMAT_HANDLED} support for one or more of the tracks in the group,
 * or {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES} if no such renderer exists, or
 * {@link RendererCapabilities#FORMAT_UNSUPPORTED_SUBTYPE} if again no such renderer exists. In
 * the case that two or more renderers report the same level of support, the renderer with the
 * lowest index is associated.
 * <p>
 * If all renderers report {@link RendererCapabilities#FORMAT_UNSUPPORTED_TYPE} for all of the
 * tracks in the group, then {@code renderers.length} is returned to indicate that no association
 * was made.
 *
 * @param rendererCapabilities The {@link RendererCapabilities} of the renderers.
 * @param group The {@link TrackGroup} whose associated renderer is to be found.
 * @return The index of the associated renderer, or {@code renderers.length} if no
 *     association was made.
 * @throws ExoPlaybackException If an error occurs finding a renderer.
 */
private static int findRenderer(RendererCapabilities[] rendererCapabilities, TrackGroup group)
    throws ExoPlaybackException {
  int bestRendererIndex = rendererCapabilities.length;
  int bestFormatSupportLevel = RendererCapabilities.FORMAT_UNSUPPORTED_TYPE;
  for (int rendererIndex = 0; rendererIndex < rendererCapabilities.length; rendererIndex++) {
    RendererCapabilities rendererCapability = rendererCapabilities[rendererIndex];
    for (int trackIndex = 0; trackIndex < group.length; trackIndex++) {
      int formatSupportLevel = rendererCapability.supportsFormat(group.getFormat(trackIndex))
          & RendererCapabilities.FORMAT_SUPPORT_MASK;
      if (formatSupportLevel > bestFormatSupportLevel) {
        bestRendererIndex = rendererIndex;
        bestFormatSupportLevel = formatSupportLevel;
        if (bestFormatSupportLevel == RendererCapabilities.FORMAT_HANDLED) {
          // We can't do better.
          return bestRendererIndex;
        }
      }
    }
  }
  return bestRendererIndex;
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:41,代码来源:MappingTrackSelector.java

示例2: getRendererSupport

/**
 * Returns the extent to which a renderer can support playback of the tracks associated to it.
 *
 * @param rendererIndex The renderer index.
 * @return One of {@link #RENDERER_SUPPORT_PLAYABLE_TRACKS},
 *     {@link #RENDERER_SUPPORT_EXCEEDS_CAPABILITIES_TRACKS},
 *     {@link #RENDERER_SUPPORT_UNSUPPORTED_TRACKS} and {@link #RENDERER_SUPPORT_NO_TRACKS}.
 */
public int getRendererSupport(int rendererIndex) {
  int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS;
  int[][] rendererFormatSupport = formatSupport[rendererIndex];
  for (int i = 0; i < rendererFormatSupport.length; i++) {
    for (int j = 0; j < rendererFormatSupport[i].length; j++) {
      int trackRendererSupport;
      switch (rendererFormatSupport[i][j] & RendererCapabilities.FORMAT_SUPPORT_MASK) {
        case RendererCapabilities.FORMAT_HANDLED:
          return RENDERER_SUPPORT_PLAYABLE_TRACKS;
        case RendererCapabilities.FORMAT_EXCEEDS_CAPABILITIES:
          trackRendererSupport = RENDERER_SUPPORT_EXCEEDS_CAPABILITIES_TRACKS;
          break;
        default:
          trackRendererSupport = RENDERER_SUPPORT_UNSUPPORTED_TRACKS;
          break;
      }
      bestRendererSupport = Math.max(bestRendererSupport, trackRendererSupport);
    }
  }
  return bestRendererSupport;
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:29,代码来源:MappingTrackSelector.java

示例3: getRendererSupport

/**
 * Returns the extent to which a renderer can play the tracks in the track groups mapped to it.
 *
 * @param rendererIndex The renderer index.
 * @return One of {@link #RENDERER_SUPPORT_PLAYABLE_TRACKS},
 *     {@link #RENDERER_SUPPORT_EXCEEDS_CAPABILITIES_TRACKS},
 *     {@link #RENDERER_SUPPORT_UNSUPPORTED_TRACKS} and {@link #RENDERER_SUPPORT_NO_TRACKS}.
 */
public int getRendererSupport(int rendererIndex) {
  int bestRendererSupport = RENDERER_SUPPORT_NO_TRACKS;
  int[][] rendererFormatSupport = formatSupport[rendererIndex];
  for (int i = 0; i < rendererFormatSupport.length; i++) {
    for (int j = 0; j < rendererFormatSupport[i].length; j++) {
      int trackRendererSupport;
      switch (rendererFormatSupport[i][j] & RendererCapabilities.FORMAT_SUPPORT_MASK) {
        case RendererCapabilities.FORMAT_HANDLED:
          return RENDERER_SUPPORT_PLAYABLE_TRACKS;
        case RendererCapabilities.FORMAT_EXCEEDS_CAPABILITIES:
          trackRendererSupport = RENDERER_SUPPORT_EXCEEDS_CAPABILITIES_TRACKS;
          break;
        default:
          trackRendererSupport = RENDERER_SUPPORT_UNSUPPORTED_TRACKS;
          break;
      }
      bestRendererSupport = Math.max(bestRendererSupport, trackRendererSupport);
    }
  }
  return bestRendererSupport;
}
 
开发者ID:y20k,项目名称:transistor,代码行数:29,代码来源:MappingTrackSelector.java

示例4: findRenderer

/**
 * Finds the renderer to which the provided {@link TrackGroup} should be mapped.
 * <p>
 * A {@link TrackGroup} is mapped to the renderer that reports the highest of (listed in
 * decreasing order of support) {@link RendererCapabilities#FORMAT_HANDLED},
 * {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES},
 * {@link RendererCapabilities#FORMAT_UNSUPPORTED_DRM} and
 * {@link RendererCapabilities#FORMAT_UNSUPPORTED_SUBTYPE}. In the case that two or more renderers
 * report the same level of support, the renderer with the lowest index is associated.
 * <p>
 * If all renderers report {@link RendererCapabilities#FORMAT_UNSUPPORTED_TYPE} for all of the
 * tracks in the group, then {@code renderers.length} is returned to indicate that the group was
 * not mapped to any renderer.
 *
 * @param rendererCapabilities The {@link RendererCapabilities} of the renderers.
 * @param group The track group to map to a renderer.
 * @return The index of the renderer to which the track group was mapped, or
 *     {@code renderers.length} if it was not mapped to any renderer.
 * @throws ExoPlaybackException If an error occurs finding a renderer.
 */
private static int findRenderer(RendererCapabilities[] rendererCapabilities, TrackGroup group)
    throws ExoPlaybackException {
  int bestRendererIndex = rendererCapabilities.length;
  int bestFormatSupportLevel = RendererCapabilities.FORMAT_UNSUPPORTED_TYPE;
  for (int rendererIndex = 0; rendererIndex < rendererCapabilities.length; rendererIndex++) {
    RendererCapabilities rendererCapability = rendererCapabilities[rendererIndex];
    for (int trackIndex = 0; trackIndex < group.length; trackIndex++) {
      int formatSupportLevel = rendererCapability.supportsFormat(group.getFormat(trackIndex))
          & RendererCapabilities.FORMAT_SUPPORT_MASK;
      if (formatSupportLevel > bestFormatSupportLevel) {
        bestRendererIndex = rendererIndex;
        bestFormatSupportLevel = formatSupportLevel;
        if (bestFormatSupportLevel == RendererCapabilities.FORMAT_HANDLED) {
          // We can't do better.
          return bestRendererIndex;
        }
      }
    }
  }
  return bestRendererIndex;
}
 
开发者ID:y20k,项目名称:transistor,代码行数:41,代码来源:MappingTrackSelector.java

示例5: getRendererSupport

/**
 * Returns the extent to which a renderer can support playback of the tracks associated to it.
 *
 * @param rendererIndex The renderer index.
 * @return One of {@link #RENDERER_SUPPORT_PLAYABLE_TRACKS},
 *     {@link #RENDERER_SUPPORT_UNPLAYABLE_TRACKS} and {@link #RENDERER_SUPPORT_NO_TRACKS}.
 */
public int getRendererSupport(int rendererIndex) {
  boolean hasTracks = false;
  int[][] rendererFormatSupport = formatSupport[rendererIndex];
  for (int i = 0; i < rendererFormatSupport.length; i++) {
    for (int j = 0; j < rendererFormatSupport[i].length; j++) {
      hasTracks = true;
      if ((rendererFormatSupport[i][j] & RendererCapabilities.FORMAT_SUPPORT_MASK)
          == RendererCapabilities.FORMAT_HANDLED) {
        return RENDERER_SUPPORT_PLAYABLE_TRACKS;
      }
    }
  }
  return hasTracks ? RENDERER_SUPPORT_UNPLAYABLE_TRACKS : RENDERER_SUPPORT_NO_TRACKS;
}
 
开发者ID:zhanglibin123488,项目名称:videoPickPlayer,代码行数:21,代码来源:MappingTrackSelector.java

示例6: isFormatHandled

private static boolean isFormatHandled(int formatSupport) {
  return (formatSupport & RendererCapabilities.FORMAT_SUPPORT_MASK)
      == RendererCapabilities.FORMAT_HANDLED;
}
 
开发者ID:ashwanijanghu,项目名称:ExoPlayer-Offline,代码行数:4,代码来源:DashTest.java

示例7: isSupported

protected static boolean isSupported(int formatSupport, boolean allowExceedsCapabilities) {
  int maskedSupport = formatSupport & RendererCapabilities.FORMAT_SUPPORT_MASK;
  return maskedSupport == RendererCapabilities.FORMAT_HANDLED || (allowExceedsCapabilities
      && maskedSupport == RendererCapabilities.FORMAT_EXCEEDS_CAPABILITIES);
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:5,代码来源:DefaultTrackSelector.java

示例8: isSupported

private static boolean isSupported(int formatSupport) {
  return (formatSupport & RendererCapabilities.FORMAT_SUPPORT_MASK)
      == RendererCapabilities.FORMAT_HANDLED;
}
 
开发者ID:zhanglibin123488,项目名称:videoPickPlayer,代码行数:4,代码来源:DefaultTrackSelector.java

示例9: getTrackFormatSupport

/**
 * Returns the extent to which the format of an individual track is supported by the renderer.
 *
 * @param rendererIndex The renderer index.
 * @param groupIndex The index of the group to which the track belongs.
 * @param trackIndex The index of the track within the group.
 * @return One of {@link RendererCapabilities#FORMAT_HANDLED},
 *     {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES},
 *     {@link RendererCapabilities#FORMAT_UNSUPPORTED_SUBTYPE} and
 *     {@link RendererCapabilities#FORMAT_UNSUPPORTED_TYPE}.
 */
public int getTrackFormatSupport(int rendererIndex, int groupIndex, int trackIndex) {
  return formatSupport[rendererIndex][groupIndex][trackIndex]
      & RendererCapabilities.FORMAT_SUPPORT_MASK;
}
 
开发者ID:sanjaysingh1990,项目名称:Exoplayer2Radio,代码行数:15,代码来源:MappingTrackSelector.java

示例10: isSupported

/**
 * Applies the {@link RendererCapabilities#FORMAT_SUPPORT_MASK} to a value obtained from
 * {@link RendererCapabilities#supportsFormat(Format)}, returning true if the result is
 * {@link RendererCapabilities#FORMAT_HANDLED} or if {@code allowExceedsCapabilities} is set
 * and the result is {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES}.
 *
 * @param formatSupport A value obtained from {@link RendererCapabilities#supportsFormat(Format)}.
 * @param allowExceedsCapabilities Whether to return true if the format support component of the
 *     value is {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES}.
 * @return True if the format support component is {@link RendererCapabilities#FORMAT_HANDLED}, or
 *     if {@code allowExceedsCapabilities} is set and the format support component is
 *     {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES}.
 */
protected static boolean isSupported(int formatSupport, boolean allowExceedsCapabilities) {
  int maskedSupport = formatSupport & RendererCapabilities.FORMAT_SUPPORT_MASK;
  return maskedSupport == RendererCapabilities.FORMAT_HANDLED || (allowExceedsCapabilities
      && maskedSupport == RendererCapabilities.FORMAT_EXCEEDS_CAPABILITIES);
}
 
开发者ID:y20k,项目名称:transistor,代码行数:18,代码来源:DefaultTrackSelector.java

示例11: getTrackFormatSupport

/**
 * Returns the extent to which an individual track is supported by the renderer.
 *
 * @param rendererIndex The renderer index.
 * @param groupIndex The index of the track group to which the track belongs.
 * @param trackIndex The index of the track within the track group.
 * @return One of {@link RendererCapabilities#FORMAT_HANDLED},
 *     {@link RendererCapabilities#FORMAT_EXCEEDS_CAPABILITIES},
 *     {@link RendererCapabilities#FORMAT_UNSUPPORTED_DRM},
 *     {@link RendererCapabilities#FORMAT_UNSUPPORTED_SUBTYPE} and
 *     {@link RendererCapabilities#FORMAT_UNSUPPORTED_TYPE}.
 */
public int getTrackFormatSupport(int rendererIndex, int groupIndex, int trackIndex) {
  return formatSupport[rendererIndex][groupIndex][trackIndex]
      & RendererCapabilities.FORMAT_SUPPORT_MASK;
}
 
开发者ID:y20k,项目名称:transistor,代码行数:16,代码来源:MappingTrackSelector.java


注:本文中的com.google.android.exoplayer2.RendererCapabilities.FORMAT_SUPPORT_MASK属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。