भाग 1. मिडी
मिडी (म्यूजिकल इंस्ट्रूमेंट डिजिटल इंटरफेस) डिजिटल संगीत वाद्ययंत्रों के बीच डेटा के आदान-प्रदान के लिए एक मानक है। यह आपको नोट नंबर, वेग, टाइमपास आदि जैसे सूचनाओं का आदान-प्रदान करने की अनुमति देता है।
MIDI रिलीज़ किए गए अधिकांश संगीत उपकरणों का समर्थन करता है, अपवाद मॉड्यूलर सिस्टम के कई मॉड्यूल हैं (उदाहरण के लिए, यूरोरैक), साथ ही साथ मोनोम जैसी विशिष्ट चीजें भी।
1 पृष्ठभूमि
70 के दशक के अंत में इस तरह के मानक की आवश्यकता उत्पन्न हुई। उस समय,
सीवी / गेट इंटरफेस का उपयोग करके सिंथेसाइज़र को वोल्टेज द्वारा नियंत्रित किया जाता था। इसके कई प्रकार थे, हालांकि,
रोलैंड द्वारा प्रस्तावित संस्करण को सबसे अधिक लोकप्रियता प्राप्त हुई: इसमें
1 वी द्वारा वोल्टेज में वृद्धि के साथ, उत्पन्न स्वर की आवृत्ति में एक सप्तक की वृद्धि हुई। इस इंटरफ़ेस का मुख्य नुकसान यह है कि इसके साथ आप पॉलीफोनी की केवल एक आवाज को नियंत्रित कर सकते हैं। एक अतिरिक्त नोट निकालने के लिए, आपको एक और
सीवी / गेट इंटरफ़ेस जोड़ना होगा। इसके अलावा, इस तरह से केवल कुंजी और इसकी ऊंचाई को दबाने का तथ्य प्रसारित होता है, जो स्पष्ट रूप से अभिव्यंजक नाटक के लिए पर्याप्त नहीं है।
उस समय के सिंथेसाइज़र की एक और कमी ट्यूनिंग की जटिलता थी। प्रत्येक नई ध्वनि के लिए, संगीतकारों को वाद्य यंत्र की धुन बजानी पड़ी, जो लाइव प्रदर्शन में बहुत असुविधाजनक था। उन समय के संगीत कार्यक्रमों में अक्सर सिंथेसाइज़र के पूरे रैक को देखना संभव होता था - इसलिए संगीतकार स्थिति से बाहर निकल गए। समय के साथ, मिनी-कंप्यूटर को उपकरणों में बनाया गया, जिसकी मदद से आप प्रीसेट में पेन की स्थिति को बचा सकते हैं।
हालांकि, एक और बिंदु है जिसका
मिडी के विकास पर बड़ा प्रभाव पड़ा है।
निस्संदेह, प्रत्येक सिंथेसाइज़र का अपना ध्वनि चरित्र होता है, उनमें से प्रत्येक ध्वनि के कुछ प्रकारों में मजबूत था। इसलिए, उस समय के कई संगीतकारों ने एक ही समय में दो उपकरणों पर खेल का अभ्यास किया, जैसे कि विभिन्न मॉडलों का सबसे अच्छा उपयोग करना। विभिन्न सिंथेसाइज़र से लेयरिंग की आवाज़ एक प्रदर्शन तकनीक बन गई है, जो कई संगीतकारों की पहचान है। [1]
2 इतिहास
80 के दशक की शुरुआत तक, अधिकांश निर्माताओं ने एकल इंटरफ़ेस बनाने की आवश्यकता महसूस की। कार्य यह था: सभी प्रकार के विद्युत संगीत वाद्ययंत्रों के बीच डिजिटल रूप में कलाकार के कार्यों के हस्तांतरण के लिए एक मानक विकसित करना। [1]
हम इतिहास में विस्तार से नहीं बताएंगे, (हालांकि यह बहुत दिलचस्प है, आप इसके बारे में [1] में पढ़ सकते हैं), यहां कुछ प्रमुख तिथियां हैं:
- जून 1981 - NAMM प्रदर्शनी में, पहली बातचीत अनुक्रमिक सर्किट , रोलैंड और ओबरहाइम के प्रमुखों के बीच एकल इंटरफ़ेस पर हुई।
- शरद ऋतु 1981 इंटरफ़ेस का पहला संस्करण है जिसे यूएमआई (यूनिवर्सल म्यूजिकल इंटरफ़ेस) कहा जाता है।
- जून 1982 - NAMM प्रदर्शनी में अंतर्राष्ट्रीय विकास का फल प्रस्तुत किया गया। संभावित कानूनी समस्याओं के कारण, UMI का नाम MIDI के पक्ष में छोड़ दिया जाना था।
- अक्टूबर 1982 - प्रारंभिक मिडी विनिर्देश पूरा हुआ।
- दिसंबर 1982 - एक MIDI इंटरफ़ेस से सुसज्जित पहला सिंथेसाइज़र, Sequencial सर्किट पैगंबर 600, जारी किया गया है ।
- 1983 - MIDI मानक समिति (JMSC) , अंतर्राष्ट्रीय MIDI उपयोगकर्ता समूह (IMUG) का गठन किया गया था, MIDI 1.0 विनिर्देश जारी किया गया था।
- 1984 - मिडी मैन्युफैक्चरर्स एसोसिएशन (MMA) का गठन हुआ ।
3 मूल बातें
मिडी मास्टर और गुलाम के बीच एक धारावाहिक संचार प्रोटोकॉल है। होस्ट डिवाइस संदेश उत्पन्न करता है और उन्हें दास को भेजता है, जो प्राप्त आदेशों को निष्पादित करता है। सीरियल - का मतलब है कि सूचना एक समय में एक बिट, बिट द्वारा प्रसारित की जाती है। इसका अर्थ है एक साथ कई संदेश प्रसारित करने की असंभवता।
प्रोटोकॉल में ही तीन भाग होते हैं [1]: डेटा प्रारूप विनिर्देश, हार्डवेयर इंटरफ़ेस विनिर्देश और डेटा संग्रहण विनिर्देश। यह लेख केवल पहले भाग पर चर्चा करेगा।
मिडी संदेशों को दो प्रकारों में विभाजित किया जाता है: चैनल संदेश और सिस्टम संदेश। पूर्व नियंत्रण ध्वनि पीढ़ी, जबकि बाद में सिंक्रनाइज़ेशन जैसे सेवा कार्य करते हैं।

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

