web-dev-qa-db-fra.com

CMTime secondes sortie

Cela peut sembler ridicule, mais comment puis-je exporter les secondes de CMTime vers la console en Objective-C? J'ai simplement besoin de la valeur divisée par l'échelle de temps et de la voir d'une manière ou d'une autre dans la console.

52
arik
NSLog(@"seconds = %f", CMTimeGetSeconds(cmTime));
139
rob mayoff

Simple:

        NSLog(@"%lld", time.value/time.timescale);
14
0xDE4E15B

Si vous voulez convertir au format hh:mm:ss, vous pouvez utiliser ceci

NSUInteger durationSeconds = (long)CMTimeGetSeconds(audioDuration);
NSUInteger hours = floor(dTotalSeconds / 3600);
NSUInteger minutes = floor(durationSeconds % 3600 / 60);
NSUInteger seconds = floor(durationSeconds % 3600 % 60);
NSString *time = [NSString stringWithFormat:@"%02ld:%02ld:%02ld", hours, minutes, seconds];
NSLog(@"Time|%@", time);
5
Inder Kumar Rathore

Si vous souhaitez simplement imprimer une CMTime sur la console à des fins de débogage, utilisez CMTimeShow:

Objectif c

CMTime time = CMTimeMakeWithSeconds(2.0, 60000); 
CMTimeShow(time);

Rapide

var time = CMTimeMakeWithSeconds(2.0, 60000)
CMTimeShow(time)

Il imprimera la value, timescale et calculera la seconds:

{120000/6000 = 2.0}
1
Fantini
 CMTime currentTime = audioPlayer.currentItem.currentTime;
 float videoDurationSeconds = CMTimeGetSeconds(currentTime);
0
amisha.beladiya