FlutterAliplayer class

Constructors

FlutterAliplayer.init(String? id)

Properties

hashCode int
The hash code for this object.
no setterinherited
onPrepared OnPrepared?
getter/setter pair
onRenderingStart OnRenderingStart?
getter/setter pair
onStateChanged OnStateChanged?
getter/setter pair
playerId String
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

addExtSubtitle(String url) Future<void>
添加外挂字幕
clearScreen() Future<void>
清空画面
clearScreenSync() Future<void>
清空同步画面
create() Future<void>
创建播放器
createThumbnailHelper(String thumbnail) Future
设置缩略图URL
currentTrack(TrackType trackIdx) Future<AVPTrackInfo?>
获取当前播放track
destroy() Future<void>
销毁播放器(同步) 请使用 release 方法
enableDowngrade(String source, AVPConfig config) Future<void>
播放器降级设置 source 降级url config 降级配置
enableHardwareDecoder() Future
当前是否开启硬件解码
getAlphaRenderMode() Future
获取Alpha渲染模式
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<AVPTrackInfo?>
获取当前播放track
getCurrentUtcTime() Future
获取当前播放位置的utc时间
getDuration() Future<int>
获取视频的长度
getLocalCacheLoadedSize() Future
获取当前播放命中的缓存文件大小
getMediaInfo() Future
获取媒体信息,包括track信息
getMirrorMode() Future
获取渲染镜像模式
getOption(AVPOption key) Future
获取播放器的参数
getPlayConfig() Future<AVPConfig>
获取播放器设置 新版本增加,逐步替代getConfig
getPlayedDuration() Future
获取播放器时长
getPlayerName() Future
获取播放时使用的播放器名字
getPropertyString(AVPPropertyKey key) Future
根据key获取相应的信息
getRate() Future
获取播放速率
getRotateMode() Future
获取渲染旋转模式
getScalingMode() Future
获取渲染填充模式
getSubMediaInfo() Future
获取媒体子流信息,包括track信息
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>
播放准备
release() Future<void>
销毁播放器(同步)
releaseAsync() Future<void>
异步释放播放器
reload() Future<void>
重新加载 比如网络超时时,可以重新加载。
requestBitmapAtPosition(int position) Future
获取指定位置的缩略图
seekTo(int position, int seekMode) Future<void>
跳转到指定的播放位置 position - 跳转位置 seekMode - Seek 模式,类型为 SeekMode
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
setAlphaRenderMode(int mode) Future<void>
Alpha渲染模式,支持alpha在右侧、左侧、上侧、下侧,默认值无
setAutoPlay(bool isAutoPlay) Future<void>
设置是否自动播放
setCacheConfig(Map map) Future<void>
设置缓存配置
setConfig(Map map) Future<void>
播放器设置,传递map
setConvertURLCallback(dynamic callback(String, String)) Future<void>
播放前转换播放URL。 对于视频播放,请在播放前尝试转换播放URL
setDefaultBandWidth(int parse) Future<void>
设置多码率时默认播放的码率 将会选择与之最接近的一路流播放
setDrmCallback(dynamic requestProvision(Object, Object), dynamic requestKey(Object, Object)) Future<void>
设置加载url的hash值回调。如果不设置,SDK使用md5算法。
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
播放器事件回调,准备完成事件
setOnPreRenderFrameCallback(dynamic onPreRenderFrame(Object)) Future<void>
设置预渲染帧回调。
setOnRenderFrameCallback(dynamic onRenderFrame(Object)) Future<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
播放器状态改变回调
setOnStreamSwitchedListener(OnStreamSwitchedSuccess? onSuccess, OnStreamSwitchedFail? onFail) Future<void>
设置切换清晰度监听(直播流)
setOnSubtitleExtAdded(OnSubtitleExtAdded onSubtitleExtAdded) → void
外挂字幕被添加
setOnSubtitleHeader(OnSubtitleHeader onSubtitleHeader) → void
字幕头信息回调 ass字幕,如果实现了此回调,则播放器不会渲染字幕,由调用者完成渲染,否则播放器自动完成字幕的渲染
setOnSubtitleHide(OnSubtitleHide onSubtitleHide) → void
字幕隐藏回调
setOnSubtitleShow(OnSubtitleShow onSubtitleShow) → void
字幕显示回调
setOnSubTrackReady(OnSubTrackReady onSubTrackReady) → void
获取 子流 track信息回调
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信息回调
setOnVideoRendered(OnVideoRendered onVideoRendered) → void
播放器渲染信息回调
setOnVideoSizeChanged(OnVideoSizeChanged videoSizeChanged) → void
视频大小变化回调
setOption(int opt1, Object opt2) Future<void>
设置特定功能选项
setOutputAudioChannel(int chanel) Future<void>
设置输出声道,若输入源是双声道,则支持切换为左声道、右声道;若输入源是单声道,则设置无效。该设置会同时影响音频渲染及PCM数据回调
setPictureInPictureEnableForIOS(bool enable) Future
设置画中画功能开启/关闭 仅对iOS系统有效,在iOS 15以上系统应用 需要在onPrepared回调方法中调用
setPictureInPictureShowMode(int showMode) Future<void>
为画中画功能设置显示模式
setPipController({required OnPipStatusChanged pipStatusChanged, required OnWillStartPip willStartPip, required OnWillStopPip willStopPip}) → void
画中画播放状态 pipStatusChanged:播放器状态 willStartPip:画中画将要开始 willStopPip:画中画将要结束
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为正常播放 预计后续版本移除
setRenderFrameCallbackConfig(bool mAudioData, bool mVideoData) Future<void>
软解码时生效,是否只返回底层音频数据地址,mAudioDataAddr默认为false, 是否只返回底层视频数据地址,默认为true
setRotateMode(int mode) Future<void>
设置渲染旋转模式 RotateMode
setScalingMode(int mode) Future<void>
设置渲染填充模式 ScaleMode 渲染填充模式
setSpeed(double speed) Future<void>
设置播放速率 0.5-2.0之间,1为正常播放
setStartTime(int time, int seekMode) Future<void>
以指定位置起播,每次prepare前调用,仅生效一次。(用于代替原先的起播前seek的方案) position - 跳转位置 seekMode - Seek 模式,类型为 SeekMode
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>
停止播放
switchStream(String url) 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
接口部分