जैसा कि आप आंकड़ा से देख सकते हैं, केवल 3 बिट्स को संदेशों के प्रकार के बारे में जानकारी के लिए आवंटित किया गया है, जिसमें केवल 8 नंबर एन्कोड किया जा सकता है। उनमें से 7 सबसे अधिक इस्तेमाल किए जाने वाले कमांड के लिए आरक्षित हैं, और बाद वाले का उपयोग सिस्टम संदेशों के लिए किया जाता है। जब एक सिस्टम संदेश प्रसारित होता है, तो बाइट स्थिति के अंतिम 4 बिट्स (जिसमें चैनल नंबर आमतौर पर प्रसारित होता है) सिस्टम संदेश के प्रकार को निर्धारित करता है।
टेबल। 1. चैनल संदेश।संदेश | स्थिति बाइट | डेटा बाइट 1 | डेटा बाइट 2 |
ध्यान दें | 1000nnnn | नोट नंबर | वेग |
पर ध्यान दें | 1001nnnn | नोट नंबर | वेग |
पॉलीफोनिक कुंजी दबाएं | 1010nnnn | नोट नंबर | दबाव |
नियंत्रण परिवर्तन | 1011nnnn | नियंत्रक संख्या | मूल्य |
कार्यक्रम में बदलाव | 1100nnnn | कार्यक्रम संख्या | - |
चैनल का दबाव | 1101nnnn | दबाव | - |
पिच व्हील चेंज बदला | 1110nnnn | कार्यक्रम संख्या | - |
सिस्टम संदेश | 1111nnnn | ... | ... |
टेबल। 2. सिस्टम संदेशसंदेश | स्थिति बाइट | डेटा बाइट 1 | डेटा बाइट 2 |
सिस्टम एक्सक्लूसिव (SysEx) |
सिस्टम अनन्य | 11110000 | आईडी | ... |
सिस्टम कॉमन है |
एमटीसी क्वाटर फ्रेम | 11110001 | समय कोड | - |
गाने की स्थिति सूचक | 11110010 | LSB | MSB |
गीत का चयन करें | 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]।
नाम में "ओपन" शब्द का अर्थ है कि
ओएससी पूर्व निर्धारित नहीं करता है कि कुछ मापदंडों के लिए किन संदेशों का उपयोग किया जाना चाहिए - यह किसी विशेष डिवाइस के डेवलपर द्वारा तय किया गया है। इसके अलावा, इस शब्द का एक और अर्थ है: प्रोटोकॉल खुला है, इसके विनिर्देश आधिकारिक वेबसाइट पर हैं, जहां आप स्रोत डाउनलोड कर सकते हैं।
ओपन साउंड कंट्रोल का उपयोग करने वाले कार्यक्रमों की एक छोटी (और अपूर्ण) सूची:
- प्रोग्रामिंग भाषाएँ: C / C ++, Java, Php, Python, Ruby।
- दृश्य प्रोग्रामिंग और संश्लेषण वातावरण: बिड्यूल, चक, कॉमन म्यूजिक सीपीएस, इंटक, मैक्स / एमएसपी, ओपन साउंड वर्ल्ड, पीडी, सुपरकोलाइडर, रीकेटर, वीवीवीवी।
- सेंसर के साथ काम करने वाले उपकरण: एथरसिन, ग्लूयोन, इप्सोनलैब क्रोंडे, लेमुर, स्मार्ट, कंट्रोलर, टेबॉक्स, टोस्टर।
- अन्य कार्यक्रम: आइज़वेब, पिकर, सोनार्ट, स्पिनओएससी।
2 सुविधाएँ
- आपको किसी भी डेटा ट्रांसफर प्रोटोकॉल (सबसे आम टीसीपी / आईपी और यूडीपी हैं ) का उपयोग करने की अनुमति देता है।
- ओएससी आपको मापदंडों के लिए सहज ज्ञान युक्त पते सेट करने की अनुमति देता है। उदाहरण के लिए, यदि आप मिक्सर के तीसरे चैनल के 100 के बराबर वॉल्यूम सेट करना चाहते हैं, तो संदेश इस तरह दिख सकता है: "/ मिक्सर / चैनल / 4 / वॉल्यूम 100" ।
- तथाकथित पैटर्न मिलान का उपयोग करके एकल संदेश के साथ कई मापदंडों को नियंत्रित करना संभव है। उदाहरण के लिए, आप निम्न संदेश का उपयोग करके सभी मिक्सर चैनलों की मात्रा को 10 तक कम कर सकते हैं: "/ मिक्सर / चैनल / * / वॉल्यूम 10" । यह रिकॉर्डिंग प्रारूप प्रोग्रामर और ऑपरेटिंग सिस्टम के यूनिक्स परिवार के उपयोगकर्ताओं से परिचित हो सकता है।
- एक एकल ओएससी संदेश में, कई प्रकार के डेटा प्रेषित किए जा सकते हैं।
- समय टैग प्रत्येक संदेश को टाइमस्टैम्प सौंपा गया है।
3 पदों का एनाटॉमी

