Changeset 518 for pjproject/trunk/pjmedia/include/pjmedia/wave.h
- Timestamp:
- Jun 18, 2006 2:02:36 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/include/pjmedia/wave.h
r358 r518 28 28 29 29 30 /** 31 * @defgroup PJMEDIA_WAVE WAVE Header 32 * @ingroup PJMEDIA_MISC 33 * @{ 34 * 35 * Supports for simple/canonical Microsoft RIFF WAVE format. 36 */ 37 38 30 39 PJ_BEGIN_DECL 31 40 41 /** 42 * Standard RIFF tag to identify RIFF file format in the WAVE header. 43 */ 32 44 #define PJMEDIA_RIFF_TAG ('F'<<24|'F'<<16|'I'<<8|'R') 45 46 /** 47 * Standard WAVE tag to identify WAVE header. 48 */ 33 49 #define PJMEDIA_WAVE_TAG ('E'<<24|'V'<<16|'A'<<8|'W') 50 51 /** 52 * Standard FMT tag to identify format chunks. 53 */ 34 54 #define PJMEDIA_FMT_TAG (' '<<24|'t'<<16|'m'<<8|'f') 55 56 /** 57 * Standard DATA tag to identify data chunks. 58 */ 35 59 #define PJMEDIA_DATA_TAG ('a'<<24|'t'<<16|'a'<<8|'d') 36 60 … … 42 66 struct pjmedia_wave_hdr 43 67 { 68 /** This structure describes RIFF WAVE file header */ 44 69 struct { 45 pj_uint32_t riff; 46 pj_uint32_t file_len; 47 pj_uint32_t wave; 70 pj_uint32_t riff; /**< "RIFF" ASCII tag. */ 71 pj_uint32_t file_len; /**< File length minus 8 bytes */ 72 pj_uint32_t wave; /**< "WAVE" ASCII tag. */ 48 73 } riff_hdr; 49 74 75 /** This structure describes format chunks/header */ 50 76 struct { 51 pj_uint32_t fmt; 52 pj_uint32_t len; 53 pj_uint16_t fmt_tag; 54 pj_uint16_t nchan; 55 pj_uint32_t sample_rate; 56 pj_uint32_t bytes_per_sec; 57 pj_uint16_t block_align; 58 pj_uint16_t bits_per_sample; 77 pj_uint32_t fmt; /**< "fmt " ASCII tag. */ 78 pj_uint32_t len; /**< 16 for PCM. */ 79 pj_uint16_t fmt_tag; /**< 1 for PCM */ 80 pj_uint16_t nchan; /**< Number of channels. */ 81 pj_uint32_t sample_rate; /**< Sampling rate. */ 82 pj_uint32_t bytes_per_sec; /**< Average bytes per second. */ 83 pj_uint16_t block_align; /**< nchannels * bits / 8 */ 84 pj_uint16_t bits_per_sample; /**< Bits per sample. */ 59 85 } fmt_hdr; 60 86 87 /** The data header preceeds the actual data in the file. */ 61 88 struct { 62 pj_uint32_t data; 63 pj_uint32_t len; 89 pj_uint32_t data; /**< "data" ASCII tag. */ 90 pj_uint32_t len; /**< Data length. */ 64 91 } data_hdr; 65 92 }; … … 99 126 PJ_END_DECL 100 127 128 /** 129 * @} 130 */ 131 132 101 133 #endif /* __PJMEDIA_WAVE_H__ */ 102 134
Note: See TracChangeset
for help on using the changeset viewer.