wav头文件的定义和接口(1)
2007-11-15 16:41
162 查看
由于录音程序要生成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头文件的定义和接口(2)
- cpp模块中如何定义你的对外接口头文件
- java中接口的定义与实现
- 接口的作用之一,定义规范
- C++头文件多次包含 变量,函数重定义解决方案
- IM类app业务模块功能接口定义(二)
- 接口定义语言IDL,COM
- 编码习惯之接口定义
- 快嘉接口定义指南
- 纯虚函数接口如何定义?使用时应注意什么?
- RS232 DB9 计算机接口定义和RS232 (DB9) MAX232引脚定义
- 为什么要定义那么多接口?
- JTAG各类接口针脚定义及含义
- AlexNet模型实现(2. C++接口头文件)
- 第19条:接口只用于定义类型
- Android笔记三:Android 接口定义语言 (AIDL)--Binder工作原理分析
- 定义CentOS 6桥接口(图形界面)
- Node接口也定义了一些所有节点类型都包含的特性和方法
- 第7篇 WPF C# 怎样定义类及其接口