यह ध्यान देने योग्य है कि
यूडीपी का उपयोग करते समय, यदि संदेश अलग-अलग पैकेट में प्रेषित किए गए थे, तो वे जरूरी नहीं कि उस क्रम में पहुंचेंगे जिसमें वे प्रसारित किए गए थे [6]। मान लें कि निम्नलिखित संदेश प्रेषित किए गए थे:
/synth1/noteoff 54
/synth1/noteon 60
वास्तव में, वे रिवर्स ऑर्डर में आ सकते हैं:
/synth1/noteoff 60
/synth1/noteon 54
यह
पॉलीफनी में आवाज नियंत्रण के साथ समस्याएं पैदा कर सकता है, उदाहरण के लिए, इस संदेश में,
नोटऑफ़ कमांड
भेजा गया है , जो आवाज़ को बंद कर देता है और फिर दूसरे नोट को चालू करता है। यदि ये संदेश उल्टे क्रम में आते हैं, तो आवाज जारी नहीं की जाएगी और नया नोट शुरू नहीं हो पाएगा।
इससे बचने के लिए, आपको एक पैकेट (बंडल) में संदेश भेजने या
टीसीपी / आईपी का उपयोग करने की आवश्यकता है, यह
यूडीपी से अलग है कि यह पैकेट के सही वितरण की गारंटी देता है, उनमें से प्रत्येक को अपने मूल रूप में प्रसारित होने तक प्रेषित करता है। यह ध्यान में रखा जाना चाहिए कि ऐसी सुविधा की कीमत पर
यूडीपी की तुलना में बड़ी देरी होगी, इसलिए
टीसीपी / आईपी का उपयोग उचित होना चाहिए।
4 पैटर्न मिलान
वे अक्षर जिन्हें पता बार में इस्तेमाल किया जा सकता है [7]:
- "?" - किसी एक वर्ण से मेल खाता है।
- "*" - शून्य या किसी भी अन्य वर्णों के अनुक्रम से मेल खाता है।
- वर्ग कोष्ठक में वर्ण (उदाहरण के लिए, "[स्ट्रिंग]") - एक स्ट्रिंग में किसी भी वर्ण से मेल खाता है। वर्ग कोष्ठक में, एक हाइफ़न (-) और एक विस्मयादिबोधक चिह्न (!) के विशेष अर्थ हैं:
दो वर्णों के बीच एक हाइफ़न का अर्थ है ASCII अनुक्रम में संख्याओं की एक सीमा (एक पंक्ति के अंत में एक हाइफ़न का कोई विशेष अर्थ नहीं है);
पहले वर्ग कोष्ठक के बाद विस्मयादिबोधक चिह्न वर्णों की कार्रवाई को उलट देता है: अब वे सभी वर्णों के अनुरूप होंगे जो पंक्ति में नहीं हैं (यदि यह चरित्र किसी अन्य स्थान पर रखा गया है, तो इसका विशेष अर्थ गायब हो जाएगा)। - कंस्ट्रक्शंस जैसे {पहला, दूसरा} कॉमा के साथ लिखे गए किसी भी वर्ण के अनुक्रम के अनुरूप है।
संदर्भ
[१]
पत्रिका म्यूजिकल इक्विपमेंट से मिडी पर लेखों की एक श्रृंखला ।
[२] टी। विंकलर "
संवादात्मक संगीत की रचना " - २००१ एमआईटी प्रेस।
[३] एम। राइट, और ए। फ्रीड, १ ९९ ight। "
ओपन साउंड कंट्रोल: साउंड सिंथेसाइज़र के साथ संचार के लिए एक नया प्रोटोकॉल। " - आईसीएमएन १ ९९ ight।
[४] एम। राइट "
ओपन साउंड कंट्रोल: म्यूजिकल नेटवर्किंग के लिए एक सक्षम तकनीक "। संगठित ध्वनि 10 (3): 193-200 - 2005 कैम्ब्रिज यूनिवर्सिटी प्रेस।
[५] ए। शमेदर, ए। फ्रीड, डी। वेसल "
ओपन साउंड कंट्रोल के लिए सर्वश्रेष्ठ अभ्यास " - लिनक्स ऑडियो सम्मेलन, 05/05/2010, उट्रेच, एनएल, (2010)।
[६] ए। फ्रेटाटा "
ओपन साउंड कंट्रोल: अड़चनें
और सीमाएँ " - २०० N का conference वाँ NIME सम्मेलन।
[[] एम। राइट "
द ओपन साउंड कंट्रोल १.० विशिष्टता " - २००२।
[[] ए। फ्रीड, ए। शमेदर "नीम
के लिए ओपन साउंड कंट्रोल संस्करण १.१ की विशेषताएं और भविष्य " - २०० ९।
PS बहुत से आर्टिकल में
मिली त्रुटि के लिए 8bitjoey
habrayuzer का धन्यवाद।