मिडी और ओएससी - संगीत अनुप्रयोगों की बातचीत के लिए मुख्य प्रोटोकॉल

भाग 1. मिडी


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

1 पृष्ठभूमि

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

उस समय के सिंथेसाइज़र की एक और कमी ट्यूनिंग की जटिलता थी। प्रत्येक नई ध्वनि के लिए, संगीतकारों को वाद्य यंत्र की धुन बजानी पड़ी, जो लाइव प्रदर्शन में बहुत असुविधाजनक था। उन समय के संगीत कार्यक्रमों में अक्सर सिंथेसाइज़र के पूरे रैक को देखना संभव होता था - इसलिए संगीतकार स्थिति से बाहर निकल गए। समय के साथ, मिनी-कंप्यूटर को उपकरणों में बनाया गया, जिसकी मदद से आप प्रीसेट में पेन की स्थिति को बचा सकते हैं।
हालांकि, एक और बिंदु है जिसका मिडी के विकास पर बड़ा प्रभाव पड़ा है।

निस्संदेह, प्रत्येक सिंथेसाइज़र का अपना ध्वनि चरित्र होता है, उनमें से प्रत्येक ध्वनि के कुछ प्रकारों में मजबूत था। इसलिए, उस समय के कई संगीतकारों ने एक ही समय में दो उपकरणों पर खेल का अभ्यास किया, जैसे कि विभिन्न मॉडलों का सबसे अच्छा उपयोग करना। विभिन्न सिंथेसाइज़र से लेयरिंग की आवाज़ एक प्रदर्शन तकनीक बन गई है, जो कई संगीतकारों की पहचान है। [1]

2 इतिहास

80 के दशक की शुरुआत तक, अधिकांश निर्माताओं ने एकल इंटरफ़ेस बनाने की आवश्यकता महसूस की। कार्य यह था: सभी प्रकार के विद्युत संगीत वाद्ययंत्रों के बीच डिजिटल रूप में कलाकार के कार्यों के हस्तांतरण के लिए एक मानक विकसित करना। [1]

हम इतिहास में विस्तार से नहीं बताएंगे, (हालांकि यह बहुत दिलचस्प है, आप इसके बारे में [1] में पढ़ सकते हैं), यहां कुछ प्रमुख तिथियां हैं:

3 मूल बातें

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

प्रोटोकॉल में ही तीन भाग होते हैं [1]: डेटा प्रारूप विनिर्देश, हार्डवेयर इंटरफ़ेस विनिर्देश और डेटा संग्रहण विनिर्देश। यह लेख केवल पहले भाग पर चर्चा करेगा।

मिडी संदेशों को दो प्रकारों में विभाजित किया जाता है: चैनल संदेश और सिस्टम संदेश। पूर्व नियंत्रण ध्वनि पीढ़ी, जबकि बाद में सिंक्रनाइज़ेशन जैसे सेवा कार्य करते हैं।

मिडी संदेशों के प्रकार

एक संदेश में आमतौर पर दो या तीन बाइट्स होते हैं। पहली बाइट को स्टेटस बाइट कहा जाता है। यह संदेश के प्रकार और चैनल संख्या को सेट करता है जिससे वह संबंधित है। बाद के सभी बाइट्स को डेटा बाइट्स कहा जाता है। स्थिति बाइट हमेशा एक से शुरू होती है, और बाइट डेटा शून्य से - इस प्रकार सिस्टम उन्हें अलग करता है। यह पता चला है कि मिडी जानकारी के लिए, केवल 7 बिट्स शेष हैं, जिसके साथ आप पूर्णांक को 0 से 127 तक एन्कोड कर सकते हैं - यह वह जगह है जहां नोटों की संख्या पर इस "प्रसिद्ध" प्रतिबंध और नियंत्रक मूल्यों से आता है।

MIDI संदेश की संरचना।

जैसा कि आप आंकड़ा से देख सकते हैं, केवल 3 बिट्स को संदेशों के प्रकार के बारे में जानकारी के लिए आवंटित किया गया है, जिसमें केवल 8 नंबर एन्कोड किया जा सकता है। उनमें से 7 सबसे अधिक इस्तेमाल किए जाने वाले कमांड के लिए आरक्षित हैं, और बाद वाले का उपयोग सिस्टम संदेशों के लिए किया जाता है। जब एक सिस्टम संदेश प्रसारित होता है, तो बाइट स्थिति के अंतिम 4 बिट्स (जिसमें चैनल नंबर आमतौर पर प्रसारित होता है) सिस्टम संदेश के प्रकार को निर्धारित करता है।

