J'ai utilisé NAudio avec succès pour tout traitement et abstraction audio. Il est disponible en tant que NuGet. Il a encodeurs wrapper pour Media Foundation (et autres).
Voici un exemple pour l'encodage en AAC et WAV retour à l'aide NAudio:
using System;
using NAudio.Wave;
namespace ConsoleApplication11
{
class Program
{
static void Main(string[] args)
{
// convert source audio to AAC
// create media foundation reader to read the source (can be any supported format, mp3, wav, ...)
using (MediaFoundationReader reader = new MediaFoundationReader(@"d:\source.mp3"))
{
MediaFoundationEncoder.EncodeToAac(reader, @"D:\test.mp4");
}
// convert "back" to WAV
// create media foundation reader to read the AAC encoded file
using (MediaFoundationReader reader = new MediaFoundationReader(@"D:\test.mp4"))
// resample the file to PCM with same sample rate, channels and bits per sample
using (ResamplerDmoStream resampledReader = new ResamplerDmoStream(reader,
new WaveFormat(reader.WaveFormat.SampleRate, reader.WaveFormat.BitsPerSample, reader.WaveFormat.Channels)))
// create WAVe file
using (WaveFileWriter waveWriter = new WaveFileWriter(@"d:\test.wav", resampledReader.WaveFormat))
{
// copy samples
resampledReader.CopyTo(waveWriter);
}
}
}
}
trouvé quelques informations supplémentaires: http://msdn.microsoft.com/en-us/library/windows/desktop /dd757929(v=vs.85).aspx et aussi http://www.codeproject.com/Articles/459453/Code-to-stream-or-convert-MP3-WMA-to-PCM-WAV-in -Wi bien que cela concerne spécifiquement Win8. Je suis sûr que ça a du bon. – radsdau
qui décode dans Win 8 lien est un bon, je l'ai porté sur C# et .NET 4 et, espérons-le, commettra bientôt les résultats dans NAudio. Je n'ai pas encore essayé avec AAC, mais cela fonctionne très bien avec MP3. J'espère aussi le combiner avec des idées de MFManagedEncode. –
Lien: [Lien Convert AAC en WAV en C#] (http://www.codeproject.com/Articles/501521/Comment-convertir-entre-les-plus-audio-formats-in-NET) – Mirianashvili