दिलचस्प ध्वनियों को बनाने के लिए ऑडियो संकेतों पर किए गए संचालन की बुनियादी श्रेणियां क्या हैं?


10

मुझे नहीं पता कि यह सवाल समझ में आता है क्योंकि मैं बहुत ही नया हूँ।

ऑडियो डीएसपी में मेरे सीमित दायरे में मैं आया हूं:

  1. आवृति का उतार - चढ़ाव
  2. आयाम अधिमिश्रण
  3. योगात्मक संश्लेषण
  4. घटाव संश्लेषण

मेरा सवाल है: ये सिग्नल हेरफेर (विशेष रूप से ऑडियो के लिए) की मुख्य मूलभूत श्रेणियां हैं?

दूसरे शब्दों में, सभी प्रभाव और फैंसी चीजें जो FL स्टूडियो प्लगइन्स के एक पूर्ण सूट के साथ कर सकते हैं, को एक श्रृंखला में तोड़ा जा सकता है और उपरोक्त 4 ऑपरेशनों का संयोजन? या वहाँ एक पूरे गुच्छा अधिक हैं? क्या प्लग इन के साथ एक आधुनिक डीएडब्ल्यू सैद्धांतिक रूप से इस तरह से किसी भी श्रेणी में टूट सकता है? क्या उपरोक्त 4 श्रेणियां अपने आप में भी समझ में आती हैं ?!

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

मैं अब फिर से शुरू करने और कार्यक्रम की मूल वस्तुओं और संरचना के साथ आने की कोशिश कर रहा हूं। ठीक से मुझे यह जानने की आवश्यकता है कि मुझे इन वस्तुओं को कैसे बातचीत करने की अनुमति देनी चाहिए ... आदि।

धन्यवाद!

EDIT * * *

उपयोगी टिप्पणियों और उत्तरों के लिए धन्यवाद। मुझे लगता है कि मैं शायद सामान की dsp पक्ष को कम करके आंका गया है और मैं एक साधारण सिंथेसाइज़र के लिए सिर्फ एक बुनियादी टेम्पलेट और संरचना नहीं बना पाऊंगा और फिर इसे विस्तार / निर्माण कर सकता हूं। मैं शायद बार-बार बार-बार पुनर्निर्माण करना होगा क्योंकि मैं नया सामान सीखता हूं और चीजों को करने के लिए "उचित" तरीका ... इसमें अधिक समय लगेगा, लेकिन शायद मैं और अधिक सीखूंगा? क्षमा करें, मुझे अभी तक किसी को उभारने के लिए पर्याप्त प्रतिनिधि नहीं है ... जैसे ही मैं कर सकता हूं, मैं करूंगा।

संपादित करें * संपादित करें ***

मुझे यह जोड़ना चाहिए कि थोड़ी सी गुगली ने इस मूल गाइड को "प्रकार के संश्लेषण" के रूप में प्रकट किया, जो मुझे प्रासंगिक और दिलचस्प लगा।


क्या आप संश्लेषण तकनीक पर सैद्धांतिक पृष्ठभूमि चाहते हैं, या क्या आप इस तरह से कुछ और चाहते हैं (यानी सामान्य तरीके जो अभ्यास में उपयोग किए जाते हैं)? dsp.stackexchange.com/questions/192/...
datageist

1
अगर मैं सभी संभव ध्वनि जोड़तोड़ को यथासंभव कुछ श्रेणियों में जोड़ सकता था, तो मैं रैखिक और गैर-रेखीय परिवर्तनों का नाम लूंगा। लेकिन वे भी सामान्य और व्यापक हैं जो लागू करने में सक्षम हैं।
एलेक्सी फ्रुंज़े

@ डैटजिस्ट - मुझे लगता है कि मुझे दोनों की आवश्यकता है! लेकिन यह एक बहुत ही उपयोगी कड़ी है, धन्यवाद।
किमन

@ एलेक्स बहुत सामान्य है, लेकिन यह एक वैचारिक शुरुआत है और कम से कम अब मुझे पता है कि मैं गलत पेड़ को काट रहा था।
किमन

