zoukankan      html  css  js  c++  java
  • WavIXXX开发录音总结(一) 录音格式

    这段时间写一个录音的控件,参考了一些资料以后,决定采用WavIXXX进行录音以及播放,最后生成WAV格式文件后再使用Lame压缩成MP3格式。

    1.录音初始化格式

    代码
    typedef struct tWAVEFORMATEX
    {
        WORD        wFormatTag;         
    /* format type */
        WORD        nChannels;          
    /* number of channels (i.e. mono, stereo...) */
        DWORD       nSamplesPerSec;     
    /* sample rate */
        DWORD       nAvgBytesPerSec;    
    /* for buffer estimation */
        WORD        nBlockAlign;        
    /* block size of data */
        WORD        wBitsPerSample;     
    /* number of bits per sample of mono data */
        WORD        cbSize;             
    /* the count in bytes of the size of */
                        
    /* extra information (after cbSize) */
    } WAVEFORMATEX, 
    *PWAVEFORMATEX, NEAR *NPWAVEFORMATEX, FAR *LPWAVEFORMATEX;

    wFormatTag 录音类型 通常使用WAVE_FORMAT_PCM

    nChannels 1单声道 2双声道(立体声)

    nSamplesPerSec 采样频率 采样率越高 声音会越清晰

    wBitsPerSample 采用多少位存储声音8位和16位

    nBlockAlign 音频数据块的大小wBitsPerSample*nChannels/8 例如双声道16位那么要用4个字节(32位)来存储声音

    nAvgBytesPerSec 传输比特率 nSamplesPerSec * nBlockAlign (WAVE_FORMAT_PCM)

    cbSize 默认为0

  • 相关阅读:
    求1977!
    三进制小数
    回文数C语言
    JAVA知识点必看
    servlet HttpServletRequest
    为什么web工程要输入localhost或者是127.0.0.1
    service $sce or ng-bind-html
    jQuery的deferred对象详解
    理解promise
    理解Angular中的$apply()以及$digest()
  • 原文地址:https://www.cnblogs.com/poplau/p/1802659.html
Copyright © 2011-2022 走看看