音视频备忘录

1.PCM数据存储格式

分别使用不同的方式存储一段采集数据 0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88 总共8个字节

  • 8位单声道: 按照数据采集时间顺序存储,即:0x11 0x22 0x33 0x44 0x55 0x66 0x77 0x88
  • 8位双声道: L声道-R声道-L声道-R声道形式存储,即:0x11(左) 0x22(右) 0x33(左) 0x44(右) …
  • 16位单声道(当使用一个以上的字节表示PCM样本时,必须知道字节顺序(大端与小端)。由于低端字节Intel CPU的广泛使用,低端字节PCM往往是最常见的字节方向,当位宽为16位(2字节)存储一个采集数据时,如:0x12ab,大端和小端分别是:big-endian: 0x12 0xab; little-endian: 0xab 0x12), 所以:
    big-endian存储方式:0x1122 0x3344 0x5566 0x7788
    little-endian存储方式:0x2211 0x4433 0x6655 0x8877
  • 16位双声道: L声道-R声道-L声道-R声道形式存储:
    big-endian:0x1122(左) 0x3344(右) 0x5566(左) 0x7788(右)
    little-endian: 0x2211(左) 0x4433(右) 0x6655(左) 0x8877(右)

2.以2的n次方内存对齐

align_size必须是2的n次方:
向上对齐-----> #define ALIGN_UP(x,align_size) (((x)+(align_size) -1)&~((align_size - 1)))
向下对齐-----> #define ALIGN_DOWN(x,align_size) ((x)&~((align_szie) - 1))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值