Speex Voice ACM Codec 1.0.1.1 코덱을 설치했으며이 NSpeex (C#) 패키지의 C# 코드에 설명 된 것과 다른 .wav 헤더가있는 것 같습니다..Wav Speex 헤더 내용 관련 문제
"Speex Voice ACM Codec 1.0.1.1"로 만든 .wav 파일을 읽고 성공적으로 디코딩 할 수 있지만 .wav 파일을 만들 때 "Speex Voice ACM Codec 1.0.1.1"이 내 헤더를 인식하지 못합니다. 16 진수 편집기로 확인한 결과, "Speex Voice ACM Codec 1.0.1.1"이 생성하는 .wav 헤더에 몇 바이트가 생성되고 생성되지 않으며 NSpeex.PcmWaveWriter 클래스와 다릅니다. 하지 NSpeex.PcmWaveWriter 클래스의 코드에서 무엇 나머지,
raf.Write(WAVE_FORMAT_SPEEX); // Format tag: Speex
raf.Write((short)channels); // Number of channels
raf.Write(sampleRate); // Sampling frequency
raf.Write((CalculateEffectiveBitrate(mode, channels, quality) + 7) >> 3); // Average bytes per second
raf.Write((short)CalculateBlockSize(mode, channels, quality)); // Blocksize of data
raf.Write((short)quality); // Bits per sample
을하지만 :
그래서,이 부분에 동의합니다.
"된 Speex 음성 ACM 코덱 1.0.1.1"만든 .WAV 파일이 (위 부분을 언급 한 후) 내가 볼 헥스 편집기에서:
//byte[] speexSpecific ={
// 0x00, 0x01, 0x02, 0x00,0x0a, 0x00,
// 0x00, 0x00, 0xf4, 0x01,
// 0x03, 0x00, 0x00, 0x00};
하지만 모르는 방법에 무엇입니까 "Speex Voice ACM Codec 1.0.1.1"과 호환되도록 .wav 헤더를 만듭니다. 다시 말해서 .wav 파일을 디코딩하고 디코딩 할 수있는 .wav 파일을 만들 수 있지만 해당 코덱은 .wav 헤더를 인식하지 못하는 것 같습니다.
Speex는 "오픈 소스"라고되어 있습니다. 누군가가 .wav (speex) 헤더의 비밀 바이트를 공개 할 수 있습니까?