为什么AVAsset
曲目对同一视频文件有不同的timeRanges?
我已在AVAsset
中完整加载媒体文件。我打印此类的track属性并接收此信息。
▿ 2 elements
- 0 : <AVAssetTrack: 0x17000fed0, trackID = 1, mediaType = vide>
- 1 : <AVAssetTrack: 0x17000fe90, trackID = 2, mediaType = soun>
所以我有一个视频和一个同一媒体文件的声音AVAssetTrack
。
所以我打印每个AVAssetTrack
的timeRange。
视频:
▿ CMTimeRange
▿ start : CMTime
- value : 0
- timescale : 1000
▿ flags : CMTimeFlags
- rawValue : 1
- epoch : 0
▿ duration : CMTime
- value : 5000
- timescale : 1000
▿ flags : CMTimeFlags
- rawValue : 1
- epoch : 0
声音。
▿ CMTimeRange
▿ start : CMTime
- value : 0
- timescale : 1000
▿ flags : CMTimeFlags
- rawValue : 1
- epoch : 0
▿ duration : CMTime
- value : 5002
- timescale : 1000
▿ flags : CMTimeFlags
- rawValue : 1
- epoch : 0
那么为什么声音AVAssetTrack
的持续时间比视频的长?这是针对相同的视频文件。
答案 0 :(得分:0)
我可以问这个文件来自哪里?也许它是由用户在单独编辑后合并音轨和视频轨道的用户创建的。在编辑文件时,他创造了这个小差异。通常,通过AVMutableComposition,您可以合并您想要的任何资产,时间范围不必相同。得到你的发现我不会感到惊讶。