【问题标题】:better_player or exoplayer throwing exception OMX.MTK.VIDEO.DECODER.AVCBetter_player 或 exoplayer 抛出异常 OMX.MTK.VIDEO.DECODER.AVC
【发布时间】:2021-04-15 17:10:42
【问题描述】:

我在better_player 上遇到了一个问题,因为这个异常,一些设备没有流式传输实时链接:

Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.MTK.VIDEO.DECODER.AVC, Format(0, null, null, video/avc, avc1.4D4028, -1, null, [320, 180, -1.0], [-1, -1])
E/ExoPlayerImplInternal(14168):       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:867)
E/ExoPlayerImplInternal(14168):       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodec(MediaCodecRenderer.java:561)
E/ExoPlayerImplInternal(14168):       ... 9 more
E/ExoPlayerImplInternal(14168):   Caused by: android.media.MediaCodec$CodecException: Failed to initialize OMX.MTK.VIDEO.DECODER.AVC, error 0xfffffff4
E/ExoPlayerImplInternal(14168):       at android.media.MediaCodec.native_setup(Native Method)
E/ExoPlayerImplInternal(14168):       at android.media.MediaCodec.<init>(MediaCodec.java:1811)
E/ExoPlayerImplInternal(14168):       at android.media.MediaCodec.createByCodecName(MediaCodec.java:1792)
E/ExoPlayerImplInternal(14168):       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:925)
E/ExoPlayerImplInternal(14168):       at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:860)
E/ExoPlayerImplInternal(14168):       ... 10 more

这似乎来自 ExoPlayer,但是如何解决呢?

【问题讨论】:

  • 请尽可能多地向我们提供有关此错误发生时间的信息。另外,这种情况发生在哪些特定设备上?
  • 它发生在techno spark 3@ThanasisM

标签: java android flutter kotlin exoplayer2.x


【解决方案1】:

请注意,大多数设备可以同时拥有数量有限的解码器实例。所以,也许你达到了那个极限。在创建新实例之前,还要检查您的应用是否已成功发布任何旧的 exoplayer 实例。

此外,设备可能不支持您的媒体分辨率。对于这种情况,您可以尝试以these 支持的媒体格式之一重新编码您的媒体文件。

【讨论】:

  • 我认为可能是设备不支持媒体格式,因为我有一个实例,我只需点击电视然后播放。
  • 也许我想问一下正在使用的流以.m3u8 结尾,我没有在列表中看到它,是否有可能此设备无法通过此链接流式传输?跨度>
  • 是的,如果此错误发生在某些特定设备上,则很可能与其规格和硬件有关。这就是为什么您应该在其他不同分辨率、品牌等的设备上进行更多测试。对流进行良好的观察。由于它不包含在 Google 的官方文档中,即使它有效,我也不会对此感到安全。因此,最好尽可能地遵守官方文档。
  • 非常感谢@Thanasis,让我尝试使用其他链接
【解决方案2】:

我自己也遇到了这个问题。假设您在列表视图中使用 BetterPlayer 小部件,您将遇到此解码器问题。 BetterPlayer 有一个特定的小部件来处理在列表视图中播放视频。我建议您查看Better Video List Example,看看它是否能解决您的错误。

【讨论】:

    猜你喜欢
    • 2011-08-29
    • 2013-05-24
    • 2012-12-22
    • 2012-06-08
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 2011-05-30
    • 1970-01-01
    相关资源
    最近更新 更多