首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ExoPlayer缓存

ExoPlayer缓存
EN

Stack Overflow用户
提问于 2014-09-29 16:08:55
回答 4查看 7.8K关注 0票数 17

我正在尝试使用ExoPlayer通过http播放视频。我想在视频加载后保存视频并从缓存中播放它。如何实现缓存和缓存回放?可以给我任何样品。

EN

回答 4

Stack Overflow用户

发布于 2015-10-26 20:18:32

您可以使用使用缓存和dataSource创建的cacheDataSource。此cacheDataSource随后由ExtractorSampleSource.Below使用,这是audioRenderer的代码,类似地可以为videoRender完成;传递给exoplayerInstance.prepare(渲染器)。

代码语言:javascript
复制
Cache cache = new SimpleCache(mCtx.getCacheDir(), new LeastRecentlyUsedCacheEvictor(1024 * 1024 * 10));
DataSource dataSource = new DefaultUriDataSource(mCtx, "My Player");
CacheDataSource cacheDataSource = new CacheDataSource(cache, dataSource, false, false);
Allocator allocator = new DefaultAllocator(BUFFER_SEGMENT_SIZE);
ExtractorSampleSource extractorSampleSource = new ExtractorSampleSource(trackURI, cacheDataSource, allocator, BUFFER_SEGMENT_COUNT*BUFFER_SEGMENT_SIZE, new Mp3Extractor());
MediaCodecAudioTrackRenderer audioTrackRenderer = new MediaCodecAudioTrackRenderer(extractorSampleSource);
票数 5
EN

Stack Overflow用户

发布于 2015-03-29 18:05:41

您使用的是什么协议? mpeg-dash还是纯http?

您可以覆盖HttpDataSource并将传入的字节写入文件,当再次播放时,检查文件是否存在于所需的位置,并从您的文件而不是HttpDataSource更改提供给播放器的InputStream。

票数 2
EN

Stack Overflow用户

发布于 2019-11-03 15:23:49

我使用exoplayer和这个库:https://github.com/danikula/AndroidVideoCache,它可以帮助你缓存来自资源(网址,文件)的视频……

这是我的示例代码:

代码语言:javascript
复制
String mediaURL = "https://my_cool_vid.com/vi.mp4";
SimpleExoPlayer exoPlayer = ExoPlayerFactory.newSimpleInstance(getContext());
HttpProxyCacheServer proxyServer = HttpProxyCacheServer.Builder(getContext()).maxCacheSize(1024 * 1024 * 1024).build();

String proxyURL = proxyServer.getProxyUrl(mediaURL);


DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(getContext(),
                Util.getUserAgent(getContext(), getActivity().getApplicationContext().getPackageName()));


exoPlayer.prepare(new ProgressiveMediaSource.Factory(dataSourceFactory)
                .createMediaSource(Uri.parse(proxyURL)););
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26095261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档