Dialogic ADPCM VOX file 6000 Hertz to Wave GSM in Alvas.Audio
Pergunta
How to convert Dialogic ADPCM VOX file 6000 samples per second to Wave GSM in Alvas.Audio?
Solução
Please see example and code below
private static void Vox2Gsm(string voxFile, string wavFile)
{
int samplesPerSec = 6000;
IntPtr format = AudioCompressionManager.GetPcmFormat(1, 16, samplesPerSec);
MemoryStream ms = new MemoryStream();
BinaryReader br = new BinaryReader(File.OpenRead(voxFile));
WaveWriter ww = new WaveWriter(ms, AudioCompressionManager.FormatBytes(format));
Vox.Vox2Wav(br, ww);
br.Close();
WaveReader wr = new WaveReader(ms);
byte[] data = wr.ReadData();
wr.Close();
ww.Close();
IntPtr formatGsm = AudioCompressionManager.GetCompatibleFormat(format, AudioCompressionManager.Gsm610FormatTag);
byte[] dataGsm = AudioCompressionManager.Convert(format, formatGsm, data, false);
WaveWriter wwGsm = new WaveWriter(File.Create(wavFile), AudioCompressionManager.FormatBytes(formatGsm));
wwGsm.WriteData(dataGsm);
wwGsm.Close();
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow