当前位置: 首页 > wzjs >正文

哪些网站可以免费看剧包头网站建设公司哪家好

哪些网站可以免费看剧,包头网站建设公司哪家好,小说网站怎么做流量吗,手机app一般用什么开发一、什么是 WAV 文件格式 WAV 文件是一种常见的无损音频文件格式,它就像是一个装着音频数据的 “盒子”,这个 “盒子” 有特定的结构,规定了音频的各种信息,比如采样率、声道数、音频数据等。我们可以把 WAV 文件想象成一个多层的…

一、什么是 WAV 文件格式

WAV 文件是一种常见的无损音频文件格式,它就像是一个装着音频数据的 “盒子”,这个 “盒子” 有特定的结构,规定了音频的各种信息,比如采样率、声道数、音频数据等。我们可以把 WAV 文件想象成一个多层的蛋糕,每一层都有不同的含义和作用。

二、WAV 文件的结构

WAV 文件主要由三个部分组成:
 

文件头(RIFF 块):包含文件类型和整体大小信息。                    RIFF 块通常是 12 字节格式块(fmt 块) :存储音频的格式参数,如采样率、声道数、采样位数等。 fmt 块通常是 24 字节(对于 PCM 格式)数据块(data 块):存放实际的音频数据。                          再加上 data 块的 8 字节头部信息

下面我们来详细看看每个部分。

1. 文件头(RIFF 块)

这就像是蛋糕的最顶层,告诉我们这是一个 WAV 文件。它包含了文件的基本信息,比如文件的类型和大小。具体来说,它有以下几个重要的信息:

  • Chunk ID:固定为 "RIFF",表示这是一个 RIFF 格式的文件。
  • Chunk Size:表示整个文件的大小减去 8 字节(Chunk ID 和 Chunk Size 本身的大小)。
  • Format:固定为 "WAVE",表示这是一个 WAV 文件。

下面是一个简单的 C 语言代码示例,用于读取 RIFF 块的信息:

#include <stdio.h>
#include <stdint.h>typedef struct {char chunk_id[4];uint32_t chunk_size;char format[4];
} RiffHeader;void read_riff_header(FILE *file) {RiffHeader header;fread(&header, sizeof(RiffHeader), 1, file);printf("Chunk ID: %.*s\n", 4, header.chunk_id);printf("Chunk Size: %u\n", header.chunk_size);printf("Format: %.*s\n", 4, header.format);
}int main() {FILE *file = fopen("test.wav", "rb");if (file == NULL) {perror("Failed to open file");return 1;}read_riff_header(file);fclose(file);return 0;
}
2. 格式块(fmt 块)

格式块就像是蛋糕的中间层,它描述了音频的具体格式信息,比如采样率、声道数、采样位数等。具体信息如下:

  • Subchunk1 ID:固定为 "fmt ",表示这是格式块。
  • Subchunk1 Size:表示格式块的大小,通常为 16 字节(PCM 格式)。
  • Audio Format:表示音频的编码格式,常见的 PCM 格式值为 1。
  • Num Channels:表示声道数,比如 1 表示单声道,2 表示立体声。
  • Sample Rate:表示采样率,即每秒采样的次数,常见的采样率有 44100Hz、48000Hz 等。
  • Byte Rate:表示每秒的数据字节数,可以通过 Sample Rate * Num Channels * Bits Per Sample / 8 计算得到。
  • Block Align:表示每个采样帧的字节数,可以通过 Num Channels * Bits Per Sample / 8 计算得到。
  • Bits Per Sample:表示每个采样点的位数,常见的有 16 位、24 位等。

下面是一个简单的 C 语言代码示例,用于读取格式块的信息:

#include <stdio.h>
#include <stdint.h>typedef struct {char subchunk1_id[4];uint32_t subchunk1_size;uint16_t audio_format;uint16_t num_channels;uint32_t sample_rate;uint32_t byte_rate;uint16_t block_align;uint16_t bits_per_sample;
} FmtHeader;void read_fmt_header(FILE *file) {FmtHeader header;fread(&header, sizeof(FmtHeader), 1, file);printf("Subchunk1 ID: %.*s\n", 4, header.subchunk1_id);printf("Subchunk1 Size: %u\n", header.subchunk1_size);printf("Audio Format: %u\n", header.audio_format);printf("Num Channels: %u\n", header.num_channels);printf("Sample Rate: %u\n", header.sample_rate);printf("Byte Rate: %u\n", header.byte_rate);printf("Block Align: %u\n", header.block_align);printf("Bits Per Sample: %u\n", header.bits_per_sample);
}int main() {FILE *file = fopen("test.wav", "rb");if (file == NULL) {perror("Failed to open file");return 1;}// 跳过 RIFF 块fseek(file, sizeof(RiffHeader), SEEK_SET);read_fmt_header(file);fclose(file);return 0;
}
3. 数据块(data 块)

数据块是蛋糕的最底层,它包含了真正的音频数据。具体信息如下:

  • Subchunk2 ID:固定为 "data",表示这是数据块。
  • Subchunk2 Size:表示音频数据的大小,即数据块的字节数。
  • Data:真正的音频数据,按照格式块中指定的格式存储。

下面是一个简单的 C 语言代码示例,用于读取数据块的信息:

#include <stdio.h>
#include <stdint.h>typedef struct {char subchunk2_id[4];uint32_t subchunk2_size;
} DataHeader;void read_data_header(FILE *file) {DataHeader header;fread(&header, sizeof(DataHeader), 1, file);printf("Subchunk2 ID: %.*s\n", 4, header.subchunk2_id);printf("Subchunk2 Size: %u\n", header.subchunk2_size);// 读取音频数据char *data = (char *)malloc(header.subchunk2_size);fread(data, 1, header.subchunk2_size, file);// 这里可以对音频数据进行处理free(data);
}int main() {FILE *file = fopen("test.wav", "rb");if (file == NULL) {perror("Failed to open file");return 1;}// 跳过 RIFF 块和 FMT 块fseek(file, sizeof(RiffHeader) + sizeof(FmtHeader), SEEK_SET);read_data_header(file);fclose(file);return 0;
}

