最简单使用exoplayer工具类(带视频缓存)
/**
* Created on 2019/05/29.
* interface by
*
* @author fengzimin
*/
public class SimpleExoPlayerHelper {
private final Context mContext;
private SimpleExoPlayer mSimpleExoPlayer;
private ConcatenatingMediaSource mConcatenatingMediaSource;
private static SimpleExoPlayerHelper simpleExoPlayerHelper;
public SimpleExoPlayerHelper(Context context, PlayerView playerView) {
mContext = context;
// 创建带宽
BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
// 创建轨道选择工厂
TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveTrackSelection.Factory(bandwidthMeter);
// 创建轨道选择器实例
TrackSelector trackSelector = new DefaultTrackSelector(videoTrackSelectionFactory);
//step2. 创建播放器
mSimpleExoPlayer = ExoPlayerFactory.newSimpleInstance(context, trackSelector);
playerView.setPlayer(mSimpleExoPlayer);
mConcatenatingMediaSource = new ConcatenatingMediaSource();
}
public static SimpleExoPlayerHelper createMySimpleExoPlayer(Context context, PlayerView playerView) {
simpleExoPlayerHelper = new SimpleExoPlayerHelper(context, playerView);
return simpleExoPlayerHelper;
}
/**
* @return 提供simpleExoPlayer对象,实现其他功能
*/
public SimpleExoPlayer getSimpleExoPlayer() {
return mSimpleExoPlayer;
}
public SimpleExoPlayerHelper prepare(List<String> urls)

本文介绍了一个使用ExoPlayer的简化工具类,该工具类支持视频缓存功能,通过整合DefaultBandwidthMeter、DefaultTrackSelector等组件,实现了视频资源的高效加载与播放。此外,还提供了设置循环模式、播放状态控制等实用功能。
最低0.47元/天 解锁文章
4252

被折叠的 条评论
为什么被折叠?



