音频 PCM 格式 - raw data

文章目录

  • raw 音频格式:PCM
  • 其他音频格式:mp3
    • 1. 无损压缩音频(类比 PNG 图像)
    • 2. 有损压缩音频(类比 JPEG 图像)

试了一下科大讯飞的音频识别云 api,踩了点坑

与本文无关:讯飞的 api 使用 wss,按文件字节顺序分 chunk 上传音频文件,并且应该是在上传结束前开始处理,返回结果。sdk 里面的 frame 不是视频的帧,是 http 的 chunksz。理论上可以是任意整数

raw 音频格式:PCM

原始音频格式(如 PCM) 就是音频的“原始样子”,它可以类比为没有压缩过的图像:

  • 音频的每一“点”是一个采样点(类似图像的像素)。Channel
  • 音频的“维度”由 采样率、位深 和 声道数 决定。Nsize

如果我们用矩阵形式表示:

音频数据可以看作 N × C N \times C N×C 的二维矩阵:

  • N:表示时间上的采样点数量:采样率(采样次数16kHz) x 采样深度(16bit per sample) = 256kbps
  • C:表示声道数(单声道 1,立体声 2,类似图像的 RGB 通道)。

所以对于单通道音频,看作从数列切片,read_byte(256kbit) 就是一秒。但是 pcm 没有头文件,采样率,深度需要在外面约定好。

例:如果音频是 44,100 Hz 的采样率,单声道,16 位位深,1 秒的数据大小就是 44100×1×244100 \times 1 \times 244100×1×2 字节(约 88 KB)。

PCM 音频格式 = 无压缩的音频信号,类似于没有压缩的 BMP 图像格式。

其他音频格式:mp3

正如图像会有压缩格式(如 PNG、JPEG),音频格式也有多种压缩方法,主要分为两大类:无损压缩 和 有损压缩。

1. 无损压缩音频(类比 PNG 图像)

无损压缩的音频格式可以保存音频的完整细节,但体积会比原始 PCM 格式小一些。

常见格式:

  • FLAC(Free Lossless Audio Codec)
  • ALAC(Apple Lossless Audio Codec)
  • WAV(有时包含无损压缩)

特点: 无任何信息丢失,解压后可以还原为 PCM 原始数据。

一段 1 分钟的 44,100 Hz 立体声音频,用 PCM 格式大约是 10 MB,但用 FLAC 压缩后可能只有 5~7 MB。

2. 有损压缩音频(类比 JPEG 图像)

有损压缩会丢弃人耳不敏感的音频信息,从而显著减少文件大小,但可能会损失部分音质。

常见格式:

  • MP3(MPEG Audio Layer III)
  • AAC(Advanced Audio Coding,苹果和流媒体常用)
  • OGG(开源格式,常用于游戏音频)

特点:类似 JPEG 图像,压缩后文件体积显著减小,但会丢失某些像素细节。

例子:
一段 1 分钟的 44,100 Hz 立体声音频,使用 MP3 编码(128 kbps)后可能只有 1 MB,但音质与原始音频接近。
文件大小对比:

比特率决定了压缩后的音频文件的大小和音质。常见比特率:
MP3:128 kbps(标准)/ 256 kbps(较高)/ 320 kbps(接近无损)。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(MySQL)头歌数据库作业答案

1.数据库和表的基本操作 1.1数据库和表的基本操作(一) 第1关:查看表结构与修改表名 本关任务:修改表名,并能顺利查询到修改后表的结构。 USE Company;#请在此处添加实现代码 ########## Begin ###################…

计算机网络 (57)改进“尽最大努力交付”的服务

前言 计算机网络中的“尽最大努力交付”服务是网络层的一种数据传输方式。这种服务的特点是网络层只负责尽力将数据报从源端传输到目的端,而不保证数据传输的可靠性。 一、标记与分类 为数据分组打上标记: 给不同性质的分组打上不同的标记&#x…

Direct Preference Optimization (DPO): 一种无需强化学习的语言模型偏好优化方法

论文地址:https://arxiv.org/pdf/2305.18290 1. 背景与挑战 近年来,大规模无监督语言模型(LM)在知识获取和推理能力方面取得了显著进展,但如何精确控制其行为仍是一个难题。 现有的方法通常通过**强化学习从人类反馈&…

ppp综合实验

