2015-07-21 83 views
1
assetURL = [item valueForProperty: MPMediaItemPropertyAssetURL]; 
NSLog(@"%@", assetURL); // asset url declares the song url and song path 

AVURLAsset* audioAsset = [AVURLAsset URLAssetWithURL:assetURL options:nil]; // declare the audio asset url 
CMTime audioDuration = audioAsset.duration; // get duration in cm time 
double audioDurationSeconds = CMTimeGetSeconds(audioDuration); // convert audio duration in double 

但是,这是一个问题,因为我的音频持续时间只有几秒钟,但我需要歌曲持续时间的“MM:SS”格式。如何获取歌曲的实际时长,如“mm:ss”formate?

请帮帮我。提前致谢。

回答

0
NSUInteger audioDurationSeconds = (long)CMTimeGetSeconds(audioDuration); 
NSUInteger minutes = floor(audioDurationSeconds % 3600/60); 
NSUInteger seconds = floor(audioDurationSeconds % 3600 % 60); 
NSString *time = [NSString stringWithFormat:@"%02ld:%02ld", minutes, seconds]; 
+0

double song_length = [time doublevalue];我可以试试这个吗? –

+0

什么是'时间'? –

+0

NSString * time = [NSString stringWithFormat:@“%02ld:%02ld”,minutes,seconds]; –