J'ai lancé un petit projet qui inclut de travailler avec des fichiers MIDI. Je me demandais, y a-t-il un code C # ou VB.NET que PEFORMS qui jette entre les fichiers MIDI et WAV? P>
3 Réponses :
En pratique, cela signifie que tout fichier MIDI donné n'a pas de son spécifique. Le son résultant de la conversion d'un fichier MIDI en audio variera en fonction de la qualité du synthétiseur ou de la bibliothèque d'échantillons et les sons sélectionnés pour effectuer la conversion. P>
De nombreuses cartes son ont la capacité de produire du son à partir de fichiers MIDI. Ils peuvent le faire car de nombreux fichiers MIDI suivent une norme appelée Spécification générale MIDI strong> < / a>. La spécification MIDI General fournit un moyen normalisé de mapper des missions d'instruments spécifiques. Si votre fichier MIDI est conforme à cette norme, vous pouvez le lire via un générateur de son MIDI General MIDI et s'attendre à ce qu'un caisse claire sonne comme un tambour claire, et non comme une trompette. P>
Si vous avez un package de production de musique sophistiqué comme Cakewalk Strong> , vous pouvez Chargez un fichier MIDI dans celui-ci, et il utilisera ses bibliothèques sonores à bord pour rendre un fichier sonore pour vous, ce qui peut être fait plus rapidement que le temps réel (c'est-à-dire qu'il n'a pas à jouer au son à travers le son carte et capturer la sortie). P>
Je suppose que ce que j'essaie de dire, c'est qu'il y a beaucoup de pièces mobiles à cela. Il n'y a pas un seul morceau de code ni un module de classe qui le fera pour vous. P>
Je souhaite pouvoir jouer aux fichiers MIDI sur Silverlight, je m'attends trop?
Je ne pense pas que vous ayez besoin de convertir MIDI en WAV afin de la jouer à Silverlight. Si Silverlight ne peut pas gérer des fichiers MIDI Nativement, vous pouvez alors appuyer sur l'API Windows Multimédia pour lire les fichiers MIDI.
Comment je fais ça? L'environnement de Silverlight me bloque d'avoir accès à cela. Comment puis-je ajouter une référence Com référence à Windows Multimédia API?
Pas Silverlight, mais j'ai trouvé que ceci très cool ... JQuery Media Plugin: MALSUP.com/JQUERY / Media / # Vue d'ensemble
"Beaucoup de pièces mobiles à cela" - Je ne peux penser que deux. Le pack de synthétiseur utilisé pour le rendu et le code qui effectue réellement le rendu.
Il y a un certain nombre de programmes que vous pouvez acheter qui fera cela (Google "Convertir MIDI en WAV"), mais je n'ai jamais rencontré de code .NET non disponible publiquement qui le fait (je pense que certains de ces programmes sont écrit en .NET, mais le code source n'est pas disponible). P>
J'ai un ami en ligne qui travaille sur un convertisseur commercial MIDI-TO-WAV, mais ce n'est pas dans .NET et ce ne sera pas open source. Comme Robert Harvey a mentionné, il ne s'agit pas d'une tâche simple du tout, car il implique essentiellement de rédiger votre propre synthétiseur logiciel (une tâche après mon propre cœur). P>
Vous pouvez essayer d'une interface d'une manière d'une quelconque interface avec Temple , qui est open source: p>
TIMIDITÉ ++ est un synthétiseur logiciel. Il peut lire des fichiers MIDI en les convertissant en données de forme d'onde PCM; Donnez-lui des données MIDI avec des fichiers de données numériques de l'instrument, puis il les synthétise en temps réel et joue. Il peut non seulement lire des sons, mais peut également enregistrer les formes d'onde générées dans des disques durs en tant que formats de fichiers audio variés. P> blockQuote>
Fluidsynth est un projet open source plus récemment mis à jour dans une veine similaire: p>
FLUIDSYNTH est un synthétiseur de logiciel en temps réel basé sur les spécifications SoundFont 2. P> blockQuote>
Vous pouvez télécharger certains SoundFont gratuits (les données PCM réelles utilisées par ces synthétiseurs pour "rendre" les fichiers MIDI) des sites sur cette liste . p>
Merci, je l'ai découvert quand. Fonctionne bien avec des polices sonores de cette liste: en.wikipedia.org/wiki/soundfont#free_soundfont_downloads a>
Jacob, excellent travail avec ces liens. Je suis sûr qu'ils seront utiles. J'aime particulièrement la fonctionnalité TIMIDITY ++: "lit les fichiers MIDI distants sur le réseau" Savez-vous où je peux trouver un fichier .exe? Je suis toujours gâché lors de la configuration des applications Linker C ++ (je ne suis pas un excellent programmeur C ++)
Vous pouvez essayer ocmnet.com/saxguru/timidity.htm ou hitsquad.com/smm/programs/timidity_win32 . Je ne trouve pas le site que je l'ai initialement téléchargé, et je n'ai pas encore essayé ces packages.