2008-11-06 12 views
9

मेरे पास मेरे विंडोज पीसी पर फ्रूटिटीलोप्स और प्रोपेलरहेड कारण सॉफ़्टवेयर synths दोनों हैं।स्क्रिप्टिंग fruityloops या propbheads कारण वीबी या पायथन से कारण?

किसी भी तरह से मैं इन्हें विजुअल बेसिक या पायथन से प्राप्त कर सकता हूं और स्क्रिप्ट कर सकता हूं? या कम से कम मिडी संदेश कोड से synths को भेजें?

अद्यतन: एक "मिडी-नक्शाकार" (लिंक MusiGenesis के लिए धन्यवाद) की तरह कुछ का उपयोग करने के प्रयास काम करने के लिए नहीं है। मुझे लगता है कि मानक जीएम मिडी synths जैसे कारण या एफएल स्टूडियो अधिनियम।

अद्यतन 2: यदि आप इस सवाल का, check out this too में रुचि रखते हैं।

उत्तर

2

मुझे लगता है कि दोनों FL Studio और कारण डिफ़ॉल्ट MIDI प्लेबैक डिवाइस के रूप में कॉन्फ़िगर किया जा सकता है। वीबीएनईटी से या तो एमआईडीआई संदेश भेजने के लिए, आपको midiOutOpen, midiOutShortMsg और midiOutClose API कॉल को PInvoke करना होगा। यहाँ कोड नमूने के लिए एक लिंक है:

http://www.answers.com/topic/midioutopen

वे VB6 के लिए कर रहे हैं, लेकिन वे VB.NET के लिए अनुवाद करने के लिए आसान होना चाहिए।

मैं जानता हूँ कि FL स्टूडियो एक प्लगइन (या एक VSTx प्लगइन) फ्लोरिडा के लिए लेखक से "प्रेरित" किया जा सकता है, लेकिन मुझे लगता है कि ये हमेशा सी या सी में लिखे गए हैं ++।

संपादित करें: मैं बस पता चला कि Windows Vista मिडी मैपर (जो डिफ़ॉल्ट MIDI डिवाइस सरल रूप में फ्लोरिडा या कारण की स्थापना कर दिया है |) गिरा दिया। गजब का।

http://akkordwechsel.de/15-windows-vista-und-der-midi-mapper/

मैं सिर्फ यह पता करने की कोशिश की (यह सिर्फ एक * cpl फ़ाइल है कि आप को चलाने के लिए डबल क्लिक करें है) और यह काम करने के लिए (हालांकि जीएम प्रकट होता है: यहाँ एक कड़ी मैं एक वैकल्पिक समाधान के साथ पाया जाता है सिंथ मेरे लैपटॉप पर उपलब्ध एकमात्र विकल्प है, इसलिए मुझे यकीन नहीं है कि यह FL या कारणों को पसंद के रूप में उठाएगा)।

+0

कोई विचार यह कॉन्फ़िगर कैसे करें। मैं FL स्टूडियो 7 का उपयोग कर रहा हूं और मुझे अपने वीबी या पायथन प्रोग्राम से मिडी प्राप्त करने के लिए कोई विकल्प नहीं दिख रहा है जो सीधे विंडोज जीएम synth पर जाने लगते हैं। – interstar

+0

मुझे लगता है कि आप Vista का उपयोग कर रहे हैं, जिसे मैंने अभी सीखा है, अब MIDI मैपर नहीं है। कमाल - एक और छुपा कारण क्यों विस्टा इतनी भयंकर बेकार है। समस्या से निपटने के लिए एक लिंक के लिए मेरा संपादन देखें। – MusiGenesis

+0

हाँ ... कोई MidiMapper – interstar

2

नोट: यह जवाब वास्तव में सवाल आपसे पूछा उत्तर नहीं मिलता है, लेकिन यह परिणाम आप चाहते हैं :)

को प्राप्त हो सकता है आप जावा में एक वीएसटी प्लगइन jVSTWrapper (http://jvstwrapper.sourceforge.net/) का उपयोग कर लेखक कर सकते हैं। यदि आप वास्तव में पायथन का उपयोग करना चाहते हैं तो आप जावा को इंटरफ़ेस करने के लिए ज्योथन का उपयोग कर सकते हैं और इसे इस तरह से कर सकते हैं। वैकल्पिक रूप से आप Jroovy जैसे JVM के लिए जावा या अन्य स्क्रिप्टिंग भाषा में प्लगइन लिख सकते हैं।

0

जब कारण की बात आती है, तो आप इसके बंद आर्किटेक्चर की वजह से इसके साथ बहुत कुछ कर सकते हैं - आप वीएसटी प्लगइन्स (या डायरेक्टएक्स वाले किसी अन्य प्रकार) का उपयोग कर सकते हैं - आपका एकमात्र विकल्प MIDI का उपयोग करना है।

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

वैकल्पिक रूप से, आप MAX made by Cycling74 देख सकते हैं - यह संगीत के लिए आईडीई की तरह कुछ है ;-) - और मुझे पूरा यकीन है कि आप इसके साथ पायथन का उपयोग कर सकते हैं।

