पीसीएम एक एनालॉग ऑडियो सिग्नल का एक डिजिटल प्रतिनिधित्व है। दुर्भाग्यवश, यह ऑडियो-चैनल, बिट गहराई या नमूना दर के बारे में किसी भी मेटाडेटा को समाहित नहीं करता है - पीसीएम डेटा को सही तरीके से पढ़ने के लिए आवश्यक सभी। मुझे लगता है कि AVAudioPlayer एक NSData ऑब्जेक्ट में लिपटे इस पीसीएम डेटा को स्वीकार करेगा जब तक कि आप AVAudioPlayer ऑब्जेक्ट में मैन्युअल रूप से उन चर सेट करने में सक्षम थे। दुर्भाग्यवश, वे चर केवल पढ़ने के लिए पढ़े जाते हैं, भले ही प्रलेखन कहता है कि AVAudioPlayer कोर ऑडियो को संभालने वाली किसी भी चीज़ को संभाल सकता है, उसके पास कच्चे एलपीसीएम डेटा को संभालने का कोई तरीका नहीं है।
जैसा कि ज़ौल ने कहा है, मैं कल्पना करता हूं कि इसके बारे में जाने का सबसे आसान तरीका डब्ल्यूएवी हेडर में फेंक रहा है, क्योंकि हेडर उपर्युक्त आवश्यक चर के AVPlayer को सूचित करता है। यह 44 बाइट्स है, आसानी से मजाक कर दिया गया है, और अच्छी तरह से परिभाषित किया गया है - मैंने ऊपर दिए गए definition का उपयोग WAV हेडर एन्कोडिंग और डिकोडिंग को लागू करने के लिए किया था। साथ ही, यह सिर्फ आपके अनमोडिफाइड एलपीसीएम डेटा के लिए तैयार है।
मुझे आश्चर्य है कि यह अनुभव या अटकलों से बात कर रहा है या नहीं। – iter
मैंने कोशिश नहीं की, लेकिन इसे काम करना है। – zoul
आपके स्पष्टीकरण के लिए धन्यवाद। मैं अपने स्वयं के डब्ल्यूएवी एन्कोडर को घुमाने की लाइनों के साथ कम सोच रहा हूं और मेरे लिए उठाने के लिए ऑडियोटूलबॉक्स का उपयोग करने के साथ-साथ और भी कम सोच रहा हूं। – iter