音频——解析 PCM 数据

文章目录

  • 生成 PCM 数据
    • 16bit
      • 16bit mono
      • 16bit stereo
      • 16bit 4 channel
      • 16bit 8 channel
    • 24bit
  • 解析 PCM 数据
    • 解析 24bit 数据
  • 程序源码
    • 生成 PCM 源码
    • 解析 PCM 源码

生成 PCM 数据

16bit

16bit mono

int 48k_16bit_modo[] = {
   0, 4276, 8480, 12539, 16383, 19947, 23169, 25995, 28377, 30272, 31650, 32486, 32767, 32486, 31650, 30272, 28377, 25995, 23169, 19947, 16383, 12539, 8480, 4276, 0, -4276, -8480, -12539, -16383, -19947, -23169, -25995, -28377, -30272, -31650, -32486, -32767, -32486, -31650, -30272, -28377, -25995, -23169, -19947, -16383, -12539, -8480, -4276};

在这里插入图片描述

16bit stereo

int 48k_16bit_stereo[] = {
   0, 0, 4276, 4276, 8480, 8480, 12539, 12539, 16383, 16383, 19947, 19947, 23169, 23169, 25995, 25995, 28377, 28377, 30272, 30272, 31650, 31650, 32486, 32486, 32767, 32767, 32486, 32486, 31650, 31650, 30272, 30272, 28377, 28377, 25995, 25995, 23169, 23169, 19947, 19947, 16383, 16383, 12539, 12539, 8480, 8480, 4276, 4276, 0, 0, -4276, -4276, -8480, -8480, -12539, -12539, -16383, -16383, -19947, -19947, -23169, -23169, -25995, -25995, -28377, -28377, -30272, -30272, -31650, -31650, -32486, -32486, -32767, -32767, -32486, -32486, -31650, -31650, -30272, -30272, -28377, -28377, -25995, -25995, -23169, -23169, -19947, -19947, -16383, -16383, -12539, -12539, -8480, -8480, -4276, -4276, };

在这里插入图片描述

16bit 4 channel

int 48k_16bit_4_chnl[] = {
   0, 0, 0, 0, 4276, 4276, 4276, 4276, 8480, 8480, 8480, 8480, 12539, 12539, 12539, 12539, 16383, 16383, 16383, 16383, 19947, 19947, 19947, 19947, 23169, 23169, 23169, 23169, 25995, 25995, 25995, 25995, 28377, 28377, 28377, 28377, 30272, 30272, 30272, 30272, 31650, 31650, 31650, 31650, 32486, 32486, 32486, 32486, 32767, 32767, 32767, 32767, 32486, 32486, 32486, 32486, 31650, 31650, 31650, 31650, 30272, 30272, 30272, 30272, 28377, 28377, 28377, 28377, 25995, 25995, 25995, 25995, 23169, 23169, 23169, 23169, 19947, 19947, 19947, 19947, 16383, 16383, 16383, 16383, 12539, 12539, 12539, 12539, 8480, 8480, 8480, 8480, 4276, 4276, 4276, 4276, 0, 0, 0, 0, -4276, -4276, -4276, -4276, -8480, -8480, -8480, -8480, -12539, -12539, -12539, -12539, -16383, -16383, -16383, -16383, -19947, -19947, -19947, -19947, -23169, -23169, -23169, -23169, -25995, -25995, -25995, -25995, -28377, -28377, -28377, -28377, -30272, -30272, -30272, -30272, -31650, -31650, -31650, -31650, -32486, -32486, -32486, -32486, -32767, -32767, -32767, -32767, -32486, -32486, -32486, -32486, -31650, -31650, -31650, -31650, -30272, -30272, -30272, -30272, -28377, -28377, -28377, -28377, -25995, -25995, -25995, -25995, -23169, -23169, -23169, -23169, -19947, -19947, -19947, -19947, -16383, -16383, -16383, -16383, -12539, -12539, -12539, -12539, -8480, -8480, -8480, -8480, -4276, -4276, -4276, -4276, };

在这里插入图片描述

16bit 8 channel