在标准的 WAV 文件格式中,RIFF 块和 fmt 块的字节数情况如下:

1. RIFF 块

RIFF(Resource Interchange File Format)块是 WAV 文件的文件头部分,其固定大小为 12 字节,各字段及其占用字节数如下:

字段名字节数描述
ChunkID4 字节固定为字符串 "RIFF",用于标识这是一个 RIFF 格式的文件。
ChunkSize4 字节表示整个文件的大小减去 8 字节(ChunkID 和 ChunkSize 本身所占的字节数),是一个 32 位无符号整数。
Format4 字节固定为字符串 "WAVE",表明这是一个 WAV 音频文件。

2. fmt 块

fmt(Format)块描述了音频数据的格式信息,其大小通常有两种情况:

标准 PCM 格式

对于最常见的线性脉冲编码调制(PCM)格式的 WAV 文件,fmt 块的固定大小为 16 字节,各字段及其占用字节数如下:

字段名字节数描述
Subchunk1ID4 字节固定为字符串 "fmt ",用于标识这是 fmt 块。
Subchunk1Size4 字节表示 fmt 块的大小,对于 PCM 格式通常为 16。
AudioFormat2 字节音频编码格式,PCM 格式的值为 1。
NumChannels2 字节声道数,例如 1 表示单声道,2 表示立体声。
SampleRate4 字节采样率,即每秒采样的次数,常见值如 44100Hz、48000Hz 等。
ByteRate4 字节每秒的数据字节数,可通过 SampleRate * NumChannels * BitsPerSample / 8 计算得出。
BlockAlign2 字节每个采样帧的字节数,可通过 NumChannels * BitsPerSample / 8 计算得出。
BitsPerSample2 字节每个采样点的位数,常见的有 8 位、16 位、24 位等。
非标准或扩展格式

当 WAV 文件采用非 PCM 格式(如压缩格式)或者包含额外的扩展信息时,fmt 块的大小会超过 16 字节。例如,当存在扩展参数时,Subchunk1Size 的值可能会是 18 或 40 等,这取决于具体的扩展内容。


文章转载自:

http://CoIlTkOO.xqcst.cn
http://tLV92TdX.xqcst.cn
http://qCMtIKYD.xqcst.cn
http://qkznzMlt.xqcst.cn
http://Uk9PHpei.xqcst.cn
http://KecMBYbe.xqcst.cn
http://nAGikeeB.xqcst.cn
http://gCO9nOf6.xqcst.cn
http://rUKu5qZp.xqcst.cn
http://eZ1FvknY.xqcst.cn
http://0CzOnOOz.xqcst.cn
http://jLKrQUCH.xqcst.cn
http://fJ4fFp9Q.xqcst.cn
http://wKffqNrg.xqcst.cn
http://jzr802J4.xqcst.cn
http://ef8GyedS.xqcst.cn
http://cJmwsS33.xqcst.cn
http://MRXdebeF.xqcst.cn
http://nywsNthM.xqcst.cn
http://tVK0uwMB.xqcst.cn
http://zQJ2q66d.xqcst.cn
http://yisBm5S0.xqcst.cn
http://h1X4itSx.xqcst.cn
http://lweMsfl3.xqcst.cn
http://ur2d3AFF.xqcst.cn
http://EoEgtObC.xqcst.cn
http://gkyM4Mel.xqcst.cn
http://Xa1PKnwg.xqcst.cn
http://AcYP4s42.xqcst.cn
http://Zt1Cfo93.xqcst.cn
http://www.dtcms.com/wzjs/734966.html

相关文章:

  • 大数据平台建站seo应用领域有哪些
  • 家用宽带做网站购物网站网页设计图片
  • 怎么在建设厅网站报名西安建设城市信息网站
  • 移动端快速建站html爱心特效代码
  • 网站建设与维修2019做网站seo行不行
  • 福建省铁路建设办公室网站潍坊有哪些网站
  • 办一个网站要多少钱温州红酒网站建设
  • 网站加地图标记万博法务网站建设项目
  • 贵州省建设厅实名认证网站营销培训去哪个学校好
  • 手机版网站开发框架关于网站建设费用
  • 网站规划书的内容有哪些建筑设计为何没人干了
  • 做网站如何突出网站特色登陆Wordpress手机app
  • wordpress 企业网站 授权费运城可以做网站的公司
  • 建设工程教育官方网站成都房产网签查询
  • 网站的虚拟主机到期深圳网页设计兴田德润i简介
  • 正能量网站入口不用下载做运营需要具备什么能力
  • 网站视频主持人制作长沙服务好的网络营销
  • 图书馆 网站开发 总结seo怎么做网站排名
  • 全国哪个餐饮品牌的网站做的好做网站的流程分析-图灵吧
  • 网站建设情况自查报告python代码大全
  • 海城网站制作佛山网站制作系统
  • 网站制作软件排行榜泉州教育网站
  • 宿迁大型三合一网站开发网站建设怎么上传不了图片
  • 哪里有html企业网站模板下载怎样下载网站模版
  • 商品网站建设实验记录怎么做电影流量网站
  • 自建导航站wordpress做网站去除视频广告
  • 网站建设倒计时单页源码长沙专业企业建站联系人
  • 5g云网站建设网页制作平台有
  • 文山市住房和城乡建设局网站wordpress协会主题
  • 网站域名登陆地址做历史卷子的网站