.NET API للبرمجة الموسيقية؟ [مغلق
سؤال
في كلمات قصيرة ، أبحث عن ترجمة .NET لـ Jfugue.
تحديث
أدرك أنه لا يوجد بديل حقيقي .NET لـ JFugue ، فإن المشاركات التي تُعتبر دائمًا رائعة كمبدأ توجيهي للشخص الذي يريد تطويره بمفرده.
شكر لكم جميعا.
ملاحظة: أود أن أؤكد أن بحثي موجود في جزء النسخ ، وليس جزء اللعب ، وبعبارة أخرى ، أنا أبحث عن محرك .NET يحتوي على فصول رسم الخرائط MIDI وما إلى ذلك.
ناوديو يبدو أن أكثر بديل سخونة حتى الآن.
المحلول
الدفع ناوديو بواسطة مارك هيث, ، مكتبة موسيقى رائعة .NET أود أن أقول إنها يجب أن تكون موجودة في BCL.
Logo http://code.google.com/p/midi-dot-net/logo؟cct=1259803335 midi-dot-net
مشروع C# رائع آخر من تأليف توم لوكوفيتش.
نصائح أخرى
كارل فرانكلين مضيف Dotnet Rocks قام ببعض العمل مع هذا ، إذا نظرت إلى عينات الكود الخاصة به ، فقد يساعد ذلك: http://www.franklins.net/dotnet.aspx.
كما فعل يلقي الشاشة على أجهزة التوجيه MIDI.
أتمنى أن يساعدك هذا
لا أعرف ما إذا كان هذا سيساعد أم لا: http://www.c-sharpcorner.com/uploadfile/mgold/sheetmusicrecorder09242005060541am/sheetmusicrecorder.aspx
إنها لوحة مفاتيح موسيقية ، ولكن يجب أن تكون قادرًا على عكس هندسة الكود المصدري وتكييفها لتناسب ما تحاول القيام به.
لقد استخدمت مجموعة أدوات MIDI من قبل كنقطة انطلاق ، ربما تجدها مفيدة.
راجع للشغل ، JFugue ليس فقط مكتبة ، ولكن أيضا بناء الجملة. أنا أعمل على نقله إلى روبي ، وسيكون من الرائع أن ينقله شخص ما (ربما؟) إلى .NET =)
Drywetmidi لديه قدرات برمجة الموسيقى القائمة على MIDI. لا يوجد توليد صوتي هناك ، فقط تأليف واجهة برمجة التطبيقات التي تسمح بإنشاء ملفات MIDI. مثال سريع:
Pattern pattern = new PatternBuilder()
// Insert a pause of 5 seconds
.StepForward(new MetricTimeSpan(0, 0, 5))
// Insert an eighth C# note of the 4th octave
.Note(Octave.Get(4).CSharp, MusicalTimeSpan.Eighth)
// Set default note length to triplet eighth and default octave to 5
.SetNoteLength(MusicalTimeSpan.Eighth.Triplet())
.SetOctave(5)
// Now we can add triplet eighth notes of the 5th octave in a simple way
.Note(NoteName.A)
.Note(NoteName.B)
.Note(NoteName.GSharp)
// Get pattern
.Build();
// Now we can export pattern to MIDI file
MidiFile midiFile = pattern.ToFile(TempoMap.Default);
midiFile.Write("My Great Song.mid");
كما ترون ، ليس بديلًا لـ JFugue في الوقت الحالي نظرًا لعدم وجود بناء جملة خاص هنا ، فقط .NET API.
حسنًا ، ليس فقط مثل JFugue ولكن لقد استخدمت مكتبة Bass لـ .NET. يمكنك العثور على المكتبة في شبكة UN4SEEN
لديها التحكم في الصوت والمكونات الإضافية MIDI Thru. أتمنى أن يساعد ذلك.