API .NET per la programmazione di musica? [chiuso]
Domanda
In parole brevi Sto cercando per una traduzione .NET di JFugue .
Aggiorna
Mi rendo conto che non esiste una reale alternativa per .NET JFugue, i posti sono sempre soffietto grande come linea guida per chi vuole sviluppare con la propria.
Grazie per tutti voi.
Nota: Voglio emphsize che la mia ricerca è sulla parte di trascrizione, non la parte di gioco, in altre parole, sto cercando un motore NET che ha classi MIDI mapping etc
.NAudio sembra essere il più caldo alternativa finora.
Soluzione
NAudio di Mark Heath , una grande libreria musicale .NET direi che dovrebbe essere contenuta nel BCL.
logo http://code.google.com/ p / midi-dot-net / logo? CCT = 1259803335 MIDI- dot-net
Un altro grande progetto C # da Tom Lokovic.
Altri suggerimenti
Carl Franklin l'ospite di rocce dotnet ha svolto un lavoro con questo, se si guarda ai suoi esempi di codice può essere utile: http://www.franklins.net/dotnet.aspx .
Ha fatto anche un getto schermo sul router Midi .
Spero che questo aiuti
Non so se questo aiuto sarà o meno: http: //www.c-sharpcorner.com/UploadFile/mgold/SheetMusicRecorder09242005060541AM/SheetMusicRecorder.aspx
la sua una tastiera musicale, ma si dovrebbe essere in grado di decodificare il codice sorgente e adattarlo per soddisfare ciò che si sta cercando di fare.
Ho usato Midi Toolkit prima come punto di partenza , forse a trovarlo utile.
A proposito, JFugue non è solo una libreria, ma anche una sintassi. Sto lavorando su porting a Ruby, e sarebbe bello se qualcuno (si, forse?) Porta a .NET =)
DryWetMIDI ha capacità di programmazione di musica a base MIDI. Non v'è alcuna generazione del suono lì, solo API composizione che permette di creare file MIDI. Un esempio veloce:
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");
Come si può vedere non è un sostituto di JFugue a ora, poiché non v'è alcuna sintassi speciale qui, solo API .NET.
Beh, non proprio come JFugue ma ho usato la libreria BASS per .Net. È possibile trovare la libreria a il un4seen web
Si ha il controllo audio e MIDI Thru plugin. Speranza che aiuta.