टेबल। 1. चैनल संदेश।
संदेशस्थिति बाइटडेटा बाइट 1डेटा बाइट 2
ध्यान दें1000nnnnनोट नंबरवेग
पर ध्यान दें1001nnnnनोट नंबरवेग
पॉलीफोनिक कुंजी दबाएं1010nnnnनोट नंबरदबाव
नियंत्रण परिवर्तन1011nnnnनियंत्रक संख्यामूल्य
कार्यक्रम में बदलाव1100nnnnकार्यक्रम संख्या-
चैनल का दबाव1101nnnnदबाव-
पिच व्हील चेंज बदला1110nnnnकार्यक्रम संख्या-
सिस्टम संदेश1111nnnn......

टेबल। 2. सिस्टम संदेश
संदेशस्थिति बाइटडेटा बाइट 1डेटा बाइट 2
सिस्टम एक्सक्लूसिव (SysEx)
सिस्टम अनन्य11110000आईडी...
सिस्टम कॉमन है
एमटीसी क्वाटर फ्रेम11110001समय कोड-
गाने की स्थिति सूचक11110010LSBMSB
गीत का चयन करें11110011गाने का नंबर-
धुन अनुरोध11110110--
अनन्य का अंत (EOX)11110111--
वास्तविक समय
घड़ी का समय11111000 (248)--
प्रारंभ11111010 (250)--
जारी रखें11111011 (251)--
बंद करो11111100 (248)--
सक्रिय संवेदन11111110--
सिस्टम रीसेट11111111--

4 नुकसान

किसी भी MIDI उपकरणों [2] के बीच कलाकार के इशारों को स्थानांतरित करने के लिए MIDI को एक सस्ती और व्यावहारिक मानक के रूप में विकसित किया गया था । अंतिम लेकिन कम से कम, इसकी हल्कापन के कारण, इसे ऐसा वितरण प्राप्त हुआ। जो कुछ भी आप कहते हैं, वह अपने मिशन के साथ पूरी तरह से मुकाबला करता है, और यह समय की पुष्टि करता है।
तो, शायद, सबसे प्रसिद्ध दोष यह है कि नियंत्रक मानों की सीमा 128 मान है। बेशक, दो डेटा बाइट्स (जो 16 384 संभावित मान देता है) का उपयोग करके उन्हें प्रसारित करना संभव है, लेकिन इसके लिए आपको तीन नियंत्रण परिवर्तन संदेश भेजने की आवश्यकता है, जो प्रोटोकॉल को बहुत लोड करेगा, क्योंकि डेटा 31,250 बीपीएस पर प्रसारित होता है। यह बहुत छोटा है। तुलना के लिए, एक 12-नोट कॉर्ड लगभग 10 एमएस में प्रेषित किया जाएगा। और यह अन्य संदेशों के बिना है, जैसे घड़ी और सीसी । एक वास्तविक प्रदर्शन में, जब कई अलग-अलग मापदंडों को एक साथ प्रेषित किया जाता है, तो सिंक्रनाइज़ेशन के साथ समस्याएं हो सकती हैं।

भाग 2. ओपन साउंड कंटोल


"ओपन साउंड कंट्रोल कंप्यूटरों, ध्वनि सिंथेसाइज़र और अन्य मल्टीमीडिया उपकरणों की बातचीत के लिए आधुनिक नेटवर्क प्रौद्योगिकियों के लिए अनुकूलित एक नया प्रोटोकॉल है" - इसे 1997 [3] में कंप्यूटर संगीत पर अंतर्राष्ट्रीय सम्मेलन में OSC द्वारा प्रस्तुत किया गया था। ओएससी उस रूप में एक प्रोटोकॉल नहीं है जो मिडी है , क्योंकि यह हार्डवेयर आवश्यकताओं का वर्णन नहीं करता है - विनिर्देशों केवल डेटा हस्तांतरण प्रारूप का वर्णन करता है। इस संबंध में, OSC , XML या JSON से MIDI [8] के समान है।

अभी के लिए, तकनीकी विवरणों को छोड़ दें और इतिहास के साथ शुरुआत से ही शुरुआत करें।

1 इतिहास, आवेदन

