android.media.MediaPlayer#MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK源码实例Demo

下面列出了android.media.MediaPlayer#MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: react-native-audio-streaming   文件: Signal.java
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
    switch (what) {
        case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
            //Log.v("ERROR", "MEDIA ERROR NOT VALID FOR PROGRESSIVE PLAYBACK "	+ extra);
            break;
        case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
            //Log.v("ERROR", "MEDIA ERROR SERVER DIED " + extra);
            break;
        case MediaPlayer.MEDIA_ERROR_UNKNOWN:
            //Log.v("ERROR", "MEDIA ERROR UNKNOWN " + extra);
            break;
    }
    sendBroadcast(new Intent(Mode.ERROR));
    return false;
}
 
源代码2 项目: CodenameOne   文件: AudioService.java
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
    MediaErrorEvent evt = fireMediaError(AndroidImplementation.createMediaException(extra));
    fireMediaStateChange(State.Playing);
    fireMediaStateChange(State.Paused);
    if (!evt.isConsumed()) {
        switch (what) {
            case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
                Toast.makeText(AudioService.this,
                        "MEDIA ERROR NOT VALID FOR PROGRESSIVE PLAYBACK " + extra,
                        Toast.LENGTH_SHORT).show();
                break;
            case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
                Toast.makeText(AudioService.this, "MEDIA ERROR SERVER DIED " + extra,
                        Toast.LENGTH_SHORT).show();
                break;
            case MediaPlayer.MEDIA_ERROR_UNKNOWN:
                Toast.makeText(AudioService.this, "MEDIA ERROR UNKNOWN " + extra,
                        Toast.LENGTH_SHORT).show();
                break;
        }
    }
    return false;
}
 
源代码3 项目: ParsingPlayer   文件: ParsingPlayerProxy.java
private String errToStr(int framework_err, int impl_err) {
    String msg = null;
    if (framework_err == MediaPlayer.MEDIA_ERROR_IO) {
        msg = "IO Error";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_MALFORMED) {
        msg = "Bitstream unsupported";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
        msg = "Invalid progressive playback";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_TIMED_OUT) {
        msg = "Operation time out";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_SERVER_DIED) {
        msg = "MediaPlayer died";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_UNSUPPORTED) {
        msg = "File spec is not supported in the media framework";
    } else if (framework_err == MediaPlayer.MEDIA_ERROR_UNKNOWN) {
        msg = "Unknown error";
    }
    return msg;
}
 
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
	switch (what) {
	case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
		//Log.v("ERROR", "MEDIA ERROR NOT VALID FOR PROGRESSIVE PLAYBACK "	+ extra);
		break;
	case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
		//Log.v("ERROR", "MEDIA ERROR SERVER DIED " + extra);
		break;
	case MediaPlayer.MEDIA_ERROR_UNKNOWN:
		//Log.v("ERROR", "MEDIA ERROR UNKNOWN " + extra);
		break;
	}
   sendBroadcast(new Intent(Mode.ERROR));
	return false;
}
 
源代码5 项目: example   文件: StreamService.java
@Override
public boolean onError(MediaPlayer mediaPlayer, int what, int extra) {
    switch (what) {
        case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
            Toast.makeText(this, "Error not valid playback", Toast.LENGTH_SHORT).show();
            break;
        case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
            Toast.makeText(this, "Error server died", Toast.LENGTH_SHORT).show();
            break;
        case MediaPlayer.MEDIA_ERROR_UNKNOWN:
            Toast.makeText(this, "Error unknown", Toast.LENGTH_SHORT).show();
            break;
    }
    return false;
}
 
源代码6 项目: SimpleVideoEditor   文件: SimpleVideoPlayer.java
@Override
public boolean onError(MediaPlayer mediaPlayer, int what, int extra) {
    removeView(mTextureView);
    // 播放错误,屏幕不要保持常亮
    setKeepScreenOn(false);
    if (what == -38) {
        // fuck samsung: Error code -38 happens on some Samsung devices
        // Just ignore it
        return false;
    }
    String errorMsg = "Preparation/playback error (" + what + "), extra: " + extra;
    switch (what) {
        default:
            errorMsg += "Unknown error";
            break;
        case MediaPlayer.MEDIA_ERROR_IO:
            errorMsg += "I/O error";
            break;
        case MediaPlayer.MEDIA_ERROR_MALFORMED:
            errorMsg += "Malformed";
            break;
        case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
            errorMsg += "Not valid for progressive playback";
            break;
        case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
            errorMsg += "Server died";
            break;
        case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
            errorMsg += "Timed out";
            break;
        case MediaPlayer.MEDIA_ERROR_UNSUPPORTED:
            errorMsg += "Unsupported";
            break;
    }
    log("on error: " + errorMsg);
    throwError(new Exception(errorMsg));
    return false;
}
 