IP地址 r1 r2 r3 r4 hdlc封装 pap认证 r2 r3 chap认证 r2 r4 MGRE 主认证 [r1]int Tunnel 0/0/0 [r1-Tunnel0/0/0]ip add 192.168.4.1 24 [r1-Tunnel0/0/0]tunnel-protocol gre p2mp [r1-Tunnel0/0/0]source 12.1.1.1 [r1-Tunnel0/0/0]nhrp entry multicast dynamic [r1-Tu…

高效流式大语言模型(StreamingLLM)——基于“注意力汇聚点”的突破性研究

论文地址:https://arxiv.org/pdf/2309.17453 github地址:https://github.com/mit-han-lab/streaming-llm 1. 研究背景与挑战 随着大语言模型(LLMs)在对话系统、文档摘要、代码补全和问答等领域的广泛应用,如何高效且准…

学习数据结构(2)空间复杂度+顺序表

1.空间复杂度 (1)概念 空间复杂度也是一个数学表达式,表示一个算法在运行过程中根据算法的需要额外临时开辟的空间。 空间复杂度不是指程序占用了多少bytes的空间,因为常规情况每个对象大小差异不会很大,所以空间复杂…

【测试】UI自动化测试

长期更新,建议关注收藏点赞! 目录 概论WEB环境搭建Selenium APPAppium 概论 使用工具和代码执行用例。 什么样的项目需要自动化? 需要回归测试、自动化的功能模块需求变更不频繁、项目周期长(功能测试时长:UI自动化测…

IoTDB 2025 春节值班与祝福

2025 春节快乐 瑞蛇迎吉庆,祥光映华年,2025 春节已近在眼前。社区祝福 IoTDB 的所有关注者、支持者、使用者 2025 新年快乐,“蛇”来运转! IoTDB 团队的春节放假时间为 2025 年 1 月 27 日至 2 月 4 日,1 月 25 日、26…

想品客老师的第七天:闭包和作用域

闭包之前的内容写在这里 环境、作用域、回收 首先还是数据的回收问题,全局变量一般都是通过关闭页面回收的;而局部变量的值不用了,会被自动回收掉 像这种写在全局里的就不会被主动回收捏: let title 荷叶饭function fn() {ale…

如何在IDEA社区版Service面板中管理springboot项目

1、开启service仪表盘 2、在service仪表盘中,添加启动类配置项,专业版是SpringBoot 、社区版是application。 3、控制台彩色日志输出 右键启动类配置项,添加虚拟机参数 -Dspring.output.ansi.enabledALWAYS

网盘资源查找工具---AI功能

01 软件介绍 这是一款融入了ai技术的网盘搜索神器,可以让你更快,更精准的找到自己需要的文件,不管你是找影视,音乐,还是找软件或者学习资料都可以,欢迎前来使用。 02 功能展示 该软件非常简洁&#xff…

【2025年数学建模美赛E题】(农业生态系统)完整解析+模型代码+论文

生态共生与数值模拟:生态系统模型的物种种群动态研究 摘要1Introduction1.1Problem Background1.2Restatement of the Problem1.3Our Work 2 Assumptions and Justifications3 Notations4 模型的建立与求解4.1 农业生态系统模型的建立与求解4.1.1 模型建立4.1.2求解…

FPGA 使用 CLOCK_LOW_FANOUT 约束

使用 CLOCK_LOW_FANOUT 约束 您可以使用 CLOCK_LOW_FANOUT 约束在单个时钟区域中包含时钟缓存负载。在由全局时钟缓存直接驱动的时钟网段 上对 CLOCK_LOW_FANOUT 进行设置,而且全局时钟缓存扇出必须低于 2000 个负载。 注释: 当与其他时钟约束配合…

蓝桥杯3518 三国游戏 | 排序

题目传送门 这题的思路很巧妙,需要算出每个事件给三国带来的净贡献(即本国士兵量减其他两国士兵量)并对其排序,根据贪心的原理累加贡献量直到累加结果不大于0。最后对三国的胜利的最大事件数排序取最值即可。 n int(input()) a …

【redis初阶】redis客户端

目录 一、基本介绍 二、认识RESP(redis自定的应用层协议名称) 三、访问github的技巧 四、安装redisplusplus 4.1 安装 hiredis** 4.2 下载 redis-plus-plus 源码 4.3 编译/安装 redis-plus-plus 五、编写运行helloworld 六、redis命令演示 6.1 通用命令的…

LLM - 大模型 ScallingLaws 的设计 100B 预训练方案(PLM) 教程(5)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/145356022 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 Scalin…

HttpClient学习

目录 一、概述 二、HttpClient依赖介绍 1.导入HttpClient4依赖 2.或者导入HttpClient5依赖 3.二者区别 三、HttpClient发送Get请求和Post请求测试 (一)通过HttpClient发送Get请求 (二)通过HttpClient发送Post请求 一、概述 HttpClient是 Apache 软件基金会提供的一…

开源先锋DeepSeek-V3 LLM 大语言模型本地调用,打造自己专属 AI 助手

DeepSeek-V3是一个强大的混合专家 (MoE) 语言模型,总共有 671B 个参数。为了实现高效的推理和经济高效的训练,DeepSeek-V3 采用了多头潜在注意力机制 (MLA) 和 DeepSeekMoE 架构,这些架构在 DeepSeek-V2 中得到了彻底的验证。此外&#xff0c…

喜报丨迪捷软件入选2025年浙江省“重点省专”

根据《浙江省经济和信息化厅 浙江省财政厅关于进一步支持专精特新中小企业高质量发展的通知》(浙经信企业〔2024〕232号)有关要求,经企业自主申报、地方推荐、材料初审以及专家评审等程序,浙江省经济和信息化厅发布了2025年浙江省…

Golang Gin系列-8:单元测试与调试技术

在本章中,我们将探讨如何为Gin应用程序编写单元测试,使用有效的调试技术,以及优化性能。这包括设置测试环境、为处理程序和中间件编写测试、使用日志记录、使用调试工具以及分析应用程序以提高性能。 为Gin应用程序编写单元测试 设置测试环境…