int 48k_16bit_8_chnl[] = {
   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/131741.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

华为防火墙vrrp+hrp双机热备主备备份(两端为交换机)

默认上下来全两个vrrp主都是左边 工作原理: vrrp刚开机都是先initialize状态,然后切成active或standb状态。 hrp使用18514端口,且用的单播,要策略放行,由主设备发hrp心跳报文 如果设备为acitve状态时自动优先级为65…

CS224W5.1——消息传递和节点分类

从之前的文中,学习了如何使用图表示学习进行节点分类。在这节中,将讨论另一种方法,消息传递。将引入半监督学习,利用网络中存在的相关性来预测节点标签。其中一个关键概念是集体分类,包括分配初始标签的局部分类器、捕…

strerror函数详解之【错误码探秘】

目录 一,strerror函数简介 二,strerror函数的基本用法 三,errno变量 一,strerror函数简介 当程序出现错误时,了解错误的具体信息对于调试和修复问题至关重要。在C语言中,我们可以使用strerror函数来获取…

基于SSM的超市库存商品管理系统设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Pytorch常用的函数(四)深度学习中常见的上采样方法总结

Pytorch常用的函数(四)深度学习中常见的上采样方法总结 我们知道在深度学习中下采样的方式比较常用的有两种: 池化 步长为2的卷积 而在上采样过程中常用的方式有三种: 插值 反池化 反卷积 不论是语义分割、目标检测还是三维重建等模型&#xff0…

使用大型语言模型进行文本摘要

路易斯费尔南多托雷斯 📝 Text Summarization with Large Language Models。通过单击链接,您将能够逐步阅读完整的过程,并与图进行交互。谢谢你! 一、介绍 2022 年 11 月 30 日,标志着机器学习历史上的重要篇章。就在这…

振南技术干货集:研发版本乱到“妈不认”? Git!(1)

注解目录 1、关于 Git 1.1Git 今生 (Git 和 Linux 的生父都是 Linus,振南给你讲讲当初关于 Git 的爱恨情愁,其背后其实是开源与闭源两左阵营的明争暗斗。) 1.2Git的爆发 (Git 超越时代的分布式思想。振南再给你讲讲旧金山三个年轻人创办 GitHub&…

KCC@广州与 TiDB 社区联手—广州开源盛宴

10月21日,KCC广州与 TiDB 社区联手,在海珠区保利中悦广场 29 楼召开了一次难忘的开源盛宴。这不仅仅是 KCC广州的又一次线下见面,更代表着与 TiDB 社区及广州技术社区的首次深度合作。 活动的策划与组织由 KCC广州负责人 - 惠世冀、PingCAP 的…

mysql基础 --子查询

文章目录 子查询 子查询 一个查询语句,嵌套在另一个查询语句内部;子查询先执行,其结果被外层主查询使用;子查询放入括号内;子查询放在比较条件的右侧;子查询返回一条,为单行子查询;…

解决win11更新后,文件夹打不开的bug

更新win11系统了,给我更了个bug,找了好多解决方案,发现下面这个可以解决问题。 第一步 找到注册表 第二步 备份注册表 为了防止意外情况,备份注册表。如有意外问题,可以导入导出的注册表进行恢复。 第三步 删除指定…

华为防火墙vrrp+hrp双机热备负载分担(两端为交换机)

主要配置: FW1 hrp enable hrp interface GigabitEthernet1/0/2 remote 172.16.0.2 interface GigabitEthernet1/0/0 这里可以假想为接两条外线,一条外线对应一个vrrid undo shutdown ip address 1.1.1.2 255.255.255.0 vrrp vrid 3 virtual-ip 1.1.1…

手写C++ 实现链表的反转、删除、合并

目录 一、手写List成员方法 1.1 打印链表 1.2 删除链表节点 1.3 链表中倒数第k个节点 1.4 反转链表 1.5 合并两个排序链表 二、完整代码 一、C实现链表成员方法 在上一篇博客《手写链表C》,实现了基本的List类。在面试中,经常被问到List如何反转、…

ROS 学习应用篇(二)话题Topic学习之话题的发布与订阅

顾名思义,这是一个异步的消息传达过程 首先是消息的发布,接着是消息的订阅 话题发布 由发布者发布一个“消息”的数据结构,再由订阅者订阅这个消息结构。 再开始撰写一段程序之前,我们需要在程序代码中引入库→节点初始化→创…

合成数据加速机器视觉学习

虽然机器学习在基于视觉的自动化中的应用正在增长,但许多行业都面临着挑战,并难以在其计算机视觉应用中实施它。这在很大程度上是由于需要收集许多图像,以及与准确注释这些图像中的不同产品相关的挑战。 该领域的最新趋势之一是利用合成数据…

【Github】git clone命令下载文件中途停止

方法一: 使用git clone命令下载github上的源代码时,有时文件下载到一定百分比时就停止不动, 这是因为我们所下载的文件很大,超过了git预先分配的Postbuffer容量,所以一直卡在那里。可以使用以下命令查看当前Postbuffe…

景联文科技加入中国人工智能产业发展联盟(AIIA),与行业各方共促AI产业发展

近日,景联文科技加入中国人工智能产业发展联盟(AIIA),与行业各方共同挖掘人工智能数据的更多价值,破解中国人工智能AI数据短缺难题。 中国人工智能产业发展联盟(简称AIIA)是在国家发改委、科技部…

省钱攻略:三大运营商保号套餐办理攻略,不再当冤大头!

现在的朋友都是相当的聪明,都不想直接在营业厅办理套餐,而是选择保号套餐流量卡。 今天,小编主要介绍的就是三大运营商的保号套餐,以及如何办理! 如图所示: ​  电信最低可改5元套餐,移动、联…

计蒜客详解合集(2)期

目录 T1126——单词倒排 T1617——地瓜烧 T1612——蒜头君的数字游戏 T1488——旋转单词 T1461——校验信用卡号码 T1437——最大值和次大值 T1126——单词倒排 超级水的一道题,和T1122类似但更简单,分割后逆序输出即可~ 编写程序,读入…

51单片机PCF8591数字电压表数码管显示设计( proteus仿真+程序+设计报告+讲解视频)

PCF8591数字电压表数码管显示 1.主要功能:讲解视频:2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单&&下载链接资料下载链接(可点击): 51单片机PCF8591数字电压表数码管设计( proteus仿真程序设计报告讲解视…

收藏!7个国内「小众」的程序员社区

技术社区是大量开发者的集聚地,在技术社区可以了解到行业的最新进展,学习最前沿的技术,认识有相同爱好的朋友,在一起学习和交流。 国内知名的技术社区有CSDN、博客园、开源中国、51CTO,还有近两年火热的掘金&#xff…