源代码7 项目: android-chromium   文件: MediaPlayerListener.java
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
    int errorType;
    switch (what) {
        case MediaPlayer.MEDIA_ERROR_UNKNOWN:
            switch (extra) {
                case MEDIA_ERROR_MALFORMED:
                    errorType = MEDIA_ERROR_DECODE;
                    break;
                case MEDIA_ERROR_TIMED_OUT:
                    errorType = MEDIA_ERROR_INVALID_CODE;
                    break;
                default:
                    errorType = MEDIA_ERROR_FORMAT;
                    break;
            }
            break;
        case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
            errorType = MEDIA_ERROR_DECODE;
            break;
        case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
            errorType = MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK;
            break;
        default:
            // There are some undocumented error codes for android media player.
            // For example, when surfaceTexture got deleted before we setVideoSuface
            // to NULL, mediaplayer will report error -38. These errors should be ignored
            // and not be treated as an error to webkit.
            errorType = MEDIA_ERROR_INVALID_CODE;
            break;
    }
    nativeOnMediaError(mNativeMediaPlayerListener, errorType);
    return true;
}
 
源代码8 项目: texturevideoview   文件: TextureVideoView.java
public boolean onError(MediaPlayer mp, int framework_err, int impl_err) {
        Log.d(TAG, "Error: " + framework_err + "," + impl_err);
        mCurrentState = STATE_ERROR;
        mTargetState = STATE_ERROR;
        if (mMediaController != null) {
            mMediaController.hide();
        }

/* If an error handler has been supplied, use it and finish. */
        if (mOnErrorListener != null) {
            if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
                return true;
            }
        }

/* Otherwise, pop up an error dialog so the user knows that
 * something bad has happened. Only try and pop up the dialog
 * if we're attached to a window. When we're going away and no
 * longer have a window, don't bother showing the user an error.
 */
        if (getWindowToken() != null) {
            Resources r = getContext().getResources();
            int messageId;

            if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
                messageId = android.R.string.VideoView_error_text_invalid_progressive_playback;
            } else {
                messageId = android.R.string.VideoView_error_text_unknown;
            }

            new AlertDialog.Builder(getContext())
                    .setMessage(messageId)
                    .setPositiveButton(android.R.string.VideoView_error_button,
                            new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                    if (mOnCompletionListener != null) {
                                        mOnCompletionListener.onCompletion(mMediaPlayer);
                                    }
                                }
                            })
                    .setCancelable(false)
                    .show();
        }
        return true;
    }
 
源代码9 项目: GiraffePlayer   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        String message="Unknown error";

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            message="Invalid progressive playback";
        }

        new AlertDialog.Builder(getContext())
                .setMessage(message)
                .setPositiveButton("error",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码10 项目: VRPlayer   文件: PlayerView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        int messageId;

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
        } else {
            messageId = R.string.VideoView_error_text_unknown;
        }

        new AlertDialog.Builder(getContext())
                .setMessage(messageId)
                .setPositiveButton(R.string.VideoView_error_button,
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码11 项目: ShareBox   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        int messageId;

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
        } else {
            messageId = R.string.VideoView_error_text_unknown;
        }

        new AlertDialog.Builder(getContext())
                .setMessage(messageId)
                .setPositiveButton(R.string.VideoView_error_button,
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码12 项目: WliveTV   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
                    //Log.d(TAG, "Error: " + framework_err + "," + impl_err);
                    mCurrentState = STATE_ERROR;
                    mTargetState = STATE_ERROR;
                    if (mMediaController != null) {
                        mMediaController.hide();
                    }

                    /* If an error handler has been supplied, use it and finish. */
                    if (mOnErrorListener != null) {
                        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
                            return true;
                        }
                    }

                    /* Otherwise, pop up an error dialog so the user knows that
                     * something bad has happened. Only try and pop up the dialog
                     * if we're attached to a window. When we're going away and no
                     * longer have a window, don't bother showing the user an error.
                     */
                    if (getWindowToken() != null) {
                        Resources r = mAppContext.getResources();
                        int messageId;

                        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
                            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
                        } else {
                            messageId = R.string.VideoView_error_text_unknown;
                        }

//                        new AlertDialog.Builder(getContext())
//                                .setMessage(messageId)
//                                .setPositiveButton(R.string.VideoView_error_button,
//                                        new DialogInterface.OnClickListener() {
//                                            public void onClick(DialogInterface dialog, int whichButton) {
//                                            /* If we get here, there is no onError listener, so
//                                             * at least inform them that the video is over.
//                                             */
//                                                if (mOnCompletionListener != null) {
//                                                    mOnCompletionListener.onCompletion(mMediaPlayer);
//                                                }
//                                            }
//                                        })
//                                .setCancelable(false)
//                                .show();
                    }
                    return true;
                }
 
