ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE

उपयोगकर्ता मैनुअल

MIDI सिंटैक्स

OnSong एक पाठ-आधारित सिंटैक्स का उपयोग MIDI कमांड व्यक्त करने के लिए करता है। जबकि आप MIDI ईवेंट्स का उपयोग मेटाडेटा संपादक में कर सकते हैं, आप पाठ में MIDI कमांड भी व्यक्त कर सकते हैं।

सीमांकित मान

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

1.2:0@0, PC1.2:3@0, N67@1, START, SS8

चैनल

प्रत्येक प्रविष्टि में एक @ प्रतीक हो सकता है। प्रतीक के बाद का संख्यात्मक मान वह चैनल है जिस पर कमांड भेजी जानी है। चूंकि MIDI में चैनल शून्य से शुरू होते हैं, चैनल एक शून्य (0) होगा, चैनल दो एक (1) होगा, आदि।

यदि कोई @ प्रतीक का उपयोग नहीं किया जाता है, तो कमांड सभी चैनलों पर भेजी या प्राप्त की जाती है।

उपसर्ग

सूची में प्रत्येक प्रविष्टि में एक उपसर्ग होता है। यह उपसर्ग निर्धारित करता है कि किस प्रकार की MIDI कमांड भेजनी है। इनमें शामिल हैं:

  • PC या कोई उपसर्ग नहीं एक प्रोग्राम परिवर्तन ईवेंट है।
  • N एक नोट ईवेंट है
  • CC एक नियंत्रण परिवर्तन ईवेंट है।
  • SS एक गीत चयन ईवेंट है।
  • START एक प्रारंभ कमांड है।
  • STOP एक रोक कमांड है।
  • CONTINUE एक जारी रखने की कमांड है।
  • F0 एक SysEx संदेश के उपसर्ग के रूप में है।

मान

कमांड का मान @ प्रतीक से ठीक पहले दिखाई देता है या प्रविष्टि के अंत में यदि कोई @ नहीं दिया गया है। यह प्रोग्राम परिवर्तन, नियंत्रण परिवर्तन, नोट, या गीत चयन का मान है जो उपसर्ग के आधार पर है। SysEx प्रविष्टियों के मामले में, SysEx का हेक्साडेसिमल मान F0 उपसर्ग के तुरंत बाद प्रदान किया जाता है जिसका उपयोग सभी SysEx कमांड के लिए हेडर के रूप में किया जाता है।

उप-मान

कुछ मामलों में, अतिरिक्त जानकारी MIDI कमांड में उप-मान के रूप में व्यक्त की जाती है। उदाहरण के लिए, MSB और LSB, साथ ही नियंत्रण मानों का वेग इस तरह भेजा जा सकता है। यह मान के हिस्से में एक बृहदान्त्र के अतिरिक्त के माध्यम से व्यक्त किया जाता है। भेजी गई MIDI कमांड के प्रकार के आधार पर उप-मान का अलग संदर्भ होता है:

  • प्रोग्राम परिवर्तन में प्रोग्राम परिवर्तन के MSB/LSB के साथ संरेखित उप-मान हैं। ये मान एक अवधि से अलग किए जाते हैं जिसमें बाईं ओर MSB और दाईं ओर LSB होता है।
  • नियंत्रण परिवर्तन में इसके द्वारा सेट किए गए नियंत्रण का मान होता है। संख्या 0 से 127 के बीच हो सकती है। यदि छोड़ दी जाए, तो 127 का मान अनुमानित किया जाता है।
  • नोट ईवेंट में उस वेग से संबंधित एक उप-मान होता है जिस पर नोट बजाया जाना चाहिए। यह 0 से 127 के बीच एक संख्यात्मक मान पर सेट किया जा सकता है।

उदाहरण

आइए एक सरल प्रोग्राम परिवर्तन के साथ शुरू करें। इस परिदृश्य में हम प्रोग्राम परिवर्तन 8 का उपयोग करते हैं जो चैनल 1 पर MSB 4 और LSB 2 भी भेजता है। उदाहरण इस का सबसे जटिल भिन्नता के साथ शुरू होता है और बैंक चयन और चैनल को हटाकर अधिक व्यापक बन जाता है:

PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7

नियंत्रण परिवर्तन समान हैं सिवाय इसके कि सिंटैक्स की बाईं ओर नियंत्रण परिवर्तन संख्या है और दाईं ओर एक वैकल्पिक मान है। यदि मान प्रदान नहीं किया जाता है, तो 127 भेजा जाता है। हम चैनल 3 पर मान 64 के साथ नियंत्रण परिवर्तन 106 भेजेंगे।

CC105:63@2, CC105:63. CC105@2, CC105

अब आइए नोट ईवेंट्स पर एक नज़र डालें। हम चैनल 8 पर 75% वेग के साथ C4 बजाना चाहते हैं, हम निम्नलिखित दर्ज करेंगे क्योंकि OnSong MIDI नोट स्केल पर 0 के रूप में MIDI C0 गिनना शुरू करता है:

N60:95@7, N60@7, N60:95, N60

फिर से, यह याद रखना महत्वपूर्ण है कि जैसे-जैसे MIDI सिंटैक्स से मान हटाए जाते हैं, MIDI विवरण अधिक व्यापक और कम विशिष्ट हो जाता है। उदाहरण के लिए, नोट ईवेंट का अंतिम संस्करण सभी चैनलों पर 100% वेग पर C4 भेजेगा।

OnSong 1.999 — अंतिम अपडेट November 23, 2014 पर