一款基于ExoPlayer的自定义播放器(已开源)

本文介绍了一款基于ExoPlayer的自定义播放器JPlayer,支持手势控制、视频清晰度切换、缓存下载、多种协议、自定义布局等功能。详细介绍了其控件属性和JAVA代码实现。
摘要由CSDN通过智能技术生成

不少同学前段时间问过我ExoPlayer的选型怎样,以及可以基于ExoPlayer做哪些拓展,今天推荐的这个项目,可以让你彻底了解ExoPlayer。

一、基于ExoPlayer 自定义播放器 JPlayer支持功能:

  • 1 ExoUserPlayer 基本播放。

  • 2 GestureVideoPlayer 增加手势 亮度,音量,快进,等手势。

  • 3 ManualPlayer 可自定义触发播放。

  • 5 广告视频预览(轻松实现,完美切换)。

  • 6 视频清晰度切换。

  • 7 缓存下载加密视频功能(边播变缓存轻松实现。

  • 8 支持自定义多种 kttp,Rtmp,Https,Cronet等协议。

  • 9 支持列表集合数据O播放视频(详情播放完美过度)

  • 10 支持多种文件类型,MP4,M4A,WebM,Matroska,Ogg,WAV,MP3,MPEG-TS,MPEG-PS,FLV,ADTS (AAC),Flac,M3U8,mkv 等。

  • 11 支持网络类型 提示是否播放(可自定义冰屏蔽)。

  • 12 1.5.5增加,视频加载布局, 错误布局,重播布局,提示布局自定义,更灵活实现自己布局样式。

  • 13 支持视频加载中显示模式(网速模式和百分比模式)。

  • 14 支持视频加速慢速播放。

  • 15 支持视频封面图(两种模式封面图)。

  • 16 1.7.0支持自定义MediaSource。

  • 17 1.7.0增加 手势 亮度调节,视频进度,音量 布局自定义。

  • 18 支持精简版和完整版,选择使用更丰富。

  • 19 支持自定义AES视频加密,简单加密

  • 20 增加自定义离线下载辅助类DefaultProgressDownloader(支持(AES/CBC)加密文件处理),HlsDownloader,DashDownloader,SsDownloader,SegmentDownloader

  • 21 支持播放锁屏功能和控制动画效果,返回按钮和全屏按钮图标自定义

效果图:

二、控件属性

1.控件属性

  <chuangyuan.ycj.videolibrary.widget.VideoPlayerView
        android:id="@+id/exo_play_context_id"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/transparent"
        app:controller_layout_id="@layout/simple_exo_playback_control_view"
        app:player_layout_id="@layout/simple_exo_view"
        app:player_replay_layout_id="@layout/custom_play_replay"
        app:player_error_layout_id="@layout/custom_play_error"
        app:player_hint_layout_id="@layout/custom_play_btn_hint"
        app:player_load_layout_id="@layout/custom_exo_play_load"
        app:player_gesture_audio_layout_id="@layout/custom_gesture_audio"
        app:player_gesture_bright_layout_id="@layout/custom_gesture_brightness"
        app:player_gesture_progress_layout_id="@layout/custom_gesture_pro"
        app:resize_mode="fit"
        app:show_timeout="3000"
        app:surface_type="texture_view"
        app:fastforward_increment="0"
        app:rewind_increment="0"
        app:user_watermark="@mipmap/watermark_big"
        app:player_list="true"
        app:use_controller="true"
        app:player_fullscreen_image_selector="@drawable/custom_full_selector"
        app:player_back_image="@drawable/ic_back_custom"
         />

基本使用如下

        <chuangyuan.ycj.videolibrary.widget.VideoPlayerView
                android:id="@+id/exo_play_context_id"
                android:layout_width=

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值