源代码13 项目: MKVideoPlayer   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        String message="Unknown error";

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            message="Invalid progressive playback";
        }

        new AlertDialog.Builder(getContext())
                .setMessage(message)
                .setPositiveButton("error",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码14 项目: TvPlayer   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
                    //Log.d(TAG, "Error: " + framework_err + "," + impl_err);
                    mCurrentState = STATE_ERROR;
                    mTargetState = STATE_ERROR;
                    if (mMediaController != null) {
                        mMediaController.hide();
                    }

                    /* If an error handler has been supplied, use it and finish. */
                    if (mOnErrorListener != null) {
                        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
                            return true;
                        }
                    }

                    /* Otherwise, pop up an error dialog so the user knows that
                     * something bad has happened. Only try and pop up the dialog
                     * if we're attached to a window. When we're going away and no
                     * longer have a window, don't bother showing the user an error.
                     */
                    if (getWindowToken() != null) {
                        Resources r = mAppContext.getResources();
                        int messageId;

                        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
                            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
                        } else {
                            messageId = R.string.VideoView_error_text_unknown;
                        }

//                        new AlertDialog.Builder(getContext())
//                                .setMessage(messageId)
//                                .setPositiveButton(R.string.VideoView_error_button,
//                                        new DialogInterface.OnClickListener() {
//                                            public void onClick(DialogInterface dialog, int whichButton) {
//                                            /* If we get here, there is no onError listener, so
//                                             * at least inform them that the video is over.
//                                             */
//                                                if (mOnCompletionListener != null) {
//                                                    mOnCompletionListener.onCompletion(mMediaPlayer);
//                                                }
//                                            }
//                                        })
//                                .setCancelable(false)
//                                .show();
                    }
                    return true;
                }
 
源代码15 项目: HeroVideo-master   文件: MediaPlayerView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        String message="Unknown error";

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            message="Invalid progressive playback";
        }

        new AlertDialog.Builder(getContext())
                .setMessage(message)
                .setPositiveButton("error",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码16 项目: LivePlayback   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
                    //Log.d(TAG, "Error: " + framework_err + "," + impl_err);
                    mCurrentState = STATE_ERROR;
                    mTargetState = STATE_ERROR;
                    if (mMediaController != null) {
                        mMediaController.hide();
                    }

                    /* If an error handler has been supplied, use it and finish. */
                    if (mOnErrorListener != null) {
                        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
                            return true;
                        }
                    }

                    /* Otherwise, pop up an error dialog so the user knows that
                     * something bad has happened. Only try and pop up the dialog
                     * if we're attached to a window. When we're going away and no
                     * longer have a window, don't bother showing the user an error.
                     */
                    if (getWindowToken() != null) {
                        Resources r = mAppContext.getResources();
                        int messageId;

                        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
                            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
                        } else {
                            messageId = R.string.VideoView_error_text_unknown;
                        }

//                        new AlertDialog.Builder(getContext())
//                                .setMessage(messageId)
//                                .setPositiveButton(R.string.VideoView_error_button,
//                                        new DialogInterface.OnClickListener() {
//                                            public void onClick(DialogInterface dialog, int whichButton) {
//                                            /* If we get here, there is no onError listener, so
//                                             * at least inform them that the video is over.
//                                             */
//                                                if (mOnCompletionListener != null) {
//                                                    mOnCompletionListener.onCompletion(mMediaPlayer);
//                                                }
//                                            }
//                                        })
//                                .setCancelable(false)
//                                .show();
                    }
                    return true;
                }
 