विल पीर्कल की पुस्तक, डिजाइनिंग सॉफ्टवेयर सिंथेसाइज़र प्लग-इन C ++: RackAFX, VST3 और ऑडियो इकाइयों के लिए प्राप्त करें। आप वास्तव में एक सिंथेसाइज़र बना रहे होंगे और अपने दम पर सब कुछ जानने की कोशिश करने के बजाय रास्ते में सीखेंगे।
पैन्थियन

जवाबों:


9

out(t)in(t)

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

  • बाइकाड फिल्टर करता है।
  • आंशिक देरी लाइनें।
  • कन्वेंशन इंजन, मनमाने आकार के आवेग प्रतिक्रियाओं के साथ एक इनपुट सिग्नल के तेजी से दृढ़ीकरण के लिए।
  • वेवशपर (समय-प्रभुत्व में इनपुट सिग्नल के लिए एक गैर-रेखीय फ़ंक्शन का अनुप्रयोग)।
  • सिंथेसाइज़र बिल्डिंग ब्लॉक: ऑसिलेटर, एलएफओ, एडीएसआर लिफाफे।
  • सिग्नल डिटेक्टर: लिफाफा अनुयायी, f0 चिमटा।

उन ब्लॉकों के साथ जिनका आप निर्माण कर सकते हैं:

  • सिंथ जैसे फिल्टर या वाह-वाह: एक या दो बाइकेड
  • ऑटो-वाह: लिफाफा अनुयायी + लिफाफा + बाइकाड
  • फ्लैगर / फेसर: एलएफओ + विलंब रेखा
  • कोरस: एलएफओ + देरी लाइनें
  • एल्गोरिथ्म reverb: देरी लाइनों (समानांतर और धारावाहिक कंघी फिल्टर की सरणी)
  • कन्वर्सेशन रीवरब: कनविक्शन
  • स्पेसिलेटर: कनवल्शन (HRTFs आवेग प्रतिक्रियाओं के साथ)
  • गिटार amp सिमुलेशन: दृढ़ संकल्प, तरंगों
  • विरूपण, फ़ज़: गेन + वेवशापर
  • बिटक्रशर (क्वांटाइज़र): वेवशॉपर का एक विशेष मामला
  • एक साइन वाहक के साथ रिंग न्यूनाधिक: थरथरानवाला
  • शोर गेट और अन्य गतिशीलता प्रभाव: लिफाफा अनुयायी
  • टेप अनुकार
  • EQ: biquads
  • ट्रेमोलो: एलएफओ
  • लेस्ली अनुकरण: दृढ़ संकल्प + एलएफओ
  • Vocoder: biquads + लिफाफा अनुयायी

हालांकि इन प्रभावों में से कुछ सिर्फ अलग-अलग ब्लॉकों को पैच करने का मामला है (एक फ्लैगर सही मायने में एक विलंब रेखा को संशोधित करने वाला एलएफओ है), कुछ अन्य प्रभावों के लिए भागों के बीच अधिक जटिल गोंद की आवश्यकता होती है, जो विशिष्ट है कि एक बिल्डिंग ब्लॉक में फैक्टर न हो उसका स्वयं का।

यह कुल मिलाकर, प्रभावों का एक दिलचस्प सेट है, जो संगीत उत्पादन के लिए बहुत सारी जमीन को कवर करेगा, लेकिन यह संपूर्ण नहीं है और वास्तव में कुछ प्रभाव हैं जो इस ढांचे को फिट नहीं करते हैं ... कुछ उदाहरण: * गंदे नमूना दर reducer (कुल मिलाकर) एक बिटक्रशर): सच है, यह एक डायराक कंघी द्वारा गुणा और फिर एक आयताकार खिड़की से एक कनवल्शन है ... लेकिन इसे कुछ इस तरह से लिखना आसान है कि एक आयाम मॉड्यूलेशन को पैच करने के बजाय एन निम्नलिखित नमूनों पर एक नमूने के मूल्य को दोहराएं। और एक दृढ़ संकल्प! * पिच परिवर्तन प्रभाव (पिच-शिफ्टिंग, ऑटो-ट्यून) इस ढांचे को अच्छी तरह से फिट नहीं करते हैं। उन्हें प्रदर्शन किए जाने वाले ऑडियो सिग्नल के अधिक जटिल प्रतिनिधित्व की आवश्यकता है (फ़्रीक्वेंसी-डोमेन विधियों के लिए चरण विकोडर; समय-डोमेन तरीकों के लिए पिच का पता लगाने और पिच के निशान)।

