首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何获取flutter中视频的总观看时长或播放时长?

在Flutter中获取视频的总观看时长或播放时长可以通过使用video_player插件来实现。video_player是一个Flutter插件,用于在应用程序中播放本地或网络视频。

要获取视频的总观看时长或播放时长,可以使用video_player插件提供的控制器(VideoPlayerController)和监听器(VideoPlayerListener)。

首先,需要在pubspec.yaml文件中添加video_player插件的依赖:

代码语言:txt
复制
dependencies:
  video_player: ^2.2.5

然后,在Flutter代码中导入video_player插件:

代码语言:txt
复制
import 'package:video_player/video_player.dart';

接下来,创建一个VideoPlayerController对象并加载视频文件:

代码语言:txt
复制
VideoPlayerController _controller;

@override
void initState() {
  super.initState();
  _controller = VideoPlayerController.asset('assets/video.mp4')
    ..initialize().then((_) {
      setState(() {});
    });
}

在初始化完成后,可以通过_controller对象获取视频的总时长:

代码语言:txt
复制
Duration totalDuration = _controller.value.duration;

要获取视频的播放时长,可以使用_controller对象的value属性中的position属性:

代码语言:txt
复制
Duration currentPosition = _controller.value.position;

如果需要实时获取视频的播放时长,可以使用_controller对象的addListener方法来添加一个监听器:

代码语言:txt
复制
_controller.addListener(() {
  Duration currentPosition = _controller.value.position;
  // 处理当前播放时长
});

以上是获取Flutter中视频的总观看时长或播放时长的基本步骤。根据具体的应用场景,你可以根据需要进行进一步的处理和展示。

推荐的腾讯云相关产品:腾讯云点播(云点播是腾讯云提供的一站式音视频点播解决方案,支持存储、转码、加密、播放等功能)

