Я пытаюсь написать класс, который будет преобразовывать файлы .wav в файлы .aiff как часть проекта.
Я наткнулся на пару библиотек Alvas.Audio (http://alvas.net/alvas.audio,overview.aspx) и NAudio (http://naudio.codeplex.com)
Мне интересно, есть ли у кого-нибудь опыт работы с любым из них, поскольку я действительно изо всех сил пытаюсь понять, как написать файл в формате aiff, используя любую библиотеку.
Пока у меня есть следующий код, но я не могу понять, как определить выходной файл как aiff:
Альвас
string inFile = textBox1.Text;
WaveReader mr = new WaveReader(File.OpenRead(inFile));
IntPtr mrFormat = mr.ReadFormat();
IntPtr wwFormat = AudioCompressionManager.GetCompatibleFormat(mrFormat, AudioCompressionManager.PcmFormatTag);
string outFile = inFile + ".aif";
WaveWriter ww = new WaveWriter(File.Create(outFile), AudioCompressionManager.FormatBytes(wwFormat));
AudioCompressionManager.Convert(mr, ww, false);
mr.Close();
ww.Close();
NAudio
string inFile = textBox1.Text;
string outFile = inFile + ".aif";
using (WaveFileReader reader = new WaveFileReader(inFile))
{
using (WaveFileWriter writer = new WaveFileWriter(outFile, reader.WaveFormat))
{
byte[] buffer = new byte[4096];
int bytesRead = 0;
do
{
bytesRead = reader.Read(buffer, 0, buffer.Length);
writer.Write(buffer, 0, bytesRead);
} while (bytesRead > 0);
}
}
Любая помощь будет принята с благодарностью :)