اي فون - الحصول على مدة الخطي ملف الصوت PCM

StackOverflow https://stackoverflow.com/questions/1649491

  •  22-07-2019
  •  | 
  •  

سؤال

ولدي ملف PCM الخطية (WAV) في تطبيقي وأود أن أحصل عليه من مدة برمجيا. يمكن أن تجد ما يلي باستخدام AudioStreamBasicDescription ولكن لا يمكن أن تجعل من كيفية الحصول على مدة في ثوان.

mFormatID
mSampleRate
mChannelsPerFrame
mBytesPerPacket
mFramesPerPacket
mBytesPerFrame
mBitsPerChannel

ويمكن للشخص من فضلك قل لي كيف يمكنني الحصول مدة.

وشكرا.

هل كانت مفيدة؟

المحلول

ويمكنك إنشاء مثيل AVAudioPlayer مع الملف. AVAudioPlayer لديه ممتلكات المدة.

نصائح أخرى

<ع> استخدام خاصية AudioFile kAudioFilePropertyEstimatedDuration هو أفضل، ولكن إذا كنت ترغب في الرياضيات للPCM: مدة = totalNumPackets * ASBD.mFramesPerPacket / ASBD.mSampleRate

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top