FlutterAliplayer class
Methods
-
addExtSubtitle(String url)
→ Future<void>
-
添加外挂字幕
-
clearScreen()
→ Future<void>
-
清空画面
-
create()
→ Future<void>
-
创建播放器
-
createThumbnailHelper(String thumbnail)
→ Future
-
设置缩略图URL
-
destroy()
→ Future<void>
-
销毁播放器
-
enableDowngrade(String source, AVPConfig config)
→ Future<void>
-
播放器降级设置
source 降级url
config 降级配置
-
enableHardwareDecoder()
→ Future
-
当前是否开启硬件解码
-
getBufferedPosition()
→ Future
-
获取已经缓存的位置
-
getCacheConfig()
→ Future
-
-
getCacheFilePath(String url)
→ Future
-
根据url获取缓存的文件名
-
getCacheFilePathWithVid(String vid, String format, String definition)
→ Future
-
根据vid获取缓存的文件名
-
getCacheFilePathWithVidAtPreviewTime(String vid, String format, String definition, String previewTime)
→ Future
-
根据vid+试看时长获取缓存的文件名
-
getConfig()
→ Future
-
获取播放器设置
-
getCurrentDownloadSpeed()
→ Future
-
获取当前下载速度
-
getCurrentPosition()
→ Future
-
获取当前播放位置
-
getCurrentTrack(int trackIdx)
→ Future
-
获取当前播放track
-
getCurrentUtcTime()
→ Future
-
获取当前播放位置的utc时间
-
getDuration()
→ Future
-
获取视频的长度
-
getLocalCacheLoadedSize()
→ Future
-
获取当前播放命中的缓存文件大小
-
getMediaInfo()
→ Future
-
获取媒体信息,包括track信息
-
getMirrorMode()
→ Future
-
获取渲染镜像模式
-
getOption(AVPOption key)
→ Future
-
获取播放器的参数
-
getPlayConfig()
→ Future<AVPConfig>
-
获取播放器设置
新版本增加,逐步替代getConfig
-
getPlayerName()
→ Future
-
获取播放时使用的播放器名字
-
getPropertyString(AVPPropertyKey key)
→ Future
-
根据key获取相应的信息
-
getRate()
→ Future
-
获取播放速率
-
getRotateMode()
→ Future
-
获取渲染旋转模式
-
getScalingMode()
→ Future
-
获取渲染填充模式
-
getUserData()
→ Future
-
设置UserData,用于一些全局API的透传,以区分player实例。
-
getVideoHeight()
→ Future
-
获取视频的高度
-
getVideoRotation()
→ Future
-
获取视频的旋转角度
-
getVideoWidth()
→ Future
-
获取视频的宽度
-
getVolume()
→ Future
-
获取播放器的音量(非系统音量)
-
isAutoPlay()
→ Future
-
当前是否自动播放
-
isLoop()
→ Future
-
当前是否循环播放
-
isMuted()
→ Future
-
当前是否静音
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
pause()
→ Future<void>
-
暂停播放
-
play()
→ Future<void>
-
开始播放
-
prepare()
→ Future<void>
-
播放准备
-
register()
→ void
-
-
reload()
→ Future<void>
-
重新加载
比如网络超时时,可以重新加载。
-
requestBitmapAtPosition(int position)
→ Future
-
获取指定位置的缩略图
-
seekTo(int position, int seekMode)
→ Future<void>
-
跳转到指定的播放位置
-
selectExtSubtitle(int trackIndex, bool enable)
→ Future<void>
-
选择外挂字幕
-
selectTrack(int trackIdx, {int accurate = -1})
→ Future<void>
-
根据trackIndex,切换清晰度
trackIdx 选择清晰度的index,-1代表自适应码率
accurate 0 为不精确 1 为精确 不填为忽略
-
sendCustomEvent(String args)
→ Future<void>
-
发送用户自定义事件
通过埋点事件回调onEventReportParams
-
setAutoPlay(bool isAutoPlay)
→ Future<void>
-
设置是否自动播放
-
setCacheConfig(Map map)
→ Future<void>
-
设置缓存配置
-
setConfig(Map map)
→ Future<void>
-
播放器设置,传递map
-
setDefaultBandWidth(int parse)
→ Future<void>
-
设置多码率时默认播放的码率
将会选择与之最接近的一路流播放
-
setEnableHardwareDecoder(bool isHardWare)
→ Future<void>
-
设置是否开启硬件解码
-
setEventReportParamsDelegate(int argt)
→ Future
-
设置埋点事件回调onEventReportParams代理
-
setFastStart(bool fastStart)
→ Future<void>
-
设置视频快速启动
-
setFilterConfig(String configJson)
→ Future<void>
-
设置滤镜配置
在prepare之前调用此方法。如果想更新,调用updateFilterConfig
-
setFilterInvalid(String target, String invalid)
→ Future<void>
-
开启关闭滤镜
-
setLiveSts({String? url, String? accessKeyId, String? accessKeySecret, String? securityToken, String? region, String? domain, String? app, String? stream, EncryptionType? encryptionType, List<String>? definitionList, dynamic playerId})
→ Future<void>
-
使用LiveSts 方式播放直播流
-
setLoop(bool isloop)
→ Future<void>
-
设置是否循环播放
-
setMaxAccurateSeekDelta(int delta)
→ Future<void>
-
设置精准seek的最大间隔
-
setMirrorMode(int mode)
→ Future<void>
-
设置渲染镜像模式
-
setMuted(bool isMuted)
→ Future<void>
-
设置是否静音
-
setOnCompletion(OnCompletion completion)
→ void
-
播放器事件回调,播放完成事件
-
setOnError(OnError onError)
→ void
-
错误代理回调
-
setOnEventReportParams(OnEventReportParams eventReportParams)
→ void
-
埋点事件参数回调
-
setOnInfo(OnInfo info)
→ void
-
视频当前播放位置回调
-
setOnLoadingStatusListener({required OnLoadingBegin loadingBegin, required OnLoadingProgress loadingProgress, required OnLoadingEnd loadingEnd})
→ void
-
视频缓冲相关回调
loadingBegin: 播放器事件回调,缓冲开始事件
loadingProgress: 视频缓冲进度回调
loadingEnd: 播放器事件回调,缓冲完成事件
-
setOnPrepared(OnPrepared prepared)
→ void
-
播放器事件回调,准备完成事件
-
setOnRenderingStart(OnRenderingStart renderingStart)
→ void
-
播放器事件回调,首帧显示事件
-
setOnSeekComplete(OnSeekComplete seekComplete)
→ void
-
-
setOnSeekLiveCompletion(OnSeekLiveCompletion seekLiveCompletion)
→ void
-
-
setOnSeiData(OnSeiData seiData)
→ void
-
SEI回调
-
setOnSnapShot(OnSnapShot snapShot)
→ void
-
获取截图回调
-
setOnStateChanged(OnStateChanged stateChanged)
→ void
-
播放器状态改变回调
-
setOnSubtitleExtAdded(OnSubtitleExtAdded onSubtitleExtAdded)
→ void
-
外挂字幕被添加
-
字幕头信息回调
ass字幕,如果实现了此回调,则播放器不会渲染字幕,由调用者完成渲染,否则播放器自动完成字幕的渲染
-
setOnSubtitleHide(OnSubtitleHide onSubtitleHide)
→ void
-
字幕隐藏回调
-
setOnSubtitleShow(OnSubtitleShow onSubtitleShow)
→ void
-
字幕显示回调
-
setOnThumbnailGetListener({required OnThumbnailGetSuccess onThumbnailGetSuccess, required OnThumbnailGetFail onThumbnailGetFail})
→ void
-
获取缩略图相关回调
onThumbnailGetSuccess: 获取缩略图成功回调
onThumbnailGetFail: 获取缩略图失败回调
-
setOnThumbnailPreparedListener({required OnThumbnailPreparedSuccess preparedSuccess, required OnThumbnailPreparedFail preparedFail})
→ void
-
-
setOnTimeShiftUpdater(OnTimeShiftUpdater timeShiftUpdater)
→ void
-
-
setOnTrackChanged(OnTrackChanged onTrackChanged)
→ void
-
track切换完成回调
-
setOnTrackReady(OnTrackReady onTrackReady)
→ void
-
获取track信息回调
-
setOnVideoSizeChanged(OnVideoSizeChanged videoSizeChanged)
→ void
-
视频大小变化回调
-
setPictureInPictureEnableForIOS(bool enable)
→ Future
-
设置画中画功能开启/关闭
仅对iOS系统有效,在iOS 15以上系统应用
需要在onPrepared回调方法中调用
-
setPlayConfig(AVPConfig config)
→ Future<void>
-
播放器设置
新版本增加,逐步替代setConfig
-
setPlayerView(int viewId)
→ Future<void>
-
设置播放器的视图playerView
-
setPreferPlayerName(String playerName)
→ Future<void>
-
设置期望使用的播放器名字
-
setPrivateService(Int8List data)
→ Future<void>
-
-
setRate(double mode)
→ Future<void>
-
设置播放速率
0.5-2.0之间,1为正常播放
-
setRotateMode(int mode)
→ Future<void>
-
设置渲染旋转模式
-
setScalingMode(int mode)
→ Future<void>
-
设置渲染填充模式
-
setStreamDelayTime(int trackIdx, int time)
→ Future<void>
-
设置某路流相对于主时钟的延时时间
默认是0, 目前只支持外挂字幕
-
setTraceID(String traceID)
→ Future
-
设置traceID,用于跟踪debug信息
通过埋点事件回调onEventReportParams
-
setUrl(String url)
→ Future<void>
-
使用url方式来播放视频
-
setUserData(String userData)
→ Future<void>
-
设置UserData,用于一些全局API的透传,以区分player实例。
-
setVidAuth({String? vid, String? region, String? playAuth, String? playConfig, List<String>? definitionList, String quality = "", bool forceQuality = false, dynamic playerId})
→ Future<void>
-
使用vid+playauth方式播放
可参考:https://help.aliyun.com/document_detail/57294.html
playConfig 从generatePlayerConfig获取
-
setVideoBackgroundColor(dynamic color)
→ Future<void>
-
设置视频的背景色
-
setVidMps(Map<String, dynamic> mpsInfo)
→ Future<void>
-
用vid和MPS信息来播放视频
可参考:https://help.aliyun.com/document_detail/53522.html?spm=5176.doc53534.2.5.mhSfOh
-
setVidSts({String? vid, String? region, String? accessKeyId, String? accessKeySecret, String? securityToken, String? playConfig, List<String>? definitionList, String quality = "", bool forceQuality = false, dynamic playerId})
→ Future<void>
-
用vid和sts来播放视频
sts可参考:https://help.aliyun.com/document_detail/28756.html?spm=a2c4g.11186623.4.4.6f554c07q7B7aS
playConfig 从generatePlayerConfig获取
-
setVolume(double volume)
→ Future<void>
-
设置播放器的音量(非系统音量)
范围0.0~2.0,当音量大于1.0时,可能出现噪音,不推荐使用
-
snapshot(String path)
→ Future
-
截图
信息可在获取截图回调中取得
-
stop()
→ Future<void>
-
停止播放
-
toString()
→ String
-
A string representation of this object.
inherited
-
updateFilterConfig(String target, Map options)
→ Future<void>
-
更新滤镜配置
-
updateLiveStsInfo(String accId, String accKey, String token, String region)
→ Future
-
更新LiveSts信息
-
wrapWithPlayerId({dynamic arg = ''})
→ dynamic
-
接口部分
Static Methods
-
addBlackDevice(String type, String model)
→ Future<void>
-
type : {FlutterAvpdef.BLACK_DEVICES_H264 / FlutterAvpdef.BLACK_DEVICES_HEVC}
-
addVidPlayerConfigByIntValue(String key, int value)
→ Future<void>
-
添加vid的playerconfig参数
key: 对应playerConfig中的参数名字
value: 对应key参数的整形值
调用之前必须先执行createVidPlayerConfigGenerator
-
addVidPlayerConfigByStringValue(String key, String value)
→ Future<void>
-
添加vid的playerconfig参数
key: 对应playerConfig中的参数名字
value: 对应key参数的值
调用之前必须先执行createVidPlayerConfigGenerator
Android 设置加密类型:key 为 EncryptType,value 可选:Unencrypted,AliyunVoDEncryption,HLSEncryption
-
clearCaches()
→ Future<void>
-
清理本地缓存,需要先应用配置缓存,才能清理本地缓存
-
createDeviceInfo()
→ Future
-
return deviceInfo
-
createVidPlayerConfigGenerator()
→ Future<void>
-
创建媒体播放自定义设置对象
-
enableConsoleLog(bool enable)
→ Future<void>
-
是否打开log输出
-
enableHttpDns(bool enable)
→ Future<void>
-
是否开启httpDNS
默认不开启
-
enableHWAduioTempo(bool enable)
→ Future<void>
-
设置是否使能硬件提供的音频变速播放能力
关闭后则使用软件实现音频的倍速播放,pcm回调数据的格式和此设置关联;默认打开
-
enableLocalCache(bool enable, String maxBufferMemoryKB, String localCacheDir, DocTypeForIOS docTypeForIOS)
→ Future<void>
-
开启本地缓存
开启之后,就会缓存到本地文件中。
-
enableNetworkBalance(bool enable)
→ Future<void>
-
是否开启内建预加载网络平衡策略,播放过程中,自动控制预加载的运行时机。默认开启。
enable 是否开启
-
forceAudioRendingFormat(String force, String fmt, String channels, String sample_rate)
→ Future<void>
-
强制音频渲染器采用指定的格式进行渲染
如果设定的格式设备不支持,则无效,无效值将被忽略,使用默认值;pcm回调数据的格式和此设置关联;默认关闭
-
generatePlayerConfig()
→ Future<String>
-
生成playerConfig
调用之前必须先执行createVidPlayerConfigGenerator
-
getDeviceUUID()
→ Future
-
获取设备UUID
-
getLogLevel()
→ Future
-
获取日志级别
仅对Android系统有效
-
getSDKVersion()
→ Future
-
静态方法
获取SDK版本号信息
-
isFeatureSupport(SupportFeatureType type)
→ Future<bool>
-
返回某项功能是否支持
type 是否支持的功能的类型。 参考SupportFeatureType。
-
netWorkReConnect()
→ Future<void>
-
重连所有网络连接
网络路由发生变化后,调用此接口,可以让播放器所有的连接切换到新的路由上去。
-
setAudioSessionTypeForIOS(AliPlayerAudioSesstionType type)
→ Future<void>
-
控制音频设置
默认按照播放器SDK自身设置,只对iOS平台有效
替代旧版本的
enableMix
-
setCacheFileClearConfig(String expireMin, String maxCapacityMB, String freeStorageMB)
→ Future<void>
-
本地缓存文件自动清理相关的设置
-
setDNSResolve(String host, String ip)
→ Future<void>
-
设置域名对应的解析ip
host 域名,需指定端口(http默认端口80,https默认端口443)。例如player.alicdn.com:443
ip 相应的ip,设置为空字符串清空设定。
-
setFairPlayCertIDForIOS(String certID)
→ Future<void>
-
设置fairPlay的用户证书id
仅对iOS系统有效
-
setHlsUriToken(String mtsHlsUriToken)
→ Future<void>
-
HLS标准加密设置UriToken
mtsHlsUriToken 字符串
调用之前必须先执行createVidPlayerConfigGenerator
-
setIpResolveType(AVPIpResolveType type)
→ Future<void>
-
设置解析ip类型
-
setLogLevel(int level)
→ Future<void>
-
设置日志打印回调block
logLevel log输出级别
-
setPreviewTime(int previewTime)
→ Future<void>
-
设置预览时间
previewTime 预览时间,单位为秒
调用之前必须先执行createVidPlayerConfigGenerator
-
setUseHttp2(bool use)
→ Future<void>
-
设置是否使用http2