腾讯云点播产品介绍链接地址:https://cloud.tencent.com/product/vod

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • EasyNVR如何配置用户视频播放时长

    在上期文章中和大家分享了关于EasyNVR直播鉴权功能及应用意义,通过直播鉴权配置,管理员可以允许用户必须登录才能播放平台分享视频流地址,极大保障视频资源安全与隐私性。...有很多用户在使用EasyNVR时都遇到一个同样需求,那就是将分发流地址分享给用户播放时,如何控制用户播放时长呢?因为,如果有用户一直在拉流播放,则会一直消耗服务器带宽资源。...如果能控制用户播放时长,则会大大降低服务器消耗,节省带宽,并且也可以确保视频安全性。EasyNVR平台在设计开发之初,已经考虑到此需求,对视频播放时长控制已经做过设计。...将值设置为true,即可打开流地址鉴权,并可以设置播放时长权限,如图所示:用户可以根据自己需求,自由设置分享视频播放时长,功能灵活性很强。...EasyNVR平台是基于RTSP/Onvif协议视频接入、处理及分发平台,能够实现设备接入、实时视频直播、录像、告警、级联等丰富灵活视频功能。

    73720

    播放器卡顿优化丨音视频工业实战

    播放卡顿是播放体验另一个非常重要指标,字节跳动曾经提供过一份数据:降低 7.7% 的卡顿率和 9.8% 的卡顿时长,带来了 0.22% 用户观看时长提升。...我们可以通过下面这些指标来反映播放卡顿情况: 卡顿率,在一次播放中发生过卡顿播放次数在播放次数占比。 平均卡顿时长,用户观看视频发生卡顿时长与总的卡顿次数比值。...因为一次播放卡顿过 1 次多次都算是卡顿过了,所以卡顿率不能很好反应出用户卡顿次数多不多,卡顿时间有多久。百秒卡顿次数能反映用户卡顿次数,但是不太能反映出用户的卡顿时长。...从推流端来看,我们可以计算直播间 ACU(直播间用户观看时长/直播间推流时长)来评估直播间热度及影响力,对于大主播我们可以推码率高一点流来提升画质体验,对于数据较多而观众分散小主播我们则可以适当降低推流码率...下图示例了一种倍速播放策略: 倍速播放策略 max-play-rate 和 min-play-rate 表示播放最大播放速率和最低播放速率。通常来讲,播放速率过低过高会影响视频观看体验。

    2.2K20

    HTML5 VideoAPI,打造自己Web视频播放

    每个浏览器播放控件都不太一样,但用途都一样,都可以控制开始和结束,跳到新位置和调节音量 autoplay:autoplay:如果出现该属性,则视频在就绪后马上播放。...meta:告诉浏览器先获取音频文件开头数据块,从而足以确定一些基本信息(比如音频时长) none:**告诉浏览器不必预先下载。恰当地利用这些值,可以节省带宽。...) paused:设置返回音频/视频是否暂停 currentTime:设置返回音频/视频的当前播放位置(以秒计) ended:返回音频/视频播放是否已结束 更多属性、事件、方法请查看w3school...播放、暂停 时长和当前播放时长显示 播放进度条 全屏显示 1.播放控件 视频播放器 <div class...前面代码其实已经设置了相关代码,此时我们只需要把获取毫秒数转换成我们需要时间格式即可,提供getFormatTime()函数: function getFormatTime(time) {

    4.9K40

    功能速递 | 腾讯云音视频播放器SDK新增短视频秒开组件、加密画中画等高级功能

    ,为用户提供直播、点播场景下流畅稳定视频播放能力,覆盖泛娱乐、电商、教育等多样化音视频业务场景,支持Web/H5、iOS、Android、Flutter平台。...短视频组件通过预播放、预下载、播放器复用和精准流量控制等技术,实现极速首帧、滑动丝滑优质播放体验,从而提升用户播放量和停留时长。...画中画切换过程效果演示 VR播放插件 VR 播放组件可用于 VR 全景视频播放播放可以通过陀螺仪转动手势操作来改变视角,360度无死角观看全景视频。...目前 VR 播放组件可支持配置单目双目模式,单目模式适用于裸眼观看全景视频,双目模式适用于 VR 眼镜等设备观看。此外 iOS 端支持180度半球模型全景视频,可适应更多使用场景。...RT-Cube™ 提供All in One 终端SDK,助力客户一键获取众多腾讯云音视频能力。

    48520

    iOS音视频接入- TRTC计费及套餐介绍

    注:此基础服务计费介绍不包含将 TRTC 房间内音频流旁路到云直播系统,让观众通过直播 CDN 观看。...低延时直播模式下,支持10万观众同时播放播放延时低至1000ms。 CDN 旁路直播模式下,观众数量无限制。 语音通话 即两人多人语音通话,支持 48kHz,支持双声道。...低延时直播模式下,支持10万观众同时播放播放延时低至1000ms。 CDN 旁路直播模式下,观众数量无限制。 视频通话 即两人多人视频通话,支持720P、1080P高清画质。...语音时长 视频互动直播场景下语音时长 = 用户在 TRTC 房间内停留时长 - 接收视频画面时停留时长。...计算公式: 消耗流量 = 码率 / 8 × 所有人观看时长。 说明:所有人观看时长 = 平均在线人数 × 人均观看时长,例如:1个人看60分钟和60个人都看1分钟时长相同。

    3.3K21

    实时音视频开发学习15 - 计费问题

    免费试用包计费方式: 按照1:1:1:1分别抵扣语音、标清、高清和超清时长,即各类型计费1分钟均扣除1分钟试用套餐包时长。根据各类型用量实际产生时间实时从试用套餐包扣除相应分钟数。...语音互动直播计费 用量统计方式 实时音视频 TRTC 按 房间 内所有用户产生语音时长来统计视频互动直播服务用量。用户在 TRTC 房间内停留时长计为该用户语音时长。...预付费套餐包套餐时长和使用语音时长按照1:1形式进行扣除,以下为套餐包类型 套餐包可以看出套餐包时长越长折扣越大,收益越多。...标准转码功能和添加水印功能为拉流触发,播放才会产生标准转码费用;混流为推流触发,即使不播放也会产生标准转码费用。...语音时长等与用户在TRTC房间停留时长减去接收视频画面停留时间长,同一个用户订阅多路音视频流时语音时长不会叠加,而用户在同一个房间多次进出会计算其语音时长,精度为秒级。

    2.2K30

    大厂技术实现 | 爱奇艺短视频推荐业务多目标优化实践 @推荐与计算广告系列

    ⛵ 大厂技术实现数据集下载(百度网盘):公众号『ShowMeAI研究中心』回复『大厂』,或者点击 这里 获取本文 爱奇艺短视频推荐业务多目标优化实践 『2021微信大数据挑战赛数据集』⭐ ShowMeAI...图片在爱奇艺场景,分别训练点击二分类模型以及观看时长预估回归模型。对于融合参数,离线采用grid search方式调参获得组合值。...图片四、【实现方案3】 多任务学习:网络设计与调优爱奇艺社区化建设和业务趋势下,feed流推荐效果需要:保证用户观看时长观看视频数、点击率等基础指标提升稳定;引导用户评论、点赞等互动。...图片如图所示,在爱奇艺feed流场景,用户观看时长或者互动行为都是发生在点击之后,可以把『点击&时长』,或者『点击&互动』作为ESMM迭代方向。...基于 PSO 算法进行多目标搜参,首先初始化参数;通过乘法融合得到每个视频最终排序分,并计算各子目标的 AUC;根据指标的重要性对完播率分类 AUC、播放时长PNR等确定权重,定义优化目标:

    2K64

    TRTC Android端开发接入学习之计费和套餐(十)

    免费试用包计费方式: 按照1:1:1:1分别抵扣语音、标清、高清和超清时长,即各类型计费1分钟均扣除1分钟试用套餐包时长。根据各类型用量实际产生时间实时从试用套餐包扣除相应分钟数。...用户在 TRTC 房间内停留时长计为该用户语音时长。同时订阅了多路音频流同一个用户语音时长不会被叠加计算。用户成功进入 TRTC 房间后,无论是否接收音频数据,都会计算语音时长。...预付费套餐包套餐时长和使用语音时长按照1:1形式进行扣除,以下为套餐包类型 QQ截图20200925143649.png 套餐包可以看出套餐包时长越长折扣越大,收益越多。...标准转码功能和添加水印功能为拉流触发,播放才会产生标准转码费用;混流为推流触发,即使不播放也会产生标准转码费用。...语音时长等与用户在TRTC房间停留时长减去接收视频画面停留时间长,同一个用户订阅多路音视频流时语音时长不会叠加,而用户在同一个房间多次进出会计算其语音时长,精度为秒级。

    1.7K10

    【技术分享】 Youtube 短视频推荐系统变迁:从机器学习到深度学习

    ,大概逻辑如下: 3.jpg 种子视频生成是根据用户历史正向行为获取,比如用户收藏、赞、加入播放列表、评分等。...视频质量 v 用户切合程度 v 多样性 视频质量主要是根据用户反馈信息来得到,比如收看数目、观看时长、评分、评论、赞、分享等,同时还有视频上传时间之类信息 用户切合度是取决于用户对种子视频喜欢程度...,正样本权重是播放时长Ti,负样本权重是1,而最后一层模型是weighted logistic regression;那么LR学到odds为: 10.jpg 其中N是样本数量,k是正样本数量,Ti...是第i正样本观看时长。...那么问题就来了,他们是如何让用户在这么多视频快速发现自己感兴趣内容呢?

    1.2K150

    Youtube 短视频推荐系统变迁:从机器学习到深度学习

    Youtube是全球最大视频分享平台,用户量高达10亿+,每天上传UGC和PGC都是百万级别。那么问题就来了,他们是如何让用户在这么多视频快速发现自己感兴趣内容呢?...,大概逻辑如下: 种子视频生成是根据用户历史正向行为获取,比如用户收藏、赞、加入播放列表、评分等。...v 多样性 视频质量主要是根据用户反馈信息来得到,比如收看数目、观看时长、评分、评论、赞、分享等,同时还有视频上传时间之类信息 用户切合度是取决于用户对种子视频喜欢程度,以及视频之间相似程度...,正样本权重是播放时长 Ti,负样本权重是1,而最后一层模型是weighted logistic regression;那么LR学到odds为: 其中 N 是样本数量,k 是正样本数量,Ti...是第i正样本观看时长

    6.1K20

    90%直播高手都会遇到这些坑

    @某公司技术工程师:如何将一个时长为16小时直播流,进行自动抽取录制,最后生成十几分钟视频?...▲自动剪辑精彩集锦步骤 NO.4 直播播放问题 @某公司技术工程师:如何给直播加防盗链机制?...@某公司技术工程师:我开了很多房间直播,我如何知道一个特定房间流量呢? @直播技术支持回复@某公司技术工程师: 查询某条直播流统计信息(如观看人数、带宽、码率、帧率等)获取统计信息,如图 ?...@直播技术支持回复@某公司技术工程师: 一个直播频道流量消耗=(直播码率/8)*直播观看时长(秒)*观看人数 ?...▲直播流量计算公式 举个例子: 直播码率为500kbps,直播时长为1小时,观看人数为100人,则消耗流量约为:22.5GB。

    2.8K64

    Youtube 短视频推荐系统变迁:从机器学习到深度学习

    作者 | 赖博先 Youtube是全球最大视频分享平台,用户量高达10亿+,每天上传UGC和PGC都是百万级别。那么问题就来了,他们是如何让用户在这么多视频快速发现自己感兴趣内容呢?...,大概逻辑如下: 种子视频生成是根据用户历史正向行为获取,比如用户收藏、赞、加入播放列表、评分等。...v 多样性 视频质量主要是根据用户反馈信息来得到,比如收看数目、观看时长、评分、评论、赞、分享等,同时还有视频上传时间之类信息。...,正样本权重是播放时长 Ti,负样本权重是1,而最后一层模型是weighted logistic regression;那么LR学到odds为: 其中 N 是样本数量,k 是正样本数量,Ti 是第...i正样本观看时长

    921120

    Youtube 短视频推荐系统变迁:从机器学习到深度学习

    Youtube是全球最大视频分享平台,用户量高达10亿+,每天上传UGC和PGC都是百万级别。那么问题就来了,他们是如何让用户在这么多视频快速发现自己感兴趣内容呢?...,大概逻辑如下: 种子视频生成是根据用户历史正向行为获取,比如用户收藏、赞、加入播放列表、评分等。...v多样性 视频质量主要是根据用户反馈信息来得到,比如收看数目、观看时长、评分、评论、赞、分享等,同时还有视频上传时间之类信息 用户切合度是取决于用户对种子视频喜欢程度,以及视频之间相似程度...,正样本权重是播放时长Ti,负样本权重是1,而最后一层模型是weighted logistic regression;那么LR学到odds为: 其中N是样本数量,k是正样本数量,Ti是第i正样本观看时长...因此在线上servinginference阶段,我们采用ex作为激励函数,就是近似的估计期望观看时长

    96420

    你问我答 | 云点播VOD 第13期

    您好,产生加速流量 = 码率 × 时长 × 观看人数,通过此公式您可预估出大概需要多少流量。...例如,码率为500Kbps,时长1小时,观看人数为100人,则消耗流量约为:500/8KBps × 3600s × 100人 = 22500000KB = 22.5GB 更多详情请参考文档:https...您好,云点播重复观看视频是计费,重复观看也是重新加载,若使用同一个终端 ID 通过点播链接观看一次视频,则消耗一次流量,是会重复消耗,每次打开视频都会产生流量消耗。...[ 视频加密] 是一种使用密钥对内容本身加密手段,他人获取后无法直接播放。只有当终端通过业务后台鉴权,获得解密密钥后才能播放 Q11:云点播如何上传超大量视频文件?...在排除视频文件本身问题情况下,视频卡顿有可能是因为播放视频电脑配置过低局部网络条件欠佳(包括带宽和时延)引起,可以通过改变播放视频硬件设备网络环境来尝试分析。

    2.1K20

    网课杀手 loop

    原来事情是这样,他们大学布置了一些网课,这些网课通过账号密码登录一个web系统观看。只记录观看时长时长累计够了就能拿到学分。一个视频看多次也可累计时长。...一个视频观看后自动暂停,不可以同时观看多个视频。 在这样规则下,找到网课中最长那个视频,持续观看,这样效益是最大。比如有一节网课2个小时,那么只需要看3次基本就积累够学分了。...于是我尝试这编写一些代码去获取一门课最长视频是哪个, 把一门课中所有的视频链接多获取,然后使用浏览器打开,然后记录每个视频长度,最后找到最长。 按着这个思路我做到一般就放弃了。...我把 loop="loop" 添加到 video 标签。 在视频播放完成后,果然自动播放了。 哈哈哈。。。。看到这个结果真是让人高兴地不得了。...虽然视频能够循环播放了,但我们还需要验证一下,这样循环播放后,观看时长是否真正地增加了。 通过测试,累计观看时长确实增加了。 至此,网课杀手 loop 故事 告一段落。

    1.1K30

    新知 | 腾讯云视立方播放器技术实现与应用

    多平台支持:支持安卓、iOS、 Web以及Flutter等多种平台。 在追求卓越内核同时,腾讯云视立方播放器也非常关注业务接受成本。...动态水印可以实现用户ID在视频上滚动显示,达到防盗录、盗播效果,提升视频安全性。会员试看能力可以设定非会员可试看时长,超过时长后会弹出会员提示、购买窗等信息。...对于进阶场景,比如弹幕、会员试看、动态水印等,开发者也只需在SuperPlayerModel配置相关信息,例如可观看时长、动态水印文本、大小等等,就可以轻松地实现。...上图是一个简化启播流程,从获取数据开始,之后UI展示,封面展示,获取URL/fileID以及配置视频参数,传递到播放器调起播放。...这里需要提前进行数据获取做好缓存相关管理来减少耗时。流程第二个引起耗时操作地方在获取视频链接。

    2.5K30

    Python实战-让在职教育类网站视频全自动播放

    ,将依次播放:") for video in video_list: logger.info(f"{video['video_name']},时长:{video['durationTime...以上步骤,可以获取所有未完成课程列表,包括名称、ID,持续时长,当前进度等信息。接下来,我们点击一个视频播放,然后看看接口处有什么信息: ?...image.png 接口名称叫 saveplayrecord,很容易猜测到,每隔 120 秒发送向服务器一次这样请求,就代表向服务汇报,我当前已经观看到了这个位置,当 time 为视频持续时长时,...视频播放状态会显示为已完成。...) 到这里,我们发现播放视频过程,每隔两分钟,网站会向服务器发送一次请求,保存当前视频播放进度。此时已经豁然开朗。接下来就是组装代码事情了。

    1.5K20
    领券