typedef struct
{
CMTimeValue value;
CMTimeScale timescale;
CMTimeFlags flags;
CMTimeEpoch epoch;
} CMTime
value/timescale = seconds计算出代表的时间(秒) value代表分子 timescale代表分母 flags代表状态(通过位掩码实现) epoch 暂不清楚
从结构体中,我们看到CMTime主要是表达数字使用。 在OC中可以用NSInteger,CGFloat,double等使用。 其实double精度最大可以使用8为字节。 但是在一些视频,音频等文件时间节点经常会累加计算,如果精度低,播放几个小时的视频,最后的累加偏差会很大。 CMTime通过value,timescale每个有8个字节,实现双精度。
总结: 完整版本请看 https://xiaozhuanlan.com/topic/0372591684
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有