Operators

operator ==(Object other) bool
The equality operator.
inherited

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>
开启本地缓存 开启之后,就会缓存到本地文件中。 setCacheFileClearConfig 缓存相关配置
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<int>
获取日志级别 开启帧级别日志的情况下,日志级别为trace LogLevel 日志级别
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,设置为空字符串清空设定。
setEncryptType(EncryptType type) Future<void>
添加vid的playerconfig参数 加密类型 EncryptType 调用之前必须先执行createVidPlayerConfigGenerator
setFairPlayCertIDForIOS(String certID) Future<void>
设置fairPlay的用户证书id 仅对iOS系统有效
setHlsUriToken(String mtsHlsUriToken) Future<void>
HLS标准加密设置UriToken mtsHlsUriToken 字符串 调用之前必须先执行createVidPlayerConfigGenerator
setIpResolveType(AVPIpResolveType type) Future<void>
设置解析ip类型
setLogInfoCallBack(OnLogInfoCallback? callback) Future<void>
设置日志打印回调 OnLogInfoCallback
setLogLevel(int level) Future<void>
设置日志打印回调block logLevel log输出级别 LogLevel 输出级别
setLogOption(int value) Future<void>
设置帧级别日志 value 0代表关闭 1代表打开
setPreviewTime(int previewTime) Future<void>
设置预览时间 previewTime 预览时间,单位为秒 调用之前必须先执行createVidPlayerConfigGenerator
setUseHttp2(bool use) Future<void>
设置是否使用http2