|
|
@@ -19,26 +19,27 @@ android 模拟器 mac android sdk 自带的 emulator(API28 android9)可用,其
|
|
|
## 目录
|
|
|
|
|
|
- [ijkplayer](#ijkplayer)
|
|
|
- - [目录](#目录)
|
|
|
+ - [目录](#%E7%9B%AE%E5%BD%95)
|
|
|
- [English Readme](#english-readme)
|
|
|
- - [安装](#安装)
|
|
|
- - [原生部分说明](#原生部分说明)
|
|
|
+ - [安装](#%E5%AE%89%E8%A3%85)
|
|
|
+ - [原生部分说明](#%E5%8E%9F%E7%94%9F%E9%83%A8%E5%88%86%E8%AF%B4%E6%98%8E)
|
|
|
- [iOS](#ios)
|
|
|
- [Android](#android)
|
|
|
- - [入门示例](#入门示例)
|
|
|
- - [使用](#使用)
|
|
|
- - [设置](#设置)
|
|
|
- - [关于销毁](#关于销毁)
|
|
|
- - [控制器的使用](#控制器的使用)
|
|
|
- - [设置资源](#设置资源)
|
|
|
- - [播放器的控制](#播放器的控制)
|
|
|
- - [获取播放信息](#获取播放信息)
|
|
|
- - [截取视频帧](#截取视频帧)
|
|
|
- - [资源监听](#资源监听)
|
|
|
- - [释放资源](#释放资源)
|
|
|
- - [自定义控制器 UI](#自定义控制器-ui)
|
|
|
- - [自定义纹理界面](#自定义纹理界面)
|
|
|
- - [进度](#进度)
|
|
|
+ - [入门示例](#%E5%85%A5%E9%97%A8%E7%A4%BA%E4%BE%8B)
|
|
|
+ - [使用](#%E4%BD%BF%E7%94%A8)
|
|
|
+ - [设置](#%E8%AE%BE%E7%BD%AE)
|
|
|
+ - [关于销毁](#%E5%85%B3%E4%BA%8E%E9%94%80%E6%AF%81)
|
|
|
+ - [控制器的使用](#%E6%8E%A7%E5%88%B6%E5%99%A8%E7%9A%84%E4%BD%BF%E7%94%A8)
|
|
|
+ - [设置资源](#%E8%AE%BE%E7%BD%AE%E8%B5%84%E6%BA%90)
|
|
|
+ - [播放器的控制](#%E6%92%AD%E6%94%BE%E5%99%A8%E7%9A%84%E6%8E%A7%E5%88%B6)
|
|
|
+ - [获取播放信息](#%E8%8E%B7%E5%8F%96%E6%92%AD%E6%94%BE%E4%BF%A1%E6%81%AF)
|
|
|
+ - [截取视频帧](#%E6%88%AA%E5%8F%96%E8%A7%86%E9%A2%91%E5%B8%A7)
|
|
|
+ - [资源监听](#%E8%B5%84%E6%BA%90%E7%9B%91%E5%90%AC)
|
|
|
+ - [IjkStatus 说明](#ijkstatus-%E8%AF%B4%E6%98%8E)
|
|
|
+ - [释放资源](#%E9%87%8A%E6%94%BE%E8%B5%84%E6%BA%90)
|
|
|
+ - [自定义控制器 UI](#%E8%87%AA%E5%AE%9A%E4%B9%89%E6%8E%A7%E5%88%B6%E5%99%A8-ui)
|
|
|
+ - [自定义纹理界面](#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BA%B9%E7%90%86%E7%95%8C%E9%9D%A2)
|
|
|
+ - [进度](#%E8%BF%9B%E5%BA%A6)
|
|
|
- [LICENSE](#license)
|
|
|
|
|
|
## English Readme
|
|
|
@@ -273,14 +274,31 @@ Stream<VideoInfo> videoInfoStream = controller.videoInfoStream;
|
|
|
|
|
|
// 音量的变化,这里需要注意,这个变化指的是当前媒体的音量变化,而不是系统的音量变化
|
|
|
Stream<bool> volumeStream = controller.playingStream;
|
|
|
+
|
|
|
+// 当前Controller状态的监听,取值范围可以查看
|
|
|
+Stream<IjkStatus> ijkStatusStream = controller.ijkStatusStream;
|
|
|
```
|
|
|
|
|
|
+#### IjkStatus 说明
|
|
|
+
|
|
|
+| 名称 | 说明 |
|
|
|
+| ----------------- | ------------------------ |
|
|
|
+| noDatasource | 初始状态/调用`reset()`后 |
|
|
|
+| preparing | 设置资源中 |
|
|
|
+| setDatasourceFail | 设置资源失败 |
|
|
|
+| prepared | 准备好播放 |
|
|
|
+| pause | 暂停 |
|
|
|
+| error | 发生错误 |
|
|
|
+| playing | 播放中 |
|
|
|
+| complete | 播放完毕后 |
|
|
|
+| disposed | 调用 dispose 后的状态 |
|
|
|
+
|
|
|
#### 释放资源
|
|
|
|
|
|
```dart
|
|
|
await controller.reset(); // 这个方法调用后,会释放所有原生资源,但重新设置dataSource依然可用
|
|
|
|
|
|
-await controller.dispose(); //这个方法调用后,当前控制器理论上不再可用,重新设置dataSource无效,且可能会抛出异常
|
|
|
+await controller.dispose(); //这个方法调用后,当前控制器理论上不再可用,重新设置dataSource无效,且可能会抛出异常,确定销毁这个controller时再调用
|
|
|
```
|
|
|
|
|
|
### 自定义控制器 UI
|