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


Java ExoPlaybackException.TYPE_RENDERER屬性代碼示例

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


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

示例1: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException error) {
	int errorMessageResourceId = R.string.error_stream_unknown;

	switch (error.type) {
		case ExoPlaybackException.TYPE_SOURCE:
			Timber.e(error,"exo player error TYPE_SOURCE");
			errorMessageResourceId = R.string.error_stream_io;
			break;
		case ExoPlaybackException.TYPE_RENDERER:
			Timber.e(error,"exo player error TYPE_RENDERER");
			errorMessageResourceId = R.string.error_stream_unsupported;
			break;
		case ExoPlaybackException.TYPE_UNEXPECTED:
			Timber.e(error,"exo player error TYPE_UNEXPECTED");
			break;
	}

	listener.onVideoError(errorMessageResourceId);
}
 
開發者ID:cemrich,項目名稱:zapp,代碼行數:20,代碼來源:VideoErrorHandler.java

示例2: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException error)
{
    final String what;
    switch (error.type) {
        case ExoPlaybackException.TYPE_SOURCE:
            what = error.getSourceException().getMessage();
            break;
        case ExoPlaybackException.TYPE_RENDERER:
            what = error.getRendererException().getMessage();
            break;
        case ExoPlaybackException.TYPE_UNEXPECTED:
            what = error.getUnexpectedException().getMessage();
            break;
        default:
            what = "Unknown: " + error;
    }

    LogHelper.e(TAG, "ExoPlayer error: what=" + what);
    if (callback != null) {
        callback.onError("ExoPlayer error " + what);
    }
}
 
開發者ID:teocci,項目名稱:YouTube-In-Background,代碼行數:23,代碼來源:LocalPlayback.java

示例3: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException e) {
    String errorString = null;
    if (e.type == ExoPlaybackException.TYPE_RENDERER) {
        Exception cause = e.getRendererException();
        if (cause instanceof MediaCodecRenderer.DecoderInitializationException) {
            // Special case for decoder initialization failures.
            MediaCodecRenderer.DecoderInitializationException decoderInitializationException =
                    (MediaCodecRenderer.DecoderInitializationException) cause;
            if (decoderInitializationException.decoderName == null) {
                if (decoderInitializationException.getCause() instanceof MediaCodecUtil.DecoderQueryException) {
                    errorString = getResources().getString(R.string.error_querying_decoders);
                } else if (decoderInitializationException.secureDecoderRequired) {
                    errorString = getResources().getString(R.string.error_no_secure_decoder,
                            decoderInitializationException.mimeType);
                } else {
                    errorString = getResources().getString(R.string.error_no_decoder,
                            decoderInitializationException.mimeType);
                }
            } else {
                errorString = getResources().getString(R.string.error_instantiating_decoder,
                        decoderInitializationException.decoderName);
            }
        }
    }
    if (errorString != null) {
        eventEmitter.error(errorString, e);
    }
    playerNeedsSource = true;
}
 
開發者ID:12d,項目名稱:react-native-videoplayer,代碼行數:30,代碼來源:ReactExoplayerView.java

示例4: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException e) {
    String errorString = null;
    if (e.type == ExoPlaybackException.TYPE_RENDERER) {
        Exception cause = e.getRendererException();
        if (cause instanceof DecoderInitializationException) {
            // Special case for decoder initialization failures.
            DecoderInitializationException decoderInitializationException =
                    (DecoderInitializationException) cause;
            if (decoderInitializationException.decoderName == null) {
                if (decoderInitializationException.getCause() instanceof DecoderQueryException) {
                    errorString = getString(R.string.error_querying_decoders);
                } else if (decoderInitializationException.secureDecoderRequired) {
                    errorString = getString(R.string.error_no_secure_decoder,
                            decoderInitializationException.mimeType);
                } else {
                    errorString = getString(R.string.error_no_decoder,
                            decoderInitializationException.mimeType);
                }
            } else {
                errorString = getString(R.string.error_instantiating_decoder,
                        decoderInitializationException.decoderName);
            }
        }
    }
    if (errorString != null) {
        showToast(errorString);
    }
    playerNeedsSource = true;
    if (isBehindLiveWindow(e)) {
        clearResumePosition();
        initializePlayer();
    } else {
        updateResumePosition();
        updateButtonVisibilities();
        showControls();
    }
}
 
開發者ID:ashwanijanghu,項目名稱:ExoPlayer-Offline,代碼行數:38,代碼來源:PlayerActivity.java

示例5: onPlayerError

/**
 * Called when an error occurs. The playback state will transition to {@link ExoPlayer#STATE_IDLE}
 * immediately after this method is called. The player instance can still be used, and
 * {@link #release()} must still be called on the player should it no longer be required.
 *
 * @param e The error.
 */
