wav-pcm格式

WAV-PCM文件,WAV封装了一层。

WAV格式保存大致如下(AI回答,与实际文件内容一致。)

复制代码
1. RIFF块(前12字节)
text
位置  大小  内容        说明
0-3    4    "RIFF"     RIFF文件标识
4-7    4    文件大小    整个文件大小-8字节
8-11   4    "WAVE"     表示是WAV格式
2. fmt子块(中间24字节)
text
位置  大小  内容        说明
12-15  4    "fmt "     fmt块标识(注意有空格)
16-19  4    子块大小    PCM格式固定为16
20-21  2    音频格式    1=PCM, 其他=压缩格式
22-23  2    声道数      1=单声道, 2=立体声
24-27  4    采样率      44100=CD音质, 48000=DVD
28-31  4    字节率      每秒数据量 = 采样率×声道数×位深/8
32-33  2    块对齐      每次采样大小 = 声道数×位深/8
34-35  2    位深度      8/16/24/32位
3. LIST块
4字节-"LIST"
4字节-块大小
---4字节-子块1
---4字节-子块1长度
...
4. data子块(最后8字节+音频数据)
text
位置  大小  内容        说明
36-39  4    "data"      data块标识
40-43  4    数据大小    音频数据的总字节数
44-END      PCM数据     实际的音频采样数据

文件开始
├── RIFF头 (12字节)
│   ├── "RIFF"
│   ├── 文件大小
│   └── "WAVE"
├── fmt块 (24字节)
│   ├── "fmt "
│   ├── 音频参数(采样率、声道数等)
├── LIST块 (可变长度) ⬅︎ 元数据在这里!
│   ├── "LIST"
│   ├── 块大小
│   ├── "INFO"
│   ├── 子块1(如INAM)
│   ├── 子块2(如IART)
│   └── ...
├── 其他可选块(如fact、cue等)
└── data块
    ├── "data"
    ├── 数据大小
    └── PCM音频数据
文件结束

PCM文件格式。(AI回答)

复制代码
PCM文件格式。(AI回答)
-----------------------------------------------------
单声道(Mono)
text
时间轴:      t0        t1        t2        t3        t4
采样点:    [S0]      [S1]      [S2]      [S3]      [S4]
内存布局: | S0 | S1 | S2 | S3 | S4 | ...(连续存储)

单声道数据流(16位,小端字节序):
字节偏移: 0  1  2  3  4  5  6  7  8  9 ...
数据内容:[L0低][L0高][L1低][L1高][L2低][L2高]...
含义:    采样0   采样1   采样2   ...
-----------------------------------------------------
立体声(Stereo)
text
时间轴:      t0                t1                t2
采样点:    [L0, R0]          [L1, R1]          [L2, R2]
内存布局: | L0 | R0 | L1 | R1 | L2 | R2 | ...(交错存储)

立体声数据流(16位,小端字节序):
字节偏移: 0  1  2  3  4  5  6  7  8  9  10 11 ...
数据内容:[L0低][L0高][R0低][R0高][L1低][L1高][R1低][R1高]...
含义:    左声道0 右声道0 左声道1 右声道1 ...
相关推荐
jyOverQ9 小时前
ChatGPT Windows 客户端点击无反应、有进程却没窗口?一次 MSIX 非系统盘启动卡死的完整排查
windows·chatgpt
还是大剑师兰特12 小时前
MySQL8.0 Windows完整安装教程
windows·mysql·大剑师
redfred14 小时前
HandBrake 使用教程:开源视频压缩工具 视频太大压缩 MKV转MP4 批量转码 硬件加速 Windows/macOS/Linux
windows·开源·音视频
kakakahahahaha14 小时前
【Windows】C盘拒绝访问0x80070005的7步排查
windows·电脑·内容运营·软件需求
万年咸鱼16 小时前
Java ArrayList 详解:原理、用法与实战
java·开发语言·windows
奈斯先生Vector17 小时前
本地图片识别怎么接入多模态 AI?用 Python API 理解 GPT-4o Vision 的真实工作流
开发语言·人工智能·windows·python·网络协议·http·aigc
yyywxk18 小时前
ChatGPT/Codex Windows 桌面版“幽灵会话”问题:网页端已删除,桌面端仍显示且无法删除/归档
windows·chatgpt
万年咸鱼18 小时前
Java List 接口详解:从基础到实战
java·windows·list
Neighbor_OldY19 小时前
【实战复盘】RDP暴力破解与内网横向移动溯源:Windows全套排查命令与事件ID硬核解析
运维·windows·web安全
深念Y19 小时前
Windows 11 工具链部署与 SSH 踩坑笔记
windows·笔记·ssh