1997 में मैथ्यू राइट और एड्रियन फ्रीड द्वारा न्यू साउंड एंड ऑडियो टेक्नोलॉजीज (CNMAT - सेंटर ऑफ न्यू म्यूजिक एंड ऑडियो टेक्नोलॉजीज) के केंद्र में मैथ्यू राइट और एड्रियन फ्रीड द्वारा ओपन साउंड कंट्रोल बनाया गया था। डेवलपर्स इंटरैक्टिव कंप्यूटर संगीत [4] में उच्च गति नेटवर्क प्रौद्योगिकियों का उपयोग करना चाहते थे। OSC कोई फर्क नहीं पड़ता कि प्रोटोकॉल क्या है, क्योंकि यह सिर्फ एक द्विआधारी संदेश प्रारूप है, हालांकि अधिकांश कार्यान्वयन टीसीपी / आईपी या यूडीपी का उपयोग करते हैं । निर्माण का एक और कारण यह था कि मिडी, अपने नोट्स, चैनल और कंट्रोलर के साथ, उस समय विकसित होने वाले CAST सिंथेसाइज़र (CNMAT Additive Synthesis Tools) को तार्किक रूप से फिट नहीं करता था, और यह समझ में आता है, क्योंकि MIDI एक कुंजीपटल-उन्मुख प्रोटोकॉल है जिसे एक को नियंत्रित करने के लिए विकसित किया गया था एक और से एक सिंथेसाइज़र [1]।

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

ओपन साउंड कंट्रोल का उपयोग करने वाले कार्यक्रमों की एक छोटी (और अपूर्ण) सूची:

2 सुविधाएँ


3 पदों का एनाटॉमी

ओएससी संदेशों की शारीरिक रचना।
यह ध्यान देने योग्य है कि यूडीपी का उपयोग करते समय, यदि संदेश अलग-अलग पैकेट में प्रेषित किए गए थे, तो वे जरूरी नहीं कि उस क्रम में पहुंचेंगे जिसमें वे प्रसारित किए गए थे [6]। मान लें कि निम्नलिखित संदेश प्रेषित किए गए थे:

/synth1/noteoff 54
/synth1/noteon 60


वास्तव में, वे रिवर्स ऑर्डर में आ सकते हैं:

/synth1/noteoff 60
/synth1/noteon 54


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

इससे बचने के लिए, आपको एक पैकेट (बंडल) में संदेश भेजने या टीसीपी / आईपी का उपयोग करने की आवश्यकता है, यह यूडीपी से अलग है कि यह पैकेट के सही वितरण की गारंटी देता है, उनमें से प्रत्येक को अपने मूल रूप में प्रसारित होने तक प्रेषित करता है। यह ध्यान में रखा जाना चाहिए कि ऐसी सुविधा की कीमत पर यूडीपी की तुलना में बड़ी देरी होगी, इसलिए टीसीपी / आईपी का उपयोग उचित होना चाहिए।

4 पैटर्न मिलान

वे अक्षर जिन्हें पता बार में इस्तेमाल किया जा सकता है [7]:

संदर्भ


[१] पत्रिका म्यूजिकल इक्विपमेंट से मिडी पर लेखों की एक श्रृंखला
[२] टी। विंकलर " संवादात्मक संगीत की रचना " - २००१ एमआईटी प्रेस।
[३] एम। राइट, और ए। फ्रीड, १ ९९ ight। " ओपन साउंड कंट्रोल: साउंड सिंथेसाइज़र के साथ संचार के लिए एक नया प्रोटोकॉल। " - आईसीएमएन १ ९९ ight।
[४] एम। राइट " ओपन साउंड कंट्रोल: म्यूजिकल नेटवर्किंग के लिए एक सक्षम तकनीक "। संगठित ध्वनि 10 (3): 193-200 - 2005 कैम्ब्रिज यूनिवर्सिटी प्रेस।
[५] ए। शमेदर, ए। फ्रीड, डी। वेसल " ओपन साउंड कंट्रोल के लिए सर्वश्रेष्ठ अभ्यास " - लिनक्स ऑडियो सम्मेलन, 05/05/2010, उट्रेच, एनएल, (2010)।
[६] ए। फ्रेटाटा " ओपन साउंड कंट्रोल: अड़चनें और सीमाएँ " - २०० N का conference वाँ NIME सम्मेलन।
[[] एम। राइट " द ओपन साउंड कंट्रोल १.० विशिष्टता " - २००२।
[[] ए। फ्रीड, ए। शमेदर "नीम के लिए ओपन साउंड कंट्रोल संस्करण १.१ की विशेषताएं और भविष्य " - २०० ९।

PS बहुत से आर्टिकल में मिली त्रुटि के लिए 8bitjoey habrayuzer का धन्यवाद।

Source: https://habr.com/ru/post/In139226/


All Articles