0

आप Rewire होस्ट लिख सकते हैं। हालांकि, आपको लाइसेंस प्राप्त करना होगा (लाइसेंस निःशुल्क है, लेकिन आपका आवेदन स्वामित्व होना चाहिए, इसलिए कोई खुला स्रोत नहीं)।

वैकल्पिक रूप से, आप MIDI संदेशों के माध्यम से इंटरफ़ेस कर सकते हैं।

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

+0

आप भी एक वीएसटी प्लगइन लिख सकते हैं, लेकिन कारण उन्हें समर्थन नहीं करता है, AFAIK। – Dan

3

दोनों एप्लिकेशन MIDI का समर्थन करते हैं। यह सिर्फ इतना है कि वे एक-दूसरे को नहीं देखते हैं।

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

वहाँ कई स्वतंत्र रूप से उपलब्ध हैं, लेकिन यह एक काम करता है: http://www.midiox.com/zip/MidiYokeSetup.msi

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

यह इस तरह काम करेंगे:

Your Application ->Virtual MIDI Port ->FruityLoops

1

आपको क्या करना होगा मिडी घटनाओं की एक तर्क यह है कि भेजा जा सकता है बनाने के लिए एक वीएसटी मिडी scripter/पटकथा प्लगइन है किसी भी MIDI चैनल के लिए। आपको वीएसटी उपकरण/प्रभाव के लिए FL में MIDI चैनल सेट करने की आवश्यकता होगी, जिसके लिए आपको इसके मानों को ट्विक करने की आवश्यकता है। इसके लिए Google के आसपास कुछ प्लगइन्स हैं और यदि आपको कुछ उपयोगी लगता है तो कृपया उन्हें यहां साझा करें :)

+0

SuperMidiScripter: http://azertopia.free.fr/Supermidiscripter.html और वहाँ भी VstLua जो अच्छा लग रहा है लेकिन जब से मूल लेखक की साइट नीचे है मैं एक डाउनलोड लिंक नहीं मिल सकता है। अगर आप इसे पाते हैं तो साझा करें या अगर किसी के पास है तो कृपया इसे हमारे लिए कहीं भी अपलोड करें। – stagas

0

फ्रांसीसी नामक एक ओपनसोर्स संगीत वर्कस्टेशन है, और आप जावास्क्रिप्ट में स्क्रिप्ट कर सकते हैं। (नोट्स डालें/हटाएं, पिच व्हील इत्यादि जैसे मिडी इफेक्ट्स बदलें) यह नियमित मिडी फाइलों को आयात/निर्यात कर सकता है, इसलिए यह फ्रूटिटी लूप या आपके पास जो भी हो, के साथ काम करेगा।

// Insert New 

song.newLane("MyMidiLane", type("Midi")); 
lane = song.getLane("MyMidiLane"); 

part = lane.newPart(time("10.0:000"), time("4.0:000")); 

part.insertNote(note("c#3"), time("11.2:000"), time("2:0"), 120); 
part.insertNote(note("f3"), time("11.3:000"), time("1:0"), 100); 
part.insertNote(note("g#3"), time("11.3:000"), time("1:0"), 100); 
part.insertNote(note("b3"), time("11.3:000"), time("0:64"), 100); 
part.removeNote(note("f3"), time("11.3:000")); 

part = song.newLane("MyTextLane", 
type("Text")).newPart(time("24.0:000"), time("10.0:000")); 
part.text = "This is the test text to be inserted."; 
part.lane.parts[0].remove(); // remove initially inserted text-part 

एक और उदाहरण पढ़ने/बदलने नोट्स के लिए:

lane = song.getLane("MyMidiLane"); 
// a lane has a fixed instrument assigned 


lane.parts[0].notes[0].duration=64 
lane.parts[0].notes[1].duration=32 
lane.parts[0].notes[1].startTick=120 
// Parts are blocks of notes that you can drag around together in the Frinika GUI. 
// They're like patterns in trackers. 
for (i in lane.parts[0].notes){ 
    println("i: "+i+", n: "+noteName(lane.parts[0].notes[i].note)); 
    println("i: "+i+", dur: "+lane.parts[0].notes[i].duration); 
    println("i: "+i+", startT: "+lane.parts[0].notes[i].startTick); 
} 

http://frinika.appspot.com/ यह एक जावा Webstart लांचर के रूप में अच्छी तरह से है, तो आप भी की जरूरत नहीं है स्थापित करें।

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

यहाँ sourcefile जहां जावास्क्रिप्ट डॉक्स मिल जाएगा:

frinika Javascript doc/source

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

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

संबंधित मुद्दे