Единственный способ сжать WAV до любого разумного размера (без качества торговли) - это преобразовать его в другой формат.
Я не знаю, подходит ли вам этот вариант, но было бы очень легко использовать lame.exe для преобразования в MP3 перед отправкой на сервер.Конечно, вам нужно убедиться, что лицензирование позволяет распространять ваше приложение.
Вот программа с открытым исходным кодом для преобразования MP3 в WAV: http://www.codeproject.com/KB/audio-video/madlldlib.aspx
конвертировать в MP3, вы можете конвертировать MP3 в WAV с использованием lame, также используя опцию --decompress.
using System.Diagnostics;
public string WAV2MP3(string fileName, bool waitFlag) {
string newFileName = fullpathDir + fileName.Replace(".wav",".mp3");
string lameArgs = "-b 32 --resample 22.05 -m m \"" +
fullpathDir + fileName + "\" \"" +
newFileName + "\"";
ProcessStartInfo processInfo = new ProcessStartInfo();
Arguments = lameArgs;
WindowStyle = ProcessWindowStyle.Hidden;
WorkingDirectory = Application.StartupPath;
Process startedProcess = new Process.Start(processInfo);
if (waitFlag) {
startedProcess.WaitForExit();
}
return newFileName;
};