اي فون - الحصول على مدة الخطي ملف الصوت PCM
-
22-07-2019 - |
سؤال
ولدي ملف PCM الخطية (WAV) في تطبيقي وأود أن أحصل عليه من مدة برمجيا. يمكن أن تجد ما يلي باستخدام AudioStreamBasicDescription ولكن لا يمكن أن تجعل من كيفية الحصول على مدة في ثوان.
mFormatID
mSampleRate
mChannelsPerFrame
mBytesPerPacket
mFramesPerPacket
mBytesPerFrame
mBitsPerChannel
ويمكن للشخص من فضلك قل لي كيف يمكنني الحصول مدة.
وشكرا.
المحلول
ويمكنك إنشاء مثيل AVAudioPlayer مع الملف. AVAudioPlayer لديه ممتلكات المدة.
نصائح أخرى
<ع> استخدام خاصية AudioFile kAudioFilePropertyEstimatedDuration هو أفضل، ولكن إذا كنت ترغب في الرياضيات للPCM: مدة = totalNumPackets * ASBD.mFramesPerPacket / ASBD.mSampleRate
لا تنتمي إلى StackOverflow