Media预加载内存简单粗暴(Crash)

 

解决办法:1. Media Source文件 PrecacheFile 打勾(解决Media Source内存垃圾回收的崩溃)
2.在GameInstance类virtual void Init();重载该函数实现你的Media视频播放一次,目的预加载内存里。GameInstance在引擎启动实例化。
总的来说预先加载播放视频到内存里,在播放不会卡了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ExoPlayer是一个开源的媒体播放器库,它提供了强大的功能,包括加载来减少黑屏时间。下面是一个使用ExoPlayer加载实现减少黑屏时间的示例代码: ```java // 创建一个ExoPlayer实例 SimpleExoPlayer player = ExoPlayerFactory.newSimpleInstance(context); // 创建一个DefaultDataSourceFactory实例 DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(context, Util.getUserAgent(context, "yourApplicationName")); // 创建一个MediaSource实例 MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory).createMediaSource(Uri.parse("yourVideoUrl")); // 创建一个DefaultLoadControl实例,设置加载的缓存大小 LoadControl loadControl = new DefaultLoadControl.Builder().setBufferDurationsMs(5000, 50000, 1500, 5000).createDefaultLoadControl(); // 设置ExoPlayer实例的LoadControl player.setLoadControl(loadControl); // 准备播放 player.prepare(mediaSource); ``` 在上述代码中,我们通过创建一个DefaultLoadControl实例,并设置加载的缓存大小来实现减少黑屏时间。具体来说,我们设置了以下四个缓存参数: - minBufferMs:最小缓存时间,单位为毫秒。 - maxBufferMs:最大缓存时间,单位为毫秒。 - bufferForPlaybackMs:播放时缓存的时间,单位为毫秒。 - bufferForPlaybackAfterRebufferMs:重新缓存的时间,单位为毫秒。 这些参数的值可以根据实际情况进行调整,以达到最佳的加载效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值