मैक्स (सॉफ्टवेयर)

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

इतिहास
1980 के दशक: मिलर पिकेट ने पेरिस में IRCAM|Institut de Recherche et Coordination Acoustique/Musique (IRCAM) में 1985 में मैक्स पर काम करना शुरू किया।  मूल रूप से द पैचर कहा जाता है, यह पहला संस्करण संगीतकारों को  मैकिनटोश  पर इंटरैक्टिव कंप्यूटर संगीत स्कोर बनाने के लिए एक ग्राफिकल इंटरफ़ेस प्रदान करता है। इस बिंदु पर इसके विकास में मैक्स सॉफ्टवेयर में अपना वास्तविक समय ध्वनि संश्लेषण नहीं कर सका, बल्कि मिडी या इसी तरह के प्रोटोकॉल (कंप्यूटिंग) का उपयोग करके बाहरी हार्डवेयर सिंथेसाइज़र और सैंपलर्स को नियंत्रण संदेश भेजा। रचना में इसका सबसे पहला व्यापक रूप से मान्यता प्राप्त उपयोग प्लूटन के लिए था, जो 1988 में फिलिप मैनौरी द्वारा पियानो और कंप्यूटर का टुकड़ा था; सॉफ्टवेयर ने एक कंप्यूटर को एक पियानो के साथ सिंक्रोनाइज़ किया और ऑडियो प्रोसेसिंग के लिए सोगिटेक 4X को नियंत्रित किया। 1989 में, IRCAM ने मैक्स/FTS (ध्वनि से तेज़) विकसित किया, मैक्स का एक संस्करण NeXT के लिए ISPW (ISPW) में पोर्ट किया गया। ऑडियो मैक्स के रूप में भी जाना जाता है, यह मैक्स के एमएसपी ऑडियो एक्सटेंशन के लिए एक अग्रदूत साबित होगा, आंतरिक हार्डवेयर डिजिटल सिग्नल प्रोसेसर (डीएसपी) बोर्ड का उपयोग करके रीयल-टाइम संश्लेषण करने की क्षमता को जोड़ता है। उसी वर्ष, IRCAM ने सॉफ्टवेयर को Opcode Systems को लाइसेंस दिया। संदर्भ>समकालीन वायलिन: पेट्रीसिया स्ट्रेंज, एलन स्ट्रेंज द्वारा विस्तारित प्रदर्शन तकनीक 10 सितंबर 2018 को एक्सेस किया गया

1990 के दशक: Opcode ने 1990 में Max नाम से एक व्यावसायिक संस्करण लॉन्च किया, जिसे डेविड ज़िकारेली द्वारा विकसित और विस्तारित किया गया था। हालाँकि, 1997 तक, Opcode इसे रद्द करने पर विचार कर रहा था। इसके बजाय, ज़िकारेली ने प्रकाशन अधिकार हासिल कर लिए और वाणिज्यिक विकास जारी रखने के लिए एक नई कंपनी, साइक्लिंग '74 की स्थापना की। रेफरी> समय सौभाग्यशाली था, क्योंकि ओपकोड को 1998 में गिब्सन गिटार कॉर्पोरेशन द्वारा अधिग्रहित कर लिया गया था और 1999 में परिचालन समाप्त हो गया। IRCAM का इन-हाउस मैक्स डेवलपमेंट भी बंद हो रहा था; वहाँ उत्पादित अंतिम संस्करण jMax था, जो 1998 में सिलिकॉन ग्राफिक्स (SGI) और बाद में Linux सिस्टम के लिए विकसित Max/FTS का प्रत्यक्ष वंशज था। इसने अपने ग्राफिकल इंटरफेस के लिए जावा का इस्तेमाल किया और रीयल-टाइम बैकएंड के लिए सी, और अंततः इसे खुला स्रोत सॉफ्टवेयर के रूप में जारी किया गया। इस बीच, पिकेट ने स्वतंत्र रूप से 1996 में प्योर डेटा (पीडी) नामक एक पूरी तरह से पुन: डिज़ाइन किया गया ओपन-सोर्स कंपोजिशन टूल जारी किया, जो कि IRCAM संस्करणों से कुछ अंतर्निहित इंजीनियरिंग अंतरों के बावजूद, उसी परंपरा में जारी रहा। 1997 में साइक्लिंग '74 की पहली मैक्स रिलीज़, प्योर डेटा पर पकेट के काम से आंशिक रूप से प्राप्त हुई थी। मैक्स/एमएसपी (मैक्स सिग्नल प्रोसेसिंग, या आद्याक्षर मिलर स्मिथ पकेट) कहा जाता है, यह मैक्स के कई एक्सटेंशन और अवतारों में सबसे उल्लेखनीय है: इसने मैक्स को समर्पित डीएसपी हार्डवेयर के बिना रीयल-टाइम डिजिटल ऑडियो सिग्नल में हेरफेर करने में सक्षम बनाया। इसका मतलब यह था कि संगीतकार अब अपने स्वयं के जटिल सिंथेसाइज़र और प्रभाव प्रोसेसर बना सकते हैं, केवल एक सामान्य-उद्देश्य वाले कंप्यूटर जैसे Macintosh PowerBook G3 का उपयोग कर सकते हैं।

