【问题标题】:What are the differences between VideoView and ExoPlayer. Why would I prefer one over the other?VideoView 和 ExoPlayer 有什么区别。为什么我更喜欢其中之一?
【发布时间】:2021-08-06 02:38:57
【问题描述】:

我开发了一个视频流应用,我正在研究现有的视频渲染库来渲染 .mkv (H253-255) 和 .mp4。

我看到有一个名为 VideoView 的原生 Android 视图,它使用 MediaCodec 并具有很多功能,所以我确信这是一个很好的库,但后来我遇到了 ExoPlayer(由 Google 提供),它也可以。

所以我想知道两者之间有什么区别?

【问题讨论】:

  • “并且有很多功能”——我不同意。与 ExoPlayer 相比,VideoView 非常有限。
  • @CommonsWare 根据他们的官方API,我可以在我的项目中使用很多功能。正如你所说,相对于 ExoPlayer,它非常有限,但我不介意那是另一回事。我只是想知道区别。

标签: android video-streaming android-videoview exoplayer exoplayer2.x


【解决方案1】:

与 videoview 相比,Exoplayer 更灵活,更易于自定义,并且更稳定,并且具有许多 videoview 所没有的其他功能,例如需要按顺序播放视频的简单用例,所以你在 Exoplayer 中使用 ConcatinatingMediaSource 可以很容易地做到这一点,在最新版本中,它变得更加灵活和容易做到,但要在 videoview 中做同样的事情,你必须做很多事情才能让它工作。所以它是一个更先进、更灵活的 videoview 版本,它比 videoview 更具可定制性。我刚刚提到了一个用例,但你可以在谷歌上阅读更多关于 exoplayer 的信息,了解它为什么比 videoview 更好。这也取决于您的用例。但我建议使用 Exoplayer,或者如果您需要更多理由,那么只需尝试按照我对 videoview 的解释进行操作,您或多或少会明白我的意思。但是 exoplayer 也有错误和问题,但正如我所说,它比 VideoView 更灵活和更好。

【讨论】:

  • 感谢您非常详细的回答
猜你喜欢
  • 2020-09-02
  • 2023-03-05
  • 1970-01-01
  • 2011-07-27
  • 2011-05-05
  • 1970-01-01
  • 2016-05-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多