मैं एक iPhone पर अंतर्निहित माइक्रोफ़ोन 6. क्षुधा के साथ रिकॉर्डिंग एक चैनल ऑडियो के लिए एप्लिकेशन में लिख रहा हूँ पर (1000 हर्ट्ज के आसपास) एक कम नमूना पर रिकॉर्ड करने के लिए अपेक्षा के अनुरूप पर रिकॉर्ड करने के लिए कॉन्फ़िगर किया गया काम करता है 8000 हर्ट्ज यहाँ कोडकैसे एक iPhone
// Set up audio session
let session = AVAudioSession.sharedInstance()
// Configure audio session
do {
try session.setCategory(AVAudioSessionCategoryPlayAndRecord)
var recordSettings = [String:AnyObject]()
recordSettings[AVFormatIDKey] = Int(kAudioFormatLinearPCM) as AnyObject
// Set the sampling rate
recordSettings[AVSampleRateKey] = 8000.0 as AnyObject
recordSettings[AVNumberOfChannelsKey] = 1 as AnyObject
recorder = try AVAudioRecorder(url: outputFileURL, settings: recordSettings)
recorder?.delegate = self
recorder?.isMeteringEnabled = true
recorder?.prepareToRecord()
return true
}
catch {
throw Error.AVConfiguration
}
है भंडारण आवश्यकताओं को कम करने के लिए, मैं एक बहुत कम नमूना दर (आदर्श कम से कम 1000 हर्ट्ज) पर रिकॉर्ड करने के लिए करना चाहते हैं। यदि मैं नमूना दर 1000 हर्ट्ज पर सेट करता हूं, तो ऐप रिकॉर्ड 8000 हर्ट्ज पर होता है।
एप्पल के प्रलेखन के अनुसार,
हार्डवेयर नमूना दर के लिए उपलब्ध रेंज डिवाइस निर्भर है। यह आमतौर पर 8000 से 48000 हर्ट्ज तक है।
प्रश्न ... यह AVAudioSession
(या अन्य ढांचे) का उपयोग करने के लिए एक कम नमूना दर ऑडियो रिकार्ड करने के लिए संभव है? iPhone पर
आप असम्पीडित पीसीएम के बजाय एएसी जैसे विभिन्न प्रारूप का उपयोग क्यों नहीं करते? यदि आप कोडेक का उपयोग करते हैं, तो फ़ाइल का आकार बहुत कम हो जाएगा – manishg
मुझे लगता है कि आपको ~ 50-500 हर्ट्ज (न्यूक्विस्ट सीमा तक माइक्रोफ़ोन की अनुमानित सीमा) में आवृत्तियों की * लापरवाह * रिकॉर्डिंग की आवश्यकता है? अन्यथा यह अंतरिक्ष बचाने की एक बहुत खराब तरीका है। – Krumelur