如何在Swift 3/4中获取数组的所有音频文件的总持续时间?
[“ A”,“ x”,“ B”,“ y”,“ C”,“ x”,“ D”,“ y”]
F。一世。持续时间(秒):
x:1秒
y:1秒
A:5秒
B:10秒
C:20秒
D:25秒
因此上述阵列的总持续时间为64秒。
可以通过用户通过SegmentedControl进行选择来更改数组(例如,重复“ x”两次,“ y”重复3次):
[“ A”,“ x”,“ x”,“ B”,“ y”,“ y”,“ y”,“ C”,“ x”,“ x”,“ D”,“ y”,“ y“,” y“]
是否可以通过列表从音频文件中获取总持续时间,或者是否可以使用AVFoundation的函数/方法或其他解决方案?
每个音频文件的持续时间(以秒为单位)都是已知的,并在列表中给出。
答案 0 :(得分:0)
如果持续时间的“列表”是一个说Int值的数组(例如,以秒为单位),则可以像这样减少(求和)数组的内容。
let durations = [1, 2, 3, 4]
let durationsSum = durations.reduce(0, { x, y in
x + y
})