1999 में, नेटोचका नेज़वानोवा (लेखक) सामूहिक ने जारी किया nato.0+55+3d|NATO.0+55+3d, बाहरी लोगों का एक सूट जिसने मैक्स में व्यापक रीयल-टाइम वीडियो नियंत्रण जोड़ा।

'2000 का दशक:' हालांकि NATO.0+55+3d मल्टीमीडिया कलाकारों के बीच तेजी से लोकप्रिय हो गया, इसका विकास 2001 में अचानक बंद हो गया। सॉफ्टवीएनएस, मैक्स में दृश्य प्रसंस्करण के लिए एक्सटेंशन का एक और सेट, 2002 में कनाडाई मीडिया कलाकार डेविड रोकेबी द्वारा जारी किया गया था। साइकिलिंग '74 ने 2003 में मैक्स 4 के साथ वीडियो एक्सटेंशन, जिटर का अपना सेट जारी किया, जिसमें रीयल-टाइम वीडियो, ओपनजीएल ग्राफिक्स और मैट्रिक्स (गणित) प्रसंस्करण क्षमताएं शामिल थीं। मैक्स 4 भी खिड़कियाँ ़ पर चलने वाला पहला संस्करण था। 2008 में जारी मैक्स 5 ने मैक्स के व्यावसायिक इतिहास में पहली बार पैचिंग जीयूआई को फिर से डिजाइन किया।

'2010:' 2011 में, मैक्स 6 ने 64-बिट ऑपरेटिंग सिस्टम के साथ संगत एक नया ऑडियो इंजन जोड़ा, एबलटन लाइव सीक्वेंसर सॉफ्टवेयर के साथ एकीकरण, और जेन नामक एक एक्सटेंशन, जो उच्च प्रदर्शन के लिए अनुकूलित अधिकतम पैच संकलित कर सकता है। मैक्स 7 को 2014 में रिलीज़ किया गया था और 3डी रेंडरिंग सुधारों पर ध्यान केंद्रित किया गया था। 6 जून, 2017 को, एबलटन ने साइक्लिंग '74 की खरीद की घोषणा की, जिसमें मैक्स को साइक्लिंग '74 द्वारा प्रकाशित करना जारी रखा गया और डेविड ज़िकारेली कंपनी के साथ रहे। 25 सितंबर, 2018 को मैक्स 8, सॉफ्टवेयर का सबसे हालिया प्रमुख संस्करण जारी किया गया था। कुछ नई विशेषताओं में एमसी, कई चैनलों के साथ काम करने का एक नया तरीका, मैक्स के लिए नोड के साथ जावास्क्रिप्ट समर्थन और विज़ी 2 शामिल हैं।

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

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

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

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

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

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

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

यह भी देखें

 * शुद्ध डेटा
 * ऑडियो संश्लेषण वातावरण की तुलना
 * संगीत सॉफ्टवेयर की सूची
 * दृश्य प्रोग्रामिंग भाषा