with following, , mp3 file:
avurlasset* audio = [[avurlasset alloc]initwithurl:audiourl options:nil]; avassettrack* audiotrack = [[audio trackswithmediatype:avmediatypeaudio] objectatindex:0]; cmtime audioduration = audio.duration; nslog(@"audioduration: %qi/%i; audiotrackduration: %qi/%i", audioduration.value, audioduration.timescale, audiotrack.timerange.duration.value, audiotrack.timerange.duration.timescale);
i get:
audioduration: 1513728/44100; audiotrackduration: 0/1
note track fine when make use of later. thought might asynchronous key-value coding issue, nsparameterassert
seems pass:
avkeyvaluestatus trstatus = [audiotrack statusofvalueforkey:@"timerange" error:&theerror]; nsparameterassert(trstatus == avkeyvaluestatusloaded);
what's deal? quirk of format?
for coming along later: far can tell, yes, avassettrack
doesn't have time range if it's audio, , have use avasset
duration. still not sure if mp3s, though, or what.
Comments
Post a Comment