wav头文件的定义和接口(1)
来源:互联网 发布:淘宝优惠券真的假的 编辑:程序博客网 时间:2024/04/29 09:29
由于录音程序要生成wav文件,所有要自己定义wav 头文件和接口。
wav.h
#ifndef _WAV_OUT_H
#define _WAV_OUT_H
#include <sys/types.h>
typedef struct
{
char FileChunkID[4]; // "RIFF"
u_int32_t dwFileChunkLen;
char RIFFType[4]; // "WAVE"
char FmtChunkID[4]; // "fmt "
u_int32_t dwFmtChunkLen;
u_int16_t wCompression;
u_int16_t wChannels;
u_int32_t dwSamplesPerSec;
u_int32_t dwAvgBytesPerSec;
u_int16_t wBlockAlign;
u_int16_t wBitsPerSample;
char DataChunkID[4]; // "data"
u_int32_t dwDataLen;
} __attribute__((packed)) WAV_HEAD;
ssize_t WaveInitHeader(FILE* fp, int sample_rate, int bite_per_sample, int channels);
ssize_t WaveWriteData(FILE* fp, void* buff, size_t);
int WaveSync(FILE* fp);
#endif //#def _WAV_OUT_H
wav.h
#ifndef _WAV_OUT_H
#define _WAV_OUT_H
#include <sys/types.h>
typedef struct
{
char FileChunkID[4]; // "RIFF"
u_int32_t dwFileChunkLen;
char RIFFType[4]; // "WAVE"
char FmtChunkID[4]; // "fmt "
u_int32_t dwFmtChunkLen;
u_int16_t wCompression;
u_int16_t wChannels;
u_int32_t dwSamplesPerSec;
u_int32_t dwAvgBytesPerSec;
u_int16_t wBlockAlign;
u_int16_t wBitsPerSample;
char DataChunkID[4]; // "data"
u_int32_t dwDataLen;
} __attribute__((packed)) WAV_HEAD;
ssize_t WaveInitHeader(FILE* fp, int sample_rate, int bite_per_sample, int channels);
ssize_t WaveWriteData(FILE* fp, void* buff, size_t);
int WaveSync(FILE* fp);
#endif //#def _WAV_OUT_H
- wav头文件的定义和接口(1)
- wav头文件的定义和接口(2)
- wav文件的文件头
- wav文件的文件头
- C++和C读取WAV文件头的疑惑
- wav文件音频头的研究
- wav文件音频头的研究
- wav文件音频头的研究
- wav文件音频头的研究
- WAV文件的头信息(文件头格式)
- WAV文件头信息
- wav 文件头解析
- 读取wav文件头
- .wav文件头分析
- WAV文件头信息
- wav 文件头解析
- 头文件的定义
- wav文件头格式详解
- 软件人学习
- CSS2 样式表(属性·其他)
- java读书笔记-String &amp; StringBuffer
- script作用域
- 小菲波那契数的计算程序
- wav头文件的定义和接口(1)
- sqlserver乱码问题
- 博客开篇了
- sql游标的使用
- 链表元素求和的伪递归优化
- 测试一下我的文章
- 从重构到工厂模式
- JDK1.5新特性之Java Generics
- 购物车的 java 代码实现方法