使用 ExoPlayer 的 Android MediaPlayer 持久缓存

Posted

技术标签:

【中文标题】使用 ExoPlayer 的 Android MediaPlayer 持久缓存【英文标题】:Android MediaPlayer persistent cache using ExoPlayer 【发布时间】:2015-03-16 10:05:12 【问题描述】:

我想在我的应用中为流式音频数据实现持久缓存。

我搜索了互联网并查看了一些现有的解决方案,其中大多数都需要您创建一个本地代理,它将数据写入缓存并将其提供给 android 的内置 MediaPlayer。

我终于遇到了 Google 的 ExoPlayer,它似乎完全符合我的要求!我相信为了创建缓存我需要使用 CacheDataSource,但是我不知道如何使用它!

我浏览过 Google 文档和演示应用程序,但它们根本没有提供太多关于缓存的信息。

谁能帮我举个例子?

【问题讨论】:

【参考方案1】:

从来没有用过这个,但是下面关于如何构建音频渲染器的教程对我来说似乎很简单。 http://google.github.io/ExoPlayer/guide.html#datasource

请问您为什么要使用媒体播放器实现持久缓存?当我使用 google 的 MediaPlayer 框架时,它对我来说似乎非常有用,只要我有数据连接,就不会遇到流媒体问题。

【讨论】:

【参考方案2】:

我也一直在无休止地寻找缓存音频的解决方案,以实现离线播放可用性。

我终于找到了这个库: https://github.com/danikula/AndroidVideoCache

它也被称为 Android 视频缓存,它也适用于缓存音频。

【讨论】:

以上是关于使用 ExoPlayer 的 Android MediaPlayer 持久缓存的主要内容,如果未能解决你的问题,请参考以下文章

使用 ExoPlayer 的 Android MediaPlayer 持久缓存

Android Widevine DASH 实现 + ExoPlayer

Android 和 Exoplayer 中的视图绑定

Android音频开发:使用ExoPlayer播放音频

Android音频开发:使用ExoPlayer播放音频

Android音频开发:使用ExoPlayer播放音频