andcup / videoplayer-android

安卓视频播放器组件,插件式开发视频播放器,无需关注视频底层技术,专注业务与逻辑开发,功能稳定,扩展性强;QQ群:135308556

Home Page:http://www.qioq.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

开源项目

多年前写的一个Android视频播放器组件,首创插件式开发视频播放器, 方便大家专注于UI及业务逻辑, 屏蔽底层技术, 标准的API接口、回调等。 在多个项目上稳定运行(最大的一个APP, 活跃用户90W),现在开源:

功能特点:

  1. 支持多引擎(VLC, Android MediaPlayer)以及扩展容易,视频格式根据所选引擎决定
  2. 插件式开发视频组件,大小屏无缝切换, 通过插件式开发, 可以完全自定义自己的UI,功能。
  3. 全屏、小窗口播放无缝切换
  4. 支持音量、亮度、画面比例、字幕、播放速率等基础功能
  5. 支持基础功能:暂停、继续、缓存处理等
  6. RTMP视频直播流

适用对象

本项目在多个项目中适用,经得起考验,耐得住*,欢迎来撸。 想快速开发应用的同学们,供大家研究研究。

历史来源

当时在做教育类APP, 公司很多项目在用到视频播放的功能,每个项目的功能需求不一致、需求长相也不一致,在人手有限的情况下, 为了让每个项目围护简单 接入简单并尽可能的BUG少,上线快, 于是就有了 插件式开发视频播放器组件。

> 它定义了一套标准的API\回调接口(说的比较抽象, 了解视频的播放回调逻辑, 可以很容易理解它)

> 它定义了一套插件语法(XML语法, 与android平常的xml语法类似)

> 各个项目组 负责维护自己的插件 及 插件配置文件即可。

于是在多个项目中, 视频核心库只要一个人负责维护, 项目中的各个业务逻辑、界面UI等 由各自项目人员各自维护(维护插件以及插件配置文件即可)

项目说明

项目结构:

    video-heros  ===>  是接入工程demo

    video 	===>  是核心库(插件式开发)
    
    video-engine 	===> 是视频引擎(支持视频底层引擎切换)
    
    sdk-vlc   ===>	是vlc的JNI封装库
	
	video-plugin-core ===> 插件式开发核心库, 定义插件语法(assets/plugin.xsd)、插件管理、插件加载等

====================================================================

有问题可以留言,QQ:56027652。

视频播放器组件版本历史

1.0.5

引擎实现

  1. 使用android系统原生的MediaPlayer作为播放器的引擎
  2. 支持播放、暂停、跳转、手势等组件基本动作
  3. 增加视频引擎管理器,由项目引入库决定使用哪种引擎。
  4. 插件框架增加背景阴影属性

1.0.3

字幕及外围功能

  1. 增加srt字幕功能插件
  2. 增加后台下载字幕功能
  3. 增加网络状态变化监听插件
  4. 增加低网速插件功能
  5. 增加字幕切换、缩放比率切换、播放速度切换功能

1.0.1

二分屏功能

  1. 开发视频内文档插件,支持接入阅读器组件、文档翻页插件、文档同步功能
  2. 支持单屏、多屏切换
  3. 接入阅读器组件
  4. 增加延时加载文档功能

1.0.2

习题插件功能

  1. 分离原非学历项目中的习题插件部分,整合成新的习题插件组件
  2. 标准化习题插件的入口:加载并打开习题
  3. 增加习题插件的通信接口
  4. 增加延时加载习题功能

1.0.0

该版本开发视频播放器的主要功能

  1. 使用新的插件框架重构视频播放器
  2. 调整视频组件的结构:分离引擎并标准化
  3. 支持mp3、flv、f4v的基础视频格式播放
  4. 支持手势操作调节音量、亮度
  5. 自动跳转到上次播放位置功能
  6. 调整vlc-jni部分代码,更符合hy项目结构
  7. 重新归类视频的消息事件(分为:准备状态、播放、暂停、完成四类)

About

安卓视频播放器组件,插件式开发视频播放器,无需关注视频底层技术,专注业务与逻辑开发,功能稳定,扩展性强;QQ群:135308556

http://www.qioq.com


Languages

Language:Java 100.0%