SuperPlayerPlugin类
setGlobalLicense
说明
设置 License
申请到 License 后,通过下面的接口初始化 License,建议在启动的时候进行,如果没有设置 License,将会播放视频失败。
接口
static Future<void> setGlobalLicense(String licenceUrl, String licenceKey) async;
参数说明
参数名 | 类型 | 描述 |
licenceUrl | String | licence 的 url |
licenceKey | String | licence 的 key |
返回值
无
createVodPlayer
说明
创建原生层的点播播放器实例,如果使用
TXVodPlayerController
,其中已经集成,不需要额外创建。接口
static Future<int?> createVodPlayer() async;
参数说明
无
返回值
返回值 | 类型 | 描述 |
playerId | int | 播放器 ID |
createLivePlayer
说明
创建原生层的点播播放器实例,如果使用
TXVodPlayerController
,其中已经集成,不需要额外创建。接口
static Future<int?> createLivePlayer() async;
参数说明
无
返回值
返回值 | 类型 | 描述 |
playerId | int | 播放器 ID |
setConsoleEnabled
说明
打开或关闭播放器原生 log 输出。
接口
static Future<int?> setConsoleEnabled() async;
参数说明
参数名 | 类型 | 描述 |
enabled | bool | 开启或关闭播放器 log |
返回值
无
releasePlayer
说明
释放对应播放器的资源。
接口
static Future<int?> releasePlayer(int? playerId) async;
参数说明
无
返回值
无
setGlobalMaxCacheSize
说明
设置播放引擎的最大缓存大小。设置后会根据设定值自动清理 Cache 目录的文件。
接口
static Future<void> setGlobalMaxCacheSize(int size) async;
参数说明
参数名 | 类型 | 描述 |
size | int | 最大缓存大小(单位:MB) |
返回值
无
setGlobalCacheFolderPath
说明
该缓存路径默认设置到 App 沙盒目录下,参数只需要传递相对缓存目录即可,不需要传递整个绝对路径。
接口
static Future<bool> setGlobalCacheFolderPath(String postfixPath) async;
参数说明
参数名 | 类型 | 描述 |
postfixPath | String | 缓存目录,该缓存路径默认设置到 app 沙盒目录下,postfixPath 只需要传递相对缓存目录即可,不需要传递整个绝对路径。 Android 平台:视频将会缓存到 sdcard 的 Android/data/your-pkg-name/files/testCache 目录。iOS 平台视频将会缓存到沙盒的 Documents/testCache 目录。 |
返回值
无
setLogLevel
说明
设置 log 输出级别。
接口
static Future<void> setLogLevel(int logLevel) async;
参数说明
参数名 | 类型 | 描述 |
logLevel | int | 0:输出所有级别的 log 1:输出 DEBUG、INFO、WARNING、ERROR 和 FATAL 级别的 log 2:输出 INFO、WARNNING、ERROR 和 FATAL 级别的 log 3:输出 WARNNING、ERROR 和 FATAL 级别的 log 4:输出 ERROR 和 FATAL 级别的 log 5:只输出 FATAL 级别的 log 6:不输出任何 SDK log |
返回值
无
setBrightness
说明
设置亮度,仅适用于当前 App。
接口
static Future<void> setBrightness(double brightness) async;
参数说明
参数名 | 类型 | 描述 |
brightness | double | 亮度取值范围 0.0~1.0 |
返回值
无
restorePageBrightness
说明
恢复界面亮度,仅适用于当前 App。
接口
static Future<void> restorePageBrightness() async;
参数说明
无
返回值
无
getBrightness
说明
获得当前界面的亮度值。
接口
static Future<double> getBrightness() async;
参数说明
无
返回值
参数名 | 类型 | 描述 |
brightness | double | 亮度取值范围 0.0~1.0 |
setSystemVolume
说明
设置当前系统的音量。
接口
static Future<void> setSystemVolume(double volume) async;
参数说明
参数名 | 类型 | 描述 |
volume | double | 音量取值范围 0.0~1.0 |
返回值
无
getSystemVolume
说明
设置当前系统的音量。
接口
static Future<double> getSystemVolume() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
volume | double | 音量取值范围 0.0~1.0 |
abandonAudioFocus
说明
释放音频焦点,仅适用于 Android。
接口
static Future<double> abandonAudioFocus() async;
参数说明
无
返回值
无
requestAudioFocus
说明
请求获取音频焦点,仅适用于 Android。
接口
static Future<void> requestAudioFocus() async ;
参数说明
无
返回值
无
isDeviceSupportPip
说明
判断当前设备是否支持画中画模式。
接口
static Future<int> isDeviceSupportPip() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
isDeviceSupportPip | int | 0:可开启画中画模式 -101:Android 版本过低 -102:画中画权限关闭/设备不支持画中画 -103:当前界面已销毁 |
getLiteAVSDKVersion
说明
获得当前原生层播放器 SDK 的版本号。
接口
static Future<String?> getLiteAVSDKVersion() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
sdkVersion | String | 当前播放器 SDK 版本 |
startVideoOrientationService
说明
开始监听设备旋转方向,开启之后,如果设备自动旋转打开,播放器会自动根据当前设备方向来旋转视频方向。
该接口目前只适用 Android 端,iOS 端会自动开启该能力。
注意
在调用该接口前,请务必向用户告知隐私风险。
接口
static Future<bool> startVideoOrientationService() async
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
result | bool | true 为开启成功,false 为开启失败,如开启过早,还未等到上下文初始化、获取sensor 失败等原因 |
registerSysBrightness
说明
开启或关闭对于系统亮度的监听,如果开启,当系统亮度发生变化,会改变当前 window 亮度,并回调亮度到 flutter 层。该接口需配合 setBrightness 和onExtraEventBroadcast 使用。
接口
static Future<void>registerSysBrightness(bool isRegister) async
参数说明
参数名 | 类型 | 描述 |
isRegister | bool | true:开启监听。 false:关闭监听。 |
返回值说明
无
setUserId
说明
设置 userId,一般用于控制台数据追踪。
接口
static Future<void> setUserId(String userId) async
参数说明
参数名 | 类型 | 描述 |
userId | String | 用户 userId |
返回值说明
无
setSDKListener
说明
设置 sdk 监听,目前支持对 license 设置状态的回调监听
接口
void setSDKListener({FTXLicenceLoadedListener? licenceLoadedListener})
参数说明
参数名 | 类型 | 描述 |
licenceLoadedListener | FTXLicenceLoadedListener | 参数有 result 和 reason,result 为 0 代表 license 校验成功,result 是校验消息 |
返回值说明
无
setLicenseFlexibleValid
说明
开启播放器 License 柔性校验,开启后在播放器首次启动后前 2 次播放校验将默认通过。
接口
static Future<void> setLicenseFlexibleValid(bool enabled) async
参数说明
参数名 | 类型 | 描述 |
enabled | bool | 是否开启柔性校验 |
返回值说明
无
TXVodPlayerController类
initialize
说明
初始化 controller,请求分配共享纹理。
接口
Future<void> initialize({bool? onlyAudio}) async;
参数说明
参数名 | 类型 | 描述 |
onlyAudio | bool | 选填,是否是纯音频播放器。 |
返回值说明
无
startVodPlay
注意
10.7版本开始,startPlay 变更为 startVodPlay,需要通过
{@link SuperPlayerPlugin#setGlobalLicense}
设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。直播 Licence、短视频 Licence 和视频播放 Licence 均可使用,若您暂未获取上述 Licence ,可 快速免费申请测试版 Licence 以正常播放,正式版 License 需 购买。说明
通过播视频 url 进行播放。
接口
Future<bool> startVodPlay(String url) async;
参数说明
参数名 | 类型 | 描述 |
url | String | 要播放的视频 url |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 创建是否成功 |
startVodPlayWithParams
注意
10.7版本开始,startPlay 变更为 startVodPlay,需要通过
{@link SuperPlayerPlugin#setGlobalLicense}
设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。直播 Licence、短视频 Licence 和视频播放 Licence 均可使用,若您暂未获取上述 Licence ,可快速免费申请测试版 Licence 以正常播放,正式版 License 需 购买。说明
通过视频 field 进行播放。
接口
Future<void> startVodPlayWithParams(TXPlayInfoParams params) async;
参数说明
参数名 | 类型 | 描述 |
appId | int | 应用 appId。必填 |
fileId | String | 文件 id。必填 |
sign | String | |
url | String | 播放链接,该字段与 fileId 填写一个即可 |
返回值说明registerSysBrightness
无
pause
说明
暂停当前正在播放的视频。
接口
Future<void> pause() async;
参数说明
无
返回值说明
无
resume
说明
将当前处于暂停状态的视频恢复播放。
接口
Future<void> resume() async;
参数说明
无
返回值说明
无
stop
说明
停止当前正在播放的视频。
接口
Future<bool> stop({bool isNeedClear = false}) async;
参数说明
参数名 | 类型 | 描述 |
isNeedClear | bool | 是否清除最后一帧画面 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 停止是否成功 |
setIsAutoPlay
说明
设置即将播放的视频,在 startVodPlay 加载视频地址之后,是否直接自动播放。
接口
Future<void> setIsAutoPlay({bool? isAutoPlay}) async;
参数说明
参数名 | 类型 | 描述 |
isAutoPlay | bool | 是否自动播放 |
返回值说明
无
isPlaying
说明
当前播放器是否正在播放。
接口
Future<bool> isPlaying() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
isPlaying | bool | 是否正在播放 |
setMute
说明
设置当前播放是否静音。
接口
Future<void> setMute(bool mute) async;
参数说明
参数名 | 类型 | 描述 |
mute | bool | 是否静音 |
返回值说明
无
setLoop
说明
视频播放完成之后是否循环播放。
接口
Future<void> setLoop(bool loop) async;
参数说明
参数名 | 类型 | 描述 |
loop | bool | 是否循环播放 |
返回值说明
无
seek
说明
将进度调整到指定位置。
接口
_controller.seek(progress);
参数说明
参数名 | 类型 | 描述 |
progress | double | 需要调整到的播放时间,单位 秒 |
返回值说明
无
setRate
说明
设置视频播放的速率。
接口
Future<void> setRate(double rate) async;
参数说明
参数名 | 类型 | 描述 |
rate | double | 视频的播放速率。默认1.0 |
返回值说明
无
getSupportedBitrates
说明
获得当前正在播放的视频支持的码率。
接口
Future<List?> getSupportedBitrates() async;
参数说明
无
返回值说明
返回值 | 类型 | 描述 |
index | int | 码率序号 |
width | int | 码率对应视频宽度 |
height | int | 码率对应视频高度 |
bitrate | int | 码率值 |
getBitrateIndex
说明
获得设置过的码率序号。
接口
Future<int> getBitrateIndex() async;
参数说明
无
返回值说明
返回值 | 类型 | 描述 |
index | int | 码率序号 |
setBitrateIndex
说明
通过码率序号,设置当前码率。
接口
Future<void> setBitrateIndex(int index) async;
参数说明
返回值 | 类型 | 描述 |
index | int | 码率序号。 传入-1时,表示开启码流自适应。 |
返回值说明
无
setStartTime
说明
指定播放开始时间。
接口
Future<void> setStartTime(double startTime) async;
参数说明
返回值 | 类型 | 描述 |
startTime | double | 播放开始时间,单位 秒 |
返回值说明
无
setAudioPlayoutVolume
说明
设置视频的声音大小。
接口
Future<void> setAudioPlayoutVolume(int volume) async;
参数说明
参数名 | 类型 | 描述 |
volume | int | 视频声音大小,范围0~100 |
返回值说明
无
setRequestAudioFocus
说明
请求获得音频焦点,适用于 Android。
接口
Future<bool> setRequestAudioFocus(bool focus) async;
参数说明
参数名 | 类型 | 描述 |
focus | bool | 是否设置焦点 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 设置焦点是否成功 |
setConfig
说明
给播放器进行配置。
接口
Future<void> setConfig(FTXVodPlayConfig config) async ;
参数说明
参数名 | 类型 | 描述 |
config | FTXVodPlayConfig | 请参考 FTXVodPlayConfig类 |
返回值说明
无
getCurrentPlaybackTime
说明
获得当前播放时间,单位 秒。
接口
Future<double> getCurrentPlaybackTime() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
playbackTime | double | 当前播放时间,单位 秒 |
getBufferDuration
说明
获得当前视频已缓存的时间,单位 秒。
接口
Future<double> getBufferDuration();
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
playbackTime | double | 当前视频已缓存的时间,单位 秒 |
getPlayableDuration
说明
获得当前正在播放视频的可播放时间,单位 秒。
接口
Future<double> getPlayableDuration() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
playableDuration | double | 当前视频可播放时,单位 秒 |
getWidth
说明
获得当前正在播放视频的宽度。
接口
Future<int> getWidth() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
width | int | 当前视频宽度 |
getHeight
说明
获得当前正在播放视频的高度。
接口
Future<int> getHeight() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
height | int | 当前视频高度 |
setToken
说明
加密 HLS 的 token。设置此值后,播放器自动在 URL 中的文件名之前增加 voddrm.token。
接口
Future<void> setToken(String? token) async;
参数说明
参数名 | 类型 | 描述 |
token | String | 播放视频的 token |
返回值说明
无
isLoop
说明
获得当前播放器是否循环播放的状态。
接口
Future<bool> isLoop() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
isLoop | bool | 播放器是否处于循环播放状态 |
enableHardwareDecode
说明
开启/关闭硬解播放,设置后不会立即生效,需要重新播放才可生效。
接口
Future<bool> enableHardwareDecode(bool enable);
参数说明
参数名 | 类型 | 描述 |
enable | bool | 是否开启硬解 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 硬解/软解设置结果 |
dispose
说明
销毁 controller,调用该方法会销毁掉所有通知事件,释放掉播放器。
接口
Future<void> dispose() async;
参数说明
无
返回值说明
无
getDuration
说明
获取视频总时长。
接口
Future<double> getDuration() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
duration | double | 视频总时长,单位 秒 |
enterPictureInPictureMode
说明
进入画中画模式。
接口
Future<int> enterPictureInPictureMode({String? backIconForAndroid, String? playIconForAndroid, String? pauseIconForAndroid, String? forwardIconForAndroid}) async;
参数说明
该参数只适用于 Android 平台。
参数名 | 类型 | 描述 |
backIcon | String | 回退按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
playIcon | String | 播放按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
pauseIcon | String | 暂停按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
forwardIcon | String | 快进按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
返回值说明
参数名 | 值 | 描述 |
NO_ERROR | 0 | 启动成功,没有错误 |
ERROR_PIP_LOWER_VERSION | -101 | Android 版本过低,不支持画中画模式 |
ERROR_PIP_DENIED_PERMISSION | -102 | 画中画模式权限未打开,或者当前设备不支持画中画 |
ERROR_PIP_ACTIVITY_DESTROYED | -103 | 当前界面已经销毁 |
ERROR_IOS_PIP_DEVICE_NOT_SUPPORT | -104 | 设备或系统版本不支持(iPad iOS9+ 才支持PIP),只适用于 iOS |
ERROR_IOS_PIP_PLAYER_NOT_SUPPORT | -105 | 播放器不支持,只适用于 iOS |
ERROR_IOS_PIP_VIDEO_NOT_SUPPORT | -106 | 视频不支持,只适用于 iOS |
ERROR_IOS_PIP_IS_NOT_POSSIBLE | -107 | PIP 控制器不可用,只适用于 iOS |
ERROR_IOS_PIP_FROM_SYSTEM | -108 | PIP 控制器报错,只适用于 iOS |
ERROR_IOS_PIP_PLAYER_NOT_EXIST | -109 | 播放器对象不存在,只适用于 iOS |
ERROR_IOS_PIP_IS_RUNNING | -110 | PIP 功能已经运行,只适用于 iOS |
ERROR_IOS_PIP_NOT_RUNNING | -111 | PIP 功能没有启动,只适用于 iOS |
initImageSprite
说明
初始化视频雪碧图。
接口
Future<void> initImageSprite(String? vvtUrl, List<String>? imageUrls) async;
参数说明
参数名 | 类型 | 描述 |
vvtUrl | String | 雪碧图 web vtt 描述文件下载 URL |
imageUrls | List<String> | 雪碧图图片下载 URL |
返回值说明
无
getImageSprite
说明
获取加载的雪碧图。
接口
Future<Uint8List?> getImageSprite(double time) async;
参数说明
参数名 | 类型 | 描述 |
time | double | 时间点,单位 秒 |
返回值说明
参数名 | 类型 | 描述 |
thumb | Uint8List | 雪碧图 |
exitPictureInPictureMode
说明
退出画中画,如果该播放器处于画中画模式。
接口
Future<void> exitPictureInPictureMode() async;
参数说明
无
返回值说明
无
addSubtitleSource
说明
添加外挂字幕。
注意:此功能需要播放器高级版 11.7 版本开始支持。
接口
Future<void> addSubtitleSource(String url, String name, {String? mimeType}) async;
参数说明
参数名 | 类型 | 描述 |
url | String | 字幕url |
name | String | 字幕名称 |
mimeType | String | 字幕类型,支持 SRT(TXVodPlayEvent.VOD_PLAY_MIMETYPE_TEXT_SRT)和 VVT(TXVodPlayEvent.VOD_PLAY_MIMETYPE_TEXT_VTT)格式 |
getSubtitleTrackInfo
说明
返回字幕轨道信息列表。
注意:此功能需要播放器高级版 11.7 版本开始支持。
接口
Future<List<TXTrackInfo>> getSubtitleTrackInfo() async;
参数说明
TXTrackInfo类:
参数名 | 类型 | 描述 |
trackType | int | 轨道类型。取值有: 视频轨:TX_VOD_MEDIA_TRACK_TYPE_VIDEO = 1 音频轨: TX_VOD_MEDIA_TRACK_TYPE_AUDIO = 2 字幕轨:TX_VOD_MEDIA_TRACK_TYPE_SUBTITLE = 3 |
trackIndex | int | 轨道 index |
name | String | 轨道名字 |
isSelected | bool | 当前轨道是否被选中 |
isExclusive | bool | 如果是 true,该类型轨道每个时刻只有一条能被选中,如果是 false,该类型轨道可以同时选中多条 |
isInternal | bool | 当前的轨道是否是内部原始轨道 |
getAudioTrackInfo
说明
返回字幕轨道信息列表。
注意:此功能需要播放器高级版 11.7 版本开始支持。
接口
Future<List<TXTrackInfo>> getAudioTrackInfo() async;
参数说明
参考TXTrackInfo类
selectTrack
说明
选择轨道。
注意:此功能需要播放器高级版 11.7 版本开始支持。
接口
Future<void> selectTrack(int trackIndex) async;
参数说明
参数名 | 类型 | 描述 |
trackIndex | int | 轨道 index,trackIndex 轨道 index,通过[TXTrackInfo]的 trackIndex 获取。 |
deselectTrack
说明
取消选择轨道。
注意:此功能需要播放器高级版 11.7 版本开始支持。
接口
Future<void> deselectTrack(int trackIndex) async;
参数说明
参数名 | 类型 | 描述 |
trackIndex | int | 轨道 index,trackIndex 轨道 index,通过[TXTrackInfo]的 trackIndex 获取。 |
setStringOption
说明
设置扩展参数
接口
Future<void> setStringOption(String key, Object value) async
参数说明
参数名 | 类型 | 描述 |
key | String | 扩展参数键值。 |
value | Object | 扩展参数值。 |
FTXVodPlayConfig类
属性配置说明
参数名 | 类型 | 描述 |
connectRetryCount | int | 播放器重连次数,当 SDK 与服务器异常断开连接时,SDK 会尝试与服务器重连,通过该值设置 SDK 重连次数 |
connectRetryInterval | int | 播放器重连间隔,当 SDK 与服务器异常断开连接时,SDK 会尝试与服务器重连,通过该值设置两次重连间隔时间 |
timeout | int | 播放器连接超时时间 |
playerType | int | 播放器类型。0:点播,1:直播,2:直播回看 |
headers | Map | 自定义 http headers |
enableAccurateSeek | bool | 是否精确 seek,默认 true |
autoRotate | bool | 播放 mp4 文件时,若设为 true 则根据文件中的旋转角度自动旋转。旋转角度可在 PLAY_EVT_CHANGE_ROTATION 事件中获得。默认 true |
smoothSwitchBitrate | bool | 平滑切换多码率 HLS,默认 false。设为 false 时,可提高多码率地址打开速度;设为 true,在 IDR 对齐时可平滑切换码率 |
cacheMp4ExtName | String | 缓存 mp4 文件扩展名,默认 mp4 |
progressInterval | int | 设置进度回调间隔,若不设置,SDK 默认间隔0.5秒回调一次,单位毫秒 |
maxBufferSize | int | 最大播放缓冲大小,单位 MB。此设置会影响 playableDuration,设置越大,提前缓存的越多 |
maxPreloadSize | int | 预加载最大缓冲大小,单位:MB |
firstStartPlayBufferTime | int | 首缓需要加载的数据时长,单位 ms,默认值为100ms |
nextStartPlayBufferTime | int | 缓冲时(缓冲数据不够引起的二次缓冲,或者 seek 引起的拖动缓冲)最少要缓存多长的数据才能结束缓冲,单位 ms,默认值为250ms |
overlayKey | String | HLS 安全加固加解密 key |
overlayIv | String | HLS 安全加固加解密 Iv |
extInfoMap | Map | 一些不必周知的特殊配置 |
enableRenderProcess | bool | 是否允许加载后渲染后处理服务,默认开启,开启后超分插件如果存在,默认加载 |
preferredResolution | int | 优先播放的分辨率,preferredResolution = width * height |
mediaType | int | 设置媒资类型, 默认为 auto 类型。可选值有 TXVodConstants#MEDIA_TYPE_AUTO,AUTO 类型(默认值,自适应码率播放暂不支持)。 TXVodConstants#MEDIA_TYPE_HLS_VOD,HLS 点播媒资。 TXVodConstants#MEDIA_TYPE_HLS_LIVE,HLS 直播媒资。 TXVodConstants#MEDIA_TYPE_FILE_VOD,MP4 等通用文件点播媒资(从 11.7 版本开始支持)。 TXVodConstants#MEDIA_TYPE_DASH_VOD,DASH 点播媒资(从 11.7 版本开始支持)。 |
TXLivePlayerController类
initialize
说明
初始化 controller,请求分配共享纹理。
接口
Future<void> initialize({bool? onlyAudio}) async;
参数说明
参数名 | 类型 | 描述 |
onlyAudio | bool | 选填,是否是纯音频播放器 |
返回值说明
无
startLivePlay
注意
10.7版本开始,startPlay 变更为 startLivePlay,需要通过 {@link SuperPlayerPlugin#setGlobalLicense} 设置 Licence 后方可成功播放, 否则将播放失败(黑屏),全局仅设置一次即可。直播 Licence、短视频 Licence 和视频播放 Licence 均可使用,若您暂未获取上述 Licence ,可 快速免费申请测试版 Licence 以正常播放,正式版 License 需 购买。
说明
通过播视频 url 进行播放。
接口
Future<bool> play(String url) async;
参数说明
参数名 | 类型 | 描述 |
url | String | 要播放的视频 url |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 创建是否成功 |
pause
说明
暂停当前正在播放的视频。
接口
Future<void> pause() async;
参数说明
无
返回值说明
无
resume
说明
将当前处于暂停状态的视频恢复播放。
接口
Future<void> resume() async;
参数说明
无
返回值说明
无
stop
说明
停止当前正在播放的视频。
接口
Future<bool> stop({bool isNeedClear = false}) async;
参数说明
参数名 | 类型 | 描述 |
isNeedClear | bool | 是否清除最后一帧画面 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 停止是否成功 |
isPlaying
说明
当前播放器是否正在播放。
接口
Future<bool> isPlaying() async;
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
isPlaying | bool | 是否正在播放 |
setMute
说明
设置当前播放是否静音。
接口
Future<void> setMute(bool mute) async;
参数说明
参数名 | 类型 | 描述 |
mute | bool | 是否静音 |
返回值说明
无
setVolume
说明
设置视频的声音大小。
接口
Future<void> setVolume(int volume);
参数说明
参数名 | 类型 | 描述 |
volume | int | 视频声音大小,范围0~100 |
返回值说明
无
setLiveMode
说明
设置直播模式。
接口
Future<void> setLiveMode(TXPlayerLiveMode mode) async;
参数说明
参数名 | 类型 | 描述 |
mode | int | 直播模式。自动模式、极速模式、流畅模式 |
返回值说明
无
setAppID
说明
设置 appID,云控使用。
接口
Future<void> setAppID(int appId) async;
参数说明
参数名 | 类型 | 描述 |
appId | int | appId |
返回值说明
无
enableHardwareDecode
说明
开启/关闭硬解播放,设置后不会立即生效,需要重新播放才可生效。
接口
Future<bool> enableHardwareDecode(bool enable);
参数说明
参数名 | 类型 | 描述 |
enable | bool | 是否开启硬解 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 硬解/软解设置结果 |
enterPictureInPictureMode
说明
进入画中画模式,仅支持 Android 端,iOS 端直播目前暂不支持画中画模式。
接口
Future<int> enterPictureInPictureMode({String? backIconForAndroid, String? playIconForAndroid, String? pauseIconForAndroid, String? forwardIconForAndroid}) async;
参数说明
该参数只适用于 android 平台
参数名 | 类型 | 描述 |
backIcon | String | 回退按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
playIcon | String | 播放按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
pauseIcon | String | 暂停按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
forwardIcon | String | 快进按钮图标,由于 Android 平台限制,图标大小不得超过1M,可不传,不传则使用系统自带图标 |
返回值说明
参数名 | 值 | 描述 |
NO_ERROR | 0 | 启动成功,没有错误 |
ERROR_PIP_LOWER_VERSION | -101 | Android 版本过低,不支持画中画模式 |
ERROR_PIP_DENIED_PERMISSION | -102 | 画中画模式权限未打开,或者当前设备不支持画中画 |
ERROR_PIP_ACTIVITY_DESTROYED | -103 | 当前界面已经销毁 |
ERROR_IOS_PIP_DEVICE_NOT_SUPPORT | -104 | 设备或系统版本不支持(iPad iOS9+ 才支持PIP),只适用于 iOS |
ERROR_IOS_PIP_PLAYER_NOT_SUPPORT | -105 | 播放器不支持,只适用于 iOS |
ERROR_IOS_PIP_VIDEO_NOT_SUPPORT | -106 | 视频不支持,只适用于 iOS |
ERROR_IOS_PIP_IS_NOT_POSSIBLE | -107 | PIP 控制器不可用,只适用于 iOS |
ERROR_IOS_PIP_FROM_SYSTEM | -108 | PIP 控制器报错,只适用于 iOS |
ERROR_IOS_PIP_PLAYER_NOT_EXIST | -109 | 播放器对象不存在,只适用于 iOS |
ERROR_IOS_PIP_IS_RUNNING | -110 | PIP 功能已经运行,只适用于 iOS |
ERROR_IOS_PIP_NOT_RUNNING | -111 | PIP 功能没有启动,只适用于 iOS |
dispose
说明
销毁 controller,调用该方法会销毁掉所有通知事件,释放掉播放器。
接口
Future<void> dispose() async;
参数说明
无
返回值说明
无
switchStream
说明
切换播放流。
接口
Future<int> switchStream(String url) async;
参数说明
参数名 | 类型 | 描述 |
url | String | 需要切换的视频源 |
返回值说明
参数名 | 类型 | 描述 |
result | int | 切换结果 |
enableReceiveSeiMessage
说明
开启接收 SEI 消息。
接口
Future<int> enableReceiveSeiMessage(bool isEnabled, int payloadType) async
参数说明
参数名 | 类型 | 描述 |
isEnabled | bool | 是否开启接收 SEI 消息,默认关闭 |
payloadType | int | 指定接收 SEI 消息的 payloadType,支持 5、242、243,请与发送端的 payloadType 保持一致 |
返回值说明
参数名 | 类型 | 描述 |
result | int | 开启结果 |
showDebugView
说明
显示调试信息图层。
接口
Future<void> showDebugView(bool isShow) async
参数说明
参数名 | 类型 | 描述 |
isShow | bool | 是否显示调试图层 |
setProperty
说明
调用 V2TXLivePlayer 的高级 API 接口。
接口
Future<int> setProperty(String key, Object value) async
参数说明
参数名 | 类型 | 描述 |
key | String | 扩展参数键值。 |
value | Object | 扩展参数值。 |
返回值说明
参数名 | 类型 | 描述 |
result | int | 设置结果 |
getSupportedBitrate
说明
获取码流信息。
接口
Future<List<FSteamInfo>> getSupportedBitrate() async
setCacheParams
说明
设置播放器缓存自动调整的最小和最大时间 ( 单位:秒 )。
接口
Future<int> setCacheParams(double minTime, double maxTime) async
参数说明
参数名 | 类型 | 描述 |
minTime | double | 缓存自动调整最小时间。 |
maxTime | double | 缓存自动调整最大时间。 |
返回值说明
参数名 | 类型 | 描述 |
result | int | 设置结果 |
FTXLivePlayConfig类
属性配置说明
参数名 | 类型 | 描述 |
maxAutoAdjustCacheTime | double | 播放器缓存自动调整的最大时间,单位秒,取值需要大于0,默认值:5 |
minAutoAdjustCacheTime | double | 播放器缓存自动调整的最小时间,单位秒,取值需要大于0,默认值为1 |
connectRetryCount | int | 播放器遭遇网络连接断开时 SDK 默认重试的次数,取值范围1 - 10,默认值:3。 |
connectRetryInterval | int | 网络重连的时间间隔,单位秒,取值范围3 - 30,默认值:3。 |
TXVodDownloadController类
startPreLoad
说明
启动预下载。启动预下载前,请先设置好播放引擎的缓存目录
[SuperPlayerPlugin.setGlobalCacheFolderPath]
和缓存大小[SuperPlayerPlugin.setGlobalMaxCacheSize]
,这个设置是全局配置需和播放器保持一致,否则会造成播放缓存失效。接口
Future<int> startPreLoad(final String playUrl,final int preloadSizeMB,final int preferredResolution, {FTXPredownlodOnCompleteListener? onCompleteListener,FTXPredownlodOnErrorListener? onErrorListener,}) async
Future<void> startPreload(TXPlayInfoParams txPlayInfoParams, final int preloadSizeMB, final int preferredResolution, { FTXPredownlodOnCompleteListener? onCompleteListener, FTXPredownlodOnErrorListener? onErrorListener, FTXPredownlodOnStartListener? onStartListener, }) async
参数说明
参数名 | 类型 | 描述 |
playUrl | String | 要预下载的 url。 |
preloadSizeMB | int | 预下载的大小(单位:MB)。 |
preferredResolution | int | 期望分辨率,值为高x宽。可参考如720*1080。不支持多分辨率或不需指定时,传-1。 |
onCompleteListener | FTXPredownlodOnCompleteListener? | 预下载成功回调,全局。 |
onErrorListener | FTXPredownlodOnErrorListener | 预下载失败回调,全局。 |
TXPlayInfoParams:
参数名 | 类型 | 描述 |
appId | int | 应用appId。必填。 |
fileId | String | 文件id。必填。 |
url | String | 视频 url,与 fileId 只用填写一个,如果都填写,url 优先。 |
sign | String |
返回值说明
参数名 | 类型 | 描述 |
taskId | int | 任务 ID |
stopPreLoad
说明
停止预下载。
接口
Future<void> stopPreLoad(final int taskId) async
参数说明
参数名 | 类型 | 描述 |
taskId | int | 任务 ID |
返回值说明
无
startDownload
说明
开始下载视频。
接口
Future<void> startDownload(TXVodDownloadMediaInfo mediaInfo) async
参数说明
参数名 | 类型 | 描述 |
mediaInfo | TXVodDownloadMediaInfo | 下载任务信息 |
TXVodDownloadMediaInfo
参数名 | 类型 | 描述 |
playPath | String? | 缓存地址,获得到的视频缓存会有该值,启动下载可以不赋值。 |
progress | double? | 缓存进度,获得到的视频缓存会有该值,启动下载可以不赋值。 |
downloadState | int? | 缓存状态,获得到的视频缓存会有该值,启动下载可以不赋值。 |
userName | String? | 下载账户名称,用于区分不同账户的下载,传空则为 default。
不建议设置字符串长度过长。 |
duration | int? | 缓存视频总时长,Android 端单位为毫秒,iOS 为秒,获得到的视频缓存会有该值,启动下载可以不赋值。 |
playableDuration | int? | 视频已缓存时长,Android 端单位为毫秒,iOS 为秒,获得到的视频缓存会有该值,启动下载可以不赋值。 |
size | int? | 文件总大小,单位:byte。获得到的视频缓存会有该值,启动下载可以不赋值。 |
downloadSize | int? | 文件已下载的大小,单位:byte。获得到的视频缓存会有该值,启动下载可以不赋值。 |
url | String? | 需要下载的视频 url,url 下载必填,不支持嵌套 m3u8 和 mp4 下载。 |
dataSource | TXVodDownloadDataSource? | 需要下载的视频 fileId 信息,url 与该参数可只使用一个。 |
speed | int? | 下载速度,单位:KByte/秒。 |
isResourceBroken | bool? | 资源是否已损坏,如:资源被删除了。 |
TXVodDownloadDataSource
参数名 | 类型 | 描述 |
appId | int? | 下载文件对应的 appId,必填。 |
fileId | String? | 下载文件 Id,必填。 |
pSign | String? | 加密签名,加密视频必填。 |
quality | int? | 清晰度 ID,必传。 |
token | String? | 加密 token |
userName | String? | 下载账户名称,用于区分不同账户的下载,传空则为 default。
不建议设置字符串长度过长。 |
返回值说明
无
stopDownload
说明
停止下载。
接口
Future<void> stopDownload(TXVodDownloadMediaInfo mediaInfo) async
参数说明
参数名 | 类型 | 描述 |
mediaInfo | TXVodDownloadMediaInfo | 任务信息 |
返回值说明
无
setDownloadHeaders
说明
设置下载任务请求头。
接口
Future<void> setDownloadHeaders(Map<String, String> headers) async
参数说明
参数名 | 类型 | 描述 |
headers | Map<String, String> | 请求头信息 |
返回值说明
无
getDownloadList
说明
获得所有下载任务,包括已下载、正在下载以及下载错误的任务。
接口
Future<List<TXVodDownloadMediaInfo>> getDownloadList() async
参数说明
无
返回值说明
参数名 | 类型 | 描述 |
mediaInfoList | List<TXVodDownloadMediaInfo> | 任务列表,可通过对比 userName 来区分不同用户的下载 |
getDownloadInfo
说明
获得下载任务信息。
接口
Future<TXVodDownloadMediaInfo> getDownloadInfo(TXVodDownloadMediaInfo mediaInfo) async
参数说明
参数名 | 类型 | 描述 |
mediaInfo | TXVodDownloadMediaInfo | 任务信息 |
返回值说明
参数名 | 类型 | 描述 |
mediaInfo | TXVodDownloadMediaInfo | 缓存任务详情信息 |
setDownloadObserver
说明
获得下载任务信息。
接口
void setDownloadObserver(FTXDownlodOnStateChangeListener downlodOnStateChangeListener, FTXDownlodOnErrorListener downlodOnErrorListener)
参数说明
参数名 | 类型 | 描述 |
downlodOnStateChangeListener | FTXDownlodOnStateChangeListener | 任务下载状态回调 |
downlodOnErrorListener | FTXDownlodOnErrorListener | 任务下载错误回调 |
返回值说明
无
deleteDownloadMediaInfo
说明
删除下载的视频。
接口
Future<bool> deleteDownloadMediaInfo(TXVodDownloadMediaInfo mediaInfo) async
参数说明
参数名 | 类型 | 描述 |
mediaInfo | TXVodDownloadMediaInfo | 任务下载信息 |
返回值说明
参数名 | 类型 | 描述 |
result | bool | 删除结果 |