【问题标题】:How to solve MediaPlayer Error "Can't play this video"如何解决 MediaPlayer 错误“无法播放此视频”
【发布时间】:2018-03-08 18:38:47
【问题描述】:

我的视频视图有问题。

当我尝试在我的 API-27 模拟器上播放来自特定 URL 的视频时,Android 会显示消息对话框

无法播放此视频

这就是我在 Logcat 中得到的

源返回错误 -1010,还剩 0 次重试

initFromDataSource,源没有踪迹!

从数据源初始化失败!

MediaPlayerNative:错误(1,-2147483648)

MediaPlayer:错误 (1,-2147483648)


这是我使用视频视图的代码
mVideoView = findViewById(R.id.videoView);
        mMediaController = new MediaController(this);
        mVideoView.setVideoPath("https://clips.vorwaerts-gmbh.de/VfE_html5.mp4");
        mVideoView.requestFocus();
        initListeners();

initListeners 方法

mVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                mVideoView.setMediaController(mMediaController);
                mVideoView.setBackground(null);
                mMediaController.setAnchorView(mVideoView);
                mMediaController.show();
                mVideoView.start();
            }
        });
        mVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mp) {
mVideoView.setBackground(getDrawable(R.drawable.webinar_photo_preview));
            }
        });

我在 api23、api24 测试了我的 videoview 功能,一切听起来都不错。 谁能告诉我我做错了什么?

已编辑:现在发现错误也出现在api24上

【问题讨论】:

  • at api23, api24 也在模拟器上吗?
  • @VladyslavMatviienko 是的,我指的是 api23、api24 模拟器

标签: java android android-layout android-mediaplayer


【解决方案1】:

问题出在 VideoView 中,setVideoPath 仅设置文件大小很小 (1 - 2 MB) 的视频,如果文件大小较大,则 MediaPlayer 崩溃并出现 MEDIA_ERROR_SYSTEM (-2147483648) - (低级系统错误),read in documentation 。这就是我开始使用 exoPlayer 的原因。

【讨论】:

    【解决方案2】:

    看起来您的代码工作正常,问题可能是您没有使用在请求时发送到浏览器的 cookie。

    简单来说,此视频不能通过代码直接访问。

    如果您仍想尝试以下步骤。

    1. 发出 http 请求以链接 (https://clips.vorwaerts-gmbh.de/VfE_html5.mp4) 并存储收到的 cookie。
    2. 当您想播放视频时,将收到的 cookie 用于您的下一个请求。

    注意 - 如果您想使用 cookie 播放视频,可以通过 ExoPlayer(https://github.com/google/ExoPlayer) 完成。

    【讨论】:

    • 嗯...我不这么认为。
    • 问题在于视频的兑现而不是 cookie。
    • 很高兴听到这个消息,但我也使用过大 (100mb) 文件的媒体播放器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多