alert()的功能

您所在的位置:网站首页 flutter视频播放插件 alert()的功能

alert()的功能

2024-03-05 08:09| 来源: 网络整理| 查看: 265

简介

flutter_tencentplayer_plus 是基于腾讯云点播封装的flutter版的播放器插件 提供video_player 相似的api, 是flutter_tencentplayer的优化版本 ,flutter_tencentplayer 开源项目是我和大帅一起合作的一个开源项目,

支持功能

支持直播源

视频跳转

切换视频源

边下边播放

清晰度切换

设置播放速度

效果图

318a2558377335722f6319fdf7d1033d.gif

1.Setup flutter_tencentplayer_plus: ${last_version}orflutter_tencentplayer_plus: git: url: https://github.com/yxwandroid/flutter_tencentplayer_plus.git

For Android

project/android/build.gradle 添加依赖的aar:

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()def plugins = new Properties()def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')if (pluginsFile.exists()) { pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }}allprojects {repositories { google() jcenter()flatDir { dirs "${plugins.get("flutter_tencentplayer")}android/libs" } }}

AndroidManifest.xml 声明权限:

For Ios 

//项目的info.plist文件上添加如下权限NSAppTransportSecuritykey>NSAllowsArbitraryLoadskey>dict> 2.Usage(TencentPlayer) 1.初始化播放器

提供 asset、network、filePath、fileId四种方式播放

TencentPlayerController _controller;_MyAppState() { listener = () {if (!mounted) {return; } setState(() {}); };}initState() { _controller = TencentPlayerController.network('http://file.jinxianyun.com/testhaha.mp4', playerConfig: PlayerConfig())//_controller = TencentPlayerController.asset('static/tencent1.mp4')//_controller = TencentPlayerController.file('/storage/emulated/0/test.mp4')//_controller = TencentPlayerController.network(null, playerConfig: {auth: {"appId": 1252463788, "fileId": '4564972819220421305'}}) ..initialize().then((_) { setState(() {}); }); _controller.addListener(listener);} 2.PlayerConfig (播放器配置参数 ) _controller = TencentPlayerController.network(url, playerConfig: PlayerConfig()) PropTypeDefaultNoteautoPlaybooltrue是否自动播放loopboolfalse是否循环播放headersMap请求头cachePathString缓存路径(边播放边下载)progressIntervalint200播放进度回调频率(毫秒)startTimeint0哪里开始播放(秒)authMap云点播视频源appId&fileId 3.TencentPlayerValue (播放器回调) Text("总时长:" + _controller.value.duration.toString()) PropTypeNoteinitializedbool是否初始化完成从而显示播放器aspectRatiodouble用来控制播放器宽高比durationDuration时长positionDuration播放进度playableDuration缓冲进度isPlayingbool是否在播放sizeSize视频宽高isLoadingbool是否在加载netSpeedint视频播放网速ratedouble播放速度bitrateIndexint视频清晰度 4.Event (播放器事件)

a.跳转进度

_controller.seekTo(Duration(seconds: 5));

b.设置播放速度

_controller.setRate(1.5); // 1.0 ~ 2.0

c.切换播放源

controller?.removeListener(listener);controller?.pause();controller = TencentPlayerController.network(url, playerConfig: PlayerConfig(startTime: startTime ?? controller.value.position.inSeconds));controller?.initialize().then((_) {if (mounted) setState(() {});});controller?.addListener(listener);

d.切换清晰度(实质就是切换播放源)

3.Usage(Download)

离线下载, 支持断点续传(这里只支持m3u8视频、fileId), 支持多文件同时下载

1.初始化下载器 DownloadController _downloadController;_MyAppState() { downloadListener = () {if (!mounted) {return; } setState(() {}); };}initState() { _downloadController = DownloadController('/storage/emulated/0/tencentdownload', appId: 1252463788); _downloadController.addListener(downloadListener);} 2.Event (下载事件)

a. 下载

_downloadController.dowload("4564972819220421305", quanlity: 2);// _downloadController.dowload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8");

b. 暂停下载

_downloadController.pauseDownload("4564972819220421305");// _downloadController.stopDownload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8");

b. 取消下载

_downloadController.cancelDownload("4564972819220421305");// _downloadController.cancelDownload("http://1253131631.vod2.myqcloud.com/26f327f9vodgzp1253131631/f4bdff799031868222924043041/playlist.m3u8"); 3.DownloadValue (下载信息回调)

因为支持多文件同时下载,回调以Map返回,key为url/fileId

PropTypeNotedownloadStatusString"start"、"progress"、"stop"、"complete"、"error"quanlityint1: "FLU"、2: "SD"、3: "HD"、4: "FHD"、5: "2K"、6: "4K"durationintsizeint文件大小downloadSizeint已下载大小progressint已下载大小playPathString下载文件的绝对路径isStopbool是否暂停下载urlString下载的视频链接fileIdString下载的视频FileIderrorString下载的错误信息 4.Example 5.更新内容 1,升级android,IOS LiteAVSDK 6.8.7969 6.参考

腾讯云点播android本:

 https://github.com/tencentyun/SuperPlayer_Android/wiki

腾讯云点播ios版本:

 https://github.com/tencentyun/SuperPlayer_iOS

flutter_tencentplayer :

https://github.com/qq326646683/flutter_tencentplayer

67c19c5e6de219c5d9cb3eb229e8449a.gif 35519f9310955bdb613ae0ff266e714d.png

e595d75230285a07ce28a36759af6054.gif



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3