delphi 接收网络语音数据保存成wav文件

  已封装成一个类TSoundFile,语音数据为原始pcm,来源于网络。
wav的 pcm格式语音文件由44字节的文件头和语音波形数据组成。

unit uSoundFile;

interface
 uses
  WINDOWS,DirectSound, MMSystem,classes,ActiveX, SysUtils;


type
  TWaveHeader = record   //wav文件头
    Riff_ckid      : DWORD;
    Riff_cksize    : DWORD;
    Riff_fccType   : DWORD;
    fmt_ckid       : DWORD;
    fmt_cksize     : DWORD;
    wFormatTag     : Word;
    nChannels      : Word;
    nSamplesPerSec : DWORD;
    nAvgBytesPerSec: DWORD;
    nBlockAlign    : Word;
    wBitsPerSample : Word;
    data_ckid      : DWORD;
    data_cksize    : DWORD;
  end;

  TSoundFile = class  //
  private
    mFilename:string;   //保存的文件名
    mChanel:Word;     //语音通道数:1单声道;2双声道;
    mRate:Word;       //采样率:常用44100(CD音质),22050,8000
    mBits:Word;        //位深;常用16bits,8bits。
    mWaveHeader:TWaveHeader;
    mFileStream:TFileStream;
    mPos:integer;//数据指针
    functio

猜你喜欢

转载自blog.csdn.net/byc6352/article/details/124647088