使用AVPlayer获取HTTP live stream audio文件的duration
关于AVPlayer的详细解析,请看Apple document。但是document里面并没有详细解析如何获取HTTP live stream文件的duration,google了一下,发现通过duration属性获取的方法,不能得到正确的直。正确的做法应该是通过调用AVPlayerItem的seekableTimeRanges来获取(loadedTimeRagnes表示已经下载的部分)。
事例代码如下:
[self.player addPeriodicTimeObserverForInterval:CMTimeMakeWithSeconds(2, 1) queue:nil usingBlock:^(CMTime time){ AVPlayerItem* currentItem = self.player.currentItem;NSArray* loadedRanges = currentItem.seekableTimeRanges;if (loadedRanges.count > 0){CMTimeRange range = [[loadedRanges objectAtIndex:0] CMTimeRangeValue];Float64 duration = CMTimeGetSeconds(range.start) + CMTimeGetSeconds(range.duration);NSLog(@"duration:%g", duration);CMTime currentTime = self.player.currentItem.currentTime;self.slider.value = CMTimeGetSeconds(currentTime) / duration;}}];
使用AVPlayer获取HTTP live stream audio文件的duration相关推荐
- java resource file_Java 获取Resource目录下的文件解决办法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Java 获取Resource目录下的 文件 有两种方式: Java代码中的类,要获取Resource资源 文件目录 下文件 绝对路径寻址 注意这个 / ...
- java resouce_Java 获取Resource目录下的文件解决办法
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Java 获取Resource目录下的 文件 有两种方式: Java代码中的类,要获取Resource资源 文件目录 下文件 绝对路径寻址 注意这个 / ...
- Java程序获取和修改.wav音频文件的内部结构
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/79498075冷血之心的博客) wav音频文件是一种无损的音频文件, ...
- Android 获取内部存储中音乐文件的正确姿势
最近想写一个音乐的小APP出来(doge),借此熟悉音频开发的相关技术.但是在获取内部存储的音乐文件时踩了一些坑...所以有了这篇帖子,简单介绍下Android的存储类别,以及如何获取内部存储中的音乐 ...
- android 扫描所有图片格式,Android获取本机各种类型文件列表(音乐、视频、图片、文档等)...
介绍 本篇介绍Android获取本机各种类型文件的方法,已经封装成工具类,末尾有源码下载地址. 提示 获取音乐.视频.图片.文档等文件是需要有读取SD卡的权限的,如果是6.0以下的系统,则直接在清单文 ...
- shell访问php文件夹,Shell获取某目录下所有文件夹的名称
Shell获取某目录下所有文件夹的名称以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Shell获取某目录下所有文件夹的 ...
- 获取 Andriod keystore签名证书文件,用于打包APP应用
每个安卓APP,都要签名证书才能安装在手机上,测试的应用有测试的签名证书,生产环境有生产环境的签名证书,在开发APP之前,我们首先生成一个用于该APP的签名证书,用于测试调试应用,像微信支付.分享.地 ...
- 浅谈Java反射机制 之 获取类的字节码文件 Class.forName(全路径名) 、getClass()、class...
先贴上Java反射机制的概念: AVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法: 对于任意一个对象,都能够调用它的任意一个方法和属性: 这种动态获取的信息以及动态调用对 ...
- 【每日随笔】电子签名 ( 下载 “e 签保“ 应用 | 使用 手机号 + 短信验证码 登录 | 发起签署 | 签名 | 获取签名后的 PDF 文件及出证信息 )
文章目录 一.下载 "e 签保" 应用 二.使用 手机号 + 短信验证码 登录 三.发起签署 四.签名 五.获取签名后的 PDF 文件及出证信息 一.下载 "e 签保&q ...
最新文章
- Anaconda 和 JetBrains 联手推出 'Anaconda的PyCharm'
- 2019CCPC网络选拔赛签到题题解
- 从ucOS谈,为什么需要操作系统?
- 题目 1004: [递归]母牛的故事
- android log system
- 【最新合集】IDEA 快捷键整理
- python怎么设置颜色深浅变化_Python赋值、深浅copy
- 网站开发的小知识参考(慢慢收集备用)
- 测试或运维工作过程中最常用的几个linux命令?
- MySQL中实现连续日期内数据统计,缺省天数0补全
- 刚被通用收编的这家创业公司,号称能把LiDAR成本降低近100%
- 普通办公用计算机,工业计算机与普通办公用的电脑有什么区别?
- ActiveMQ第二弹:使用Spring JMS与ActiveMQ通讯
- 听说你在学Python?来点PEP吧
- 关于equals和==的几个注意点
- WPF的网易云音乐页面
- 苹果youtube无法连接网络_当手机无信号或者无法连接网络时的正确解决步骤
- 八数码(有一个空的移动拼图模型+map.count的用法)
- Android Studio修改安卓模拟器的安装位置和SDK的位置
- 20220312纪中集训总结
热门文章
- 数据库连接池 ( 四 ) Druid 连接池
- 成功解决“谷歌浏览器打开是毒霸网址大全”问题
- HEC-RAS数值模拟与GIS水文分析技术的洪水危险性及风险评估
- 参与诺基亚N78“连城决” 探索全球最神秘的地区
- Java基础详细版本和入门代码
- python怎么在turtle写字_使用turtle在Python中绘制输入
- 2022山东省安全员C证考试题库及答案
- mac Dw cc2017 下载
- AttributeError: 'module' object has no attribute 'StereoBM_create'的解决办法
- Java 编程高手(附盘) 译作者: 博彦科技