初学音视频(二)-PCM音频采样数据处理

本文介绍了PCM16LE双声道音频采样数据的处理,包括如何分离左声道和右声道,调整左声道音量,以及改变音频速度。通过示例代码演示了具体操作步骤,帮助初学者理解音频数据处理。
摘要由CSDN通过智能技术生成

PCM音频采样数据处理(该阶段是处于音频解码——— >播放阶段)

基本概念:

        pcm编码格式的概念:pcm编码的概念  ,pcm是音频编码的一种,想wav就是用没有压缩过的pcm编码+头信息来封装的。

        本文的PCM音频格式是PCM16LE,其中16的含义,每个声音采样点用16bit表示,那么16位的范围为-32758~~32757(0~65535),8位PCM 编码每个声音采样点用8bit来表示,所以16位PCM编码的采样精度更高,所以音质好一些,但8位PCM 编码所使用的数据量小一半,所以更容易存储和传输。LE是采用的格式,表示小端存储(Little Endian),代表2Byte采样值的存储方式为高位存在高地址中。

        8位PCM编码常用于电话等通讯电路,采样速率8k,节省传输带宽。16位PCM 编码常用于电脑多媒体声音文件,采样速率44.1K,音质好。为了提高信噪比,8位PCM编码动态压缩技术,也就是说非线性量化,对小信号采样级数更多,压缩方法有A率和u率两种,中国和欧洲用A率,美国用U率。8位PCM 编码播放的时候也要解压缩成16位pcm播放。

        le:本文中声音样值的采样频率一律是44100Hz,采样格式一律为16LE。“16”代表采样位数是16bit。由于1Byte=8bit,所以一个声道的一个采样值占用2Byte。“LE”代表Little Endian,代表2 Byte采样值的存储方式为高位存在高地址中。

        音视频编解码格式汇总: 点击打开链接

实际操作

分离PCM16LE双声道音频采样数据的左声道和右声道

//split litisheng pcm to left and right
int main(void)
{
    FILE *fp = fopen("/home/huangyu/HYtestyinshipin/pcm/NocturneNo2inEflat_44.1k_s16le.pcm","rb+");
    FILE *fp_left = fopen ("/home/huangyu/HYtestyinshipin/pcm/NocturneNo2inEflat_left.pcm","wb+");
    FILE *fp_right = fopen ("/home/huangyu/HYtestyinshipin/pcm/NocturneNo2inEflat_right.pcm","wb+");
    //这里为什么申请4个byte的空间,因为这个pcm是双声道的,一个声道一个采样点有16bit 2Byte,这是双声道的资料,所以申请四个Byte	
    unsigned char *sample=(unsigned char *)malloc(4);
      int a  = 0;


        while(!feof(fp)){
            a++;
            fread(sample,1,4,fp);
            //L 写入到左声道文件
            fwrite(sample,1,2,fp_left);
            //R 写入到右声道文件
            fwrite(sample+2,1,2,fp_right);
        }
        int c = feof(fp);
        printf("c = %d , a = %d" , c ,a);//1 970202   一共执行了970202次  /44100hz  = 22s左右,说明每秒有44100个采样点,每个声道
        free(sample);
        fclose (fp);
        fclose (fp_left);
        fclose (fp_right);

    return 0;
}


将PCM16LE双声道音频采样数据中左声道的音

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值