हां, कई लोगों ने समय-आवृत्ति विश्लेषण पर काम किया है।
"मेरे डेटा को टुकड़ों में काटें, प्रत्येक चंक पर एफएफटी का प्रदर्शन करें" एक अच्छा विचार है। एफएफटी करने से ठीक पहले, प्रत्येक चंक पर एक "विंडो फ़ंक्शन" लागू करना, कई कलाकृतियों से बचने में मदद करता है। ओवरलैप के लिए चोकिंग की अनुमति देने से भी मदद मिलती है। उन बारीकियों के बाद, आप गेबर परिवर्तन के साथ समाप्त होते हैं , जो सबसे लोकप्रिय अल्पकालिक फूरियर रूपांतरण (STFT) लगता है।
जैसा कि आप पहले ही बता चुके हैं, और जैसा कि विकिपीडिया लेख बताता है, सभी अल्पकालिक फूरियर ट्रांसफॉर्म तकनीकों में एक ट्रेडऑफ़ है:
- जब आप समय-श्रृंखला को बहुत छोटे टुकड़ों में काटते हैं, तो आपको अत्यधिक सटीक समय की जानकारी मिलती है, जब एक टोन शुरू होता है और बंद हो जाता है, लेकिन आवृत्ति की जानकारी बहुत धुंधली होती है।
- जब आप समय-श्रृंखला को बहुत लंबे टुकड़ों में काटते हैं, तो आपको एक स्वर की सटीक आवृत्ति के रूप में अत्यधिक सटीक आवृत्ति जानकारी मिलती है, लेकिन सटीक समय जो शुरू होता है और बंद हो जाता है वह धुंधली होती है।
यह एक प्रसिद्ध समस्या है, लेकिन अफसोस, न केवल इसे हल नहीं किया गया है, यह साबित हो गया है कि दोनों के बीच अनिश्चितता अपरिहार्य है - गैबर सीमा, हाइजेनबर्ग-गैबर सीमा, अनिश्चितता सिद्धांत , आदि।
यदि मैं आप थे, तो मैं गेबर परिवर्तन की गणना करने के लिए कई ऑफ-द-शेल्फ पुस्तकालयों में से एक के साथ शुरू करूंगा, और समय श्रृंखला को विभिन्न लंबाई में काटने के साथ प्रयोग करूंगा। वहाँ एक बहुत अच्छा मौका है आप भाग्यशाली होंगे और आप कुछ समय के साथ समाप्त हो जाएंगे जो पर्याप्त समय स्थानीयकरण और पर्याप्त आवृत्ति भेदभाव देता है।
अगर वह इस एप्लिकेशन के लिए काम नहीं करता है, तो मैं समय-आवृत्ति प्रतिनिधित्व और समय-आवृत्ति विश्लेषण के लिए अन्य तरीकों पर आगे बढ़ूंगा - वेवलेट ट्रांसफॉर्म , चिरप्लेट ट्रांसफॉर्म , फ्रैक्शनल फूरियर ट्रांसफॉर्म (एफआरएफटी), आदि।
संपादित करें: ऑडियो डेटा से स्पेक्ट्रोग्राम / झरना भूखंड उत्पन्न करने के लिए कुछ स्रोत कोड :
स्पेक्ट्रोग्राम की छवि उपरोक्त उपयोगिताओं से रिवर्स दिशा में जाती है।