मैं आपको Pd, Reaktor, Plogue, SyntheEdit ... जैसे "मॉड्यूलर स्टाइल" सॉफ़्टवेयर टूल्स के साथ खेलने का सुझाव देता हूं - और आपके द्वारा प्रदान किए जाने वाले बुनियादी बिल्डिंग ब्लॉकों से प्रभावों को लागू करने का प्रयास करता हूं।


2
इसके लायक होने के लिए, एफएम सिंथेसिस में आवृत्ति मॉड्यूलेशन का उपयोग किया जाता है। यह एकल टोन एफएम मॉडुलन के मामले से आसानी से देखा जाता है, जिसके परिणामस्वरूप पहली तरह के बेसेल कार्यों द्वारा परिभाषित फूरियर श्रृंखला के साथ एक संकेत मिलता है।
ब्रायन

1
सिंथेसाइज़र में लागू "एफएम संश्लेषण" (जैसे यामाहा डीएक्स श्रृंखला, ओपीएल-आधारित हार्डवेयर और उन का सॉफ्टवेयर अनुकरण), एक मिथ्या नाम है, क्योंकि यह वास्तव में चरण मॉड्यूलेशन के साथ किया जाता है। en.wikipedia.org/wiki/Phase_modulation
pichenettes

मुझे उस विकिपीडिया प्रविष्टि से जुड़ा कोई स्रोत दिखाई नहीं दे रहा है। भले ही, उस प्रविष्टि के अनुसार, यह कहता है कि वे "समान" ध्वनि करते हैं, और यह कि पीएम का उपयोग किया जाता है क्योंकि एफएम को लागू करना अधिक कठिन है। मैं इसे नहीं खरीदता, यह देखते हुए कि एफएम पीएम का एक विशेष मामला है। फिर भी, मैंने एफएम मॉड्यूलेशन के पीछे जिस सिद्धांत का हवाला दिया, वह बेसेल कार्यों से संबंधित हार्मोनिक्स का उत्पादन करता है, और उपयोगी है।
ब्रायन

@Bryan। "FM" सिंथेसिस पेटेंट का दावा 1 देखें, US4018121। एक पाप (wt + I (t) पाप w_m t) - यह चरण मॉड्यूलेशन है। पीएम को लागू करना आसान है क्योंकि 1 / आपको एक चरण में अलग-अलग तात्कालिक आवृत्ति को एकीकृत करने के लिए एक अतिरिक्त संचायक की आवश्यकता नहीं है - कुछ पोस्ट यहां देखें जिसमें लोगों ने समय-भिन्न आवृत्ति के साथ एक टोन उत्पन्न करने की कोशिश की और वापस 2 / काट लिया गया एक आवृत्ति से चरण वृद्धि में रूपांतरण में एक विभाजन शामिल है। पीएम के साथ आप संशोधन दर पर चरण वृद्धि को फिर से जोड़ते हैं; एफएम के साथ आपको नमूना दर पर चरण वृद्धि को फिर से शुरू करना होगा।
pichenettes

बहुत उपयोगी जवाब, धन्यवाद। मुझे पता है कि मैं प्रोग्रामिंग पहलू पर बहुत कुछ फोकस कर रहा हूं (जो मैं अभी सीख रहा हूं) और डीएसपी पक्ष को गंभीरता से नहीं ले रहा हूं। यह शायद एक ऐसी परियोजना नहीं होगी जिसे मैं बस छोटा शुरू कर सकता हूं और धीरे-धीरे बना सकता हूं, लेकिन एक यह है कि मुझे सीखते हुए कई बार पुनर्निर्माण और पुनर्निर्माण करना होगा।
किमन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.