android-recyclerview - Exoplayer 无法在某些设备中播放视频
问题描述
我是 exoplayer 的新手。我正在尝试在 recyclerview 中播放视频列表。但是很少有视频没有播放并且低于错误。
E/ExoPlayerImplInternal: Stop failed.
java.lang.IllegalStateException
at android.media.MediaCodec.native_stop(Native Method)
at android.media.MediaCodec.stop(MediaCodec.java:2084)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.releaseCodec(MediaCodecRenderer.java:608)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.releaseCodec(MediaCodecVideoRenderer.java:508)
at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onDisabled(MediaCodecRenderer.java:562)
at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onDisabled(MediaCodecVideoRenderer.java:377)
at com.google.android.exoplayer2.BaseRenderer.disable(BaseRenderer.java:153)
at com.google.android.exoplayer2.ExoPlayerImplInternal.disableRenderer(ExoPlayerImplInternal.java:976)
at com.google.android.exoplayer2.ExoPlayerImplInternal.resetInternal(ExoPlayerImplInternal.java:764)
at com.google.android.exoplayer2.ExoPlayerImplInternal.stopInternal(ExoPlayerImplInternal.java:735)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:355)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:201)
at android.os.HandlerThread.run(HandlerThread.java:65)
谁能帮帮我。
解决方案
当底层平台不支持视频中的某些内容(如编解码器或编解码器的配置文件级别)时,通常会引发该错误。
例如,无法播放的视频可能会在仅支持主要或基线配置文件(大多数设备)的设备上使用 H.264 和高配置文件。
您可以使用 ffprobe 之类的工具检查视频的详细信息:
您可以在此处查看支持的视频格式的最新列表:
推荐阅读
- ios - 无法验证下载服务器。您可能正在经历中间人攻击
- python - 无法为 Django 和 Mysql 启动 docker 构建
- python - How do I draw a list of class objects in pygame?
- javascript - 选项卡/浏览器仅关闭事件监听器(不刷新,页面卸载)
- module - 如何仅将模块的功能导出为另一个模块的一部分?
- mysql - MySQL 更新表作为另一个表中的 SELECT 的结果
- three.js - 如何使用 webxr 获取相机世界方向?
- php - 未在 Aws Ec2 实例上为 PHP 7.2 执行 PHP 代码
- android - 我在 android 手机 ( 7.0 ) 中看不到背景颜色,但在平板电脑中我可以
- python - 是否可以在 numpy.linalg 中强制执行整数运算?