@Override
public void onPlayerError(ExoPlaybackException e) {
    MediaError error = null;
    if (e == null) {
        error = new MediaError(MediaError.ERROR_UNKNOWN);
    } else {
        if (e.type == ExoPlaybackException.TYPE_RENDERER) {
            Exception cause = e.getRendererException();
            if (cause instanceof MediaCodecRenderer.DecoderInitializationException) {
                // Special case for decoder initialization failures.
                MediaCodecRenderer.DecoderInitializationException decoderInitializationException =
                        (MediaCodecRenderer.DecoderInitializationException) cause;
                if (decoderInitializationException.decoderName == null) {
                    if (decoderInitializationException.getCause() instanceof MediaCodecUtil.DecoderQueryException) {
                        error = new MediaError(MediaError.EXO_ERROR_QUERYING_DECODERS);
                    } else if (decoderInitializationException.secureDecoderRequired) {
                        error = new MediaError(MediaError.EXO_ERROR_NO_SECURE_DECODER);
                    } else {
                        error = new MediaError(MediaError.EXO_ERROR_NO_DECODER);
                    }
                } else {
                    error = new MediaError(MediaError.EXO_ERROR_INSTANTIATING_DECODER);
                }
            }
        }
    }

    if (error == null) {
        error = new MediaError(MediaError.ERROR_UNKNOWN);
    }
    notifyOnError(error);
    PlayerLog.d(TAG, "onPlayerError   " + error.toString());
}
 
開發者ID:xinpianchang,項目名稱:NSMPlayer-Android,代碼行數:40,代碼來源:WrapExoPlayer.java

示例6: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException e) {
    String errorString = null;
    if (e.type == ExoPlaybackException.TYPE_RENDERER) {
        Exception cause = e.getRendererException();
        if (cause instanceof MediaCodecRenderer.DecoderInitializationException) {
            // Special case for decoder initialization failures.
            MediaCodecRenderer.DecoderInitializationException decoderInitializationException =
                    (MediaCodecRenderer.DecoderInitializationException) cause;
            if (decoderInitializationException.decoderName == null) {
                if (decoderInitializationException.getCause() instanceof MediaCodecUtil.DecoderQueryException) {
                    errorString = context.getString(R.string.error_querying_decoders);
                } else if (decoderInitializationException.secureDecoderRequired) {
                    errorString = context.getString(R.string.error_no_secure_decoder,
                            decoderInitializationException.mimeType);
                } else {
                    errorString = context.getString(R.string.error_no_decoder,
                            decoderInitializationException.mimeType);
                }
            } else {
                errorString = context.getString(R.string.error_instantiating_decoder,
                        decoderInitializationException.decoderName);
            }
        }
    }
    if (errorString != null) {
        showToast(errorString);
    }
    if (isBehindLiveWindow(e)) {
        clearResumePosition();
        initializePlayer();
    } else {
        updateResumePosition();

    }
}
 
開發者ID:riggaroo,項目名稱:android-arch-components-lifecycle,代碼行數:36,代碼來源:VideoPlayerComponent.java

示例7: onPlayerError

@Override
    public void onPlayerError(ExoPlaybackException e) {
        String errorString = null;
        if (e.type == ExoPlaybackException.TYPE_RENDERER) {
            Exception cause = e.getRendererException();
            if (cause instanceof DecoderInitializationException) {
                // Special case for decoder initialization failures.
                DecoderInitializationException decoderInitializationException = (DecoderInitializationException) cause;
                if (decoderInitializationException.decoderName == null) {
                    if (decoderInitializationException.getCause() instanceof DecoderQueryException) {
                        errorString = getString(R.string.error_querying_decoders);
                    } else if (decoderInitializationException.secureDecoderRequired) {
                        errorString = getString(R.string.error_no_secure_decoder,
                                decoderInitializationException.mimeType);
                    } else {
                        errorString = getString(R.string.error_no_decoder,
                                decoderInitializationException.mimeType);
                    }
                } else {
                    errorString = getString(R.string.error_instantiating_decoder,
                            decoderInitializationException.decoderName);
                }
            }
        }
        if (errorString != null) {
            showToast(errorString);
        }
        playerNeedsSource = true;
//        updateButtonVisibilities();
//        showControls();
    }
 
開發者ID:AndroidTips,項目名稱:MDVideo,代碼行數:31,代碼來源:PlayerActivityV2.java

示例8: onPlayerError

@Override
public void onPlayerError(ExoPlaybackException e) {
  String errorString = null;
  if (e.type == ExoPlaybackException.TYPE_RENDERER) {
    Exception cause = e.getRendererException();
    if (cause instanceof DecoderInitializationException) {
      // Special case for decoder initialization failures.
      DecoderInitializationException decoderInitializationException =
          (DecoderInitializationException) cause;
      if (decoderInitializationException.decoderName == null) {
        if (decoderInitializationException.getCause() instanceof DecoderQueryException) {
          errorString = getString(R.string.error_querying_decoders);
        } else if (decoderInitializationException.secureDecoderRequired) {
          errorString = getString(R.string.error_no_secure_decoder,
              decoderInitializationException.mimeType);
        } else {
          errorString = getString(R.string.error_no_decoder,
              decoderInitializationException.mimeType);
        }
      } else {
        errorString = getString(R.string.error_instantiating_decoder,
            decoderInitializationException.decoderName);
      }
    }
  }
  if (errorString != null) {
    showToast(errorString);
  }
  playerNeedsSource = true;
  updateButtonVisibilities();
  showControls();
}
 
開發者ID:TakumaMochizuki,項目名稱:Komica,代碼行數:32,代碼來源:PlayerActivity.java


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