源代码17 项目: no-player   文件: ErrorFactory.java
@SuppressWarnings({"PMD.StdCyclomaticComplexity", "PMD.CyclomaticComplexity"})
public static NoPlayer.PlayerError createErrorFrom(int type, int extra) {
    String message = String.valueOf(extra);
    switch (type) {
        case MediaPlayer.MEDIA_ERROR_IO:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_IO, message);
        case MediaPlayer.MEDIA_ERROR_MALFORMED:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_MALFORMED, message);
        case MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK, message);
        case MediaPlayer.MEDIA_INFO_NOT_SEEKABLE:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_INFO_NOT_SEEKABLE, message);
        case MediaPlayer.MEDIA_INFO_SUBTITLE_TIMED_OUT:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_SUBTITLE_TIMED_OUT, message);
        case MediaPlayer.MEDIA_INFO_UNSUPPORTED_SUBTITLE:
            return new NoPlayerError(PlayerErrorType.SOURCE, DetailErrorType.MEDIA_PLAYER_UNSUPPORTED_SUBTITLE, message);

        case MediaPlayer.MEDIA_ERROR_SERVER_DIED:
            return new NoPlayerError(PlayerErrorType.DRM, DetailErrorType.MEDIA_PLAYER_SERVER_DIED, message);
        case MediaPlayer.PREPARE_DRM_STATUS_PREPARATION_ERROR:
            return new NoPlayerError(PlayerErrorType.DRM, DetailErrorType.MEDIA_PLAYER_PREPARE_DRM_STATUS_PREPARATION_ERROR, message);
        case MediaPlayer.PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR:
            return new NoPlayerError(PlayerErrorType.DRM, DetailErrorType.MEDIA_PLAYER_PREPARE_DRM_STATUS_PROVISIONING_NETWORK_ERROR, message);
        case MediaPlayer.PREPARE_DRM_STATUS_PROVISIONING_SERVER_ERROR:
            return new NoPlayerError(PlayerErrorType.DRM, DetailErrorType.MEDIA_PLAYER_PREPARE_DRM_STATUS_PROVISIONING_SERVER_ERROR, message);

        case MediaPlayer.MEDIA_ERROR_TIMED_OUT:
            return new NoPlayerError(PlayerErrorType.CONNECTIVITY, DetailErrorType.MEDIA_PLAYER_TIMED_OUT, message);

        case MediaPlayer.MEDIA_INFO_AUDIO_NOT_PLAYING:
            return new NoPlayerError(PlayerErrorType.RENDERER_DECODER, DetailErrorType.MEDIA_PLAYER_INFO_AUDIO_NOT_PLAYING, message);
        case MediaPlayer.MEDIA_INFO_BAD_INTERLEAVING:
            return new NoPlayerError(PlayerErrorType.RENDERER_DECODER, DetailErrorType.MEDIA_PLAYER_BAD_INTERLEAVING, message);
        case MediaPlayer.MEDIA_INFO_VIDEO_NOT_PLAYING:
            return new NoPlayerError(PlayerErrorType.RENDERER_DECODER, DetailErrorType.MEDIA_PLAYER_INFO_VIDEO_NOT_PLAYING, message);
        case MediaPlayer.MEDIA_INFO_VIDEO_TRACK_LAGGING:
            return new NoPlayerError(PlayerErrorType.RENDERER_DECODER, DetailErrorType.MEDIA_PLAYER_INFO_VIDEO_TRACK_LAGGING, message);
        default:
            return new NoPlayerError(PlayerErrorType.UNKNOWN, DetailErrorType.MEDIA_PLAYER_UNKNOWN, message);

    }
}
 
源代码18 项目: MD   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        int messageId;

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
        } else {
            messageId = R.string.VideoView_error_text_unknown;
        }

        new AlertDialog.Builder(getContext())
                .setMessage(messageId)
                .setPositiveButton(R.string.VideoView_error_button,
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码19 项目: ZZShow   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        int messageId;

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            messageId = R.string.VideoView_error_text_invalid_progressive_playback;
        } else {
            messageId = R.string.VideoView_error_text_unknown;
        }

        new AlertDialog.Builder(getContext())
                .setMessage(messageId)
                .setPositiveButton(R.string.VideoView_error_button,
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}
 
源代码20 项目: IjkPlayerDemo   文件: IjkVideoView.java
public boolean onError(IMediaPlayer mp, int framework_err, int impl_err) {
    Log.d(TAG, "Error: " + framework_err + "," + impl_err);
    mCurrentState = STATE_ERROR;
    mTargetState = STATE_ERROR;
    if (mMediaController != null) {
        mMediaController.hide();
    }

    /* If an error handler has been supplied, use it and finish. */
    if (mOnErrorListener != null) {
        if (mOnErrorListener.onError(mMediaPlayer, framework_err, impl_err)) {
            return true;
        }
    }

    /* Otherwise, pop up an error dialog so the user knows that
     * something bad has happened. Only try and pop up the dialog
     * if we're attached to a window. When we're going away and no
     * longer have a window, don't bother showing the user an error.
     */
    if (getWindowToken() != null) {
        Resources r = mAppContext.getResources();
        String message="Unknown error";

        if (framework_err == MediaPlayer.MEDIA_ERROR_NOT_VALID_FOR_PROGRESSIVE_PLAYBACK) {
            message="Invalid progressive playback";
        }

        new AlertDialog.Builder(getContext())
                .setMessage(message)
                .setPositiveButton("error",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int whichButton) {
                            /* If we get here, there is no onError listener, so
                             * at least inform them that the video is over.
                             */
                                if (mOnCompletionListener != null) {
                                    mOnCompletionListener.onCompletion(mMediaPlayer);
                                }
                            }
                        })
                .setCancelable(false)
                .show();
    }
    return true;
}