logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

如何采集声音-模数转换原理

模拟信号是连续的,而计算机只能处理离散的数字信号(0和1)。这就像用相机进行高速连拍,将连续的动作分解为一连串的静态照片。采样得到的样本点在幅度(振幅)上仍然是连续值。量化就是将这些连续的幅度值“四舍五入”到有限个离散的等级上,使其能够用数字表示。编码是将量化后的一系列离散的整数值,按照一定的格式转换为二进制码流(由0和1组成)的过程。采集声音的第一步,是用麦克风(学名“传声器”)将这种物理振动转

#c++
什么是PCM

步骤核心任务关键参数解决的问题类比采样时间上离散化采样率(如 44.1kHz)能还原多高的频率?高速连拍:拍得越快,动作越连贯量化幅度上离散化位深度(如 16bit)能区分多细微的强弱?动态范围多大?测量身高:用精确到毫米的尺子比精确到分米的尺子量的更准编码转换为二进制编码格式(PCM本身)如何让计算机存储?将数字转为莫尔斯电码:为每个数字分配一个唯一的点划组合。

GOP(视频帧小组)通俗讲解

GOP是视频压缩的“策略选择”想省空间 → 多放“变化记录”(P/B帧),少放高清照片(I帧),但可能卡(Storage efficiency vs. latency);想流畅不卡 → 多放高清照片,少“剧透”,但空间占得多(Latency vs. bitrate)。就像拍电影:省钱就少拍全景(I帧),多拍特写(P/B帧);但想随时剪片子方便,就得勤拍全景。理解了这个,就能根据需求调参数啦!

#音视频#linux#嵌入式硬件
IDR帧详解

IDR帧(Instantaneous Decoding Refresh)是视频编码中的。网络丢包导致解码错误时,解码器丢弃错误帧,等待下一个IDR帧刷新状态。:视频从此帧“重启播放”,彻底隔离之前的传输错误(如马赛克)。IDR帧在H.264码流中通过 nal_unit_type=5。理解IDR帧机制,可显著提升视频应用的容错性与用户体验!该帧之前的内容,从而实现错误隔离与随机访问。🔄,属于I帧的

#网络#嵌入式硬件
H.264编码详解

通过深入理解H.264的分层处理、预测机制和码流结构,开发者可优化编码器性能(如调整QP、GOP长度)或设计低延迟方案(如限制B帧数量)。实际开发中建议参考FFmpeg源码(如。宏块Macroblock 16x16。熵编码 CAVLC/CABAC。模块)或硬件编码器SDK。

#linux
音频编码原理

模拟信号数字化(ADC:采样+量化)→ 信号优化(预处理)→ 按听觉特性取舍(心理声学模型)→ 精准压缩(变换+量化+熵编码)→ 标准化打包”所有步骤的设计核心都是“在音质和体积之间找平衡”——无损编码优先保音质,有损编码优先缩体积(但通过心理声学模型确保“缩体积不影响听感”)。理解这一逻辑,就能轻松区分不同编码格式(如MP3、AAC、FLAC)的差异,选择适合自己的音频文件。整个流程可简化为“原

#音视频
嵌入式设备C++内存泄漏

在资源极度受限的裸机(Bare-metal)或实时操作系统(RTOS)环境中,上述工具可能无法运行。此时,实现一个自定义的内存管理器是行之有效的方法[ citation:2]。其核心思想是:封装标准的内存分配函数,记录每一次分配的信息(如指针、大小、文件名、行号等),并在程序退出或定期检查时,报告哪些记录未被清除。记录分配信息:重写malloc和free函数(或使用宏定义替换),在分配内存时,将指

#linux
BusyBox嵌入式专用工具命令

涵盖六大类别,总计。每条命令均提供及(基于 BusyBox v1.36),结合编译选项与嵌入式特性深度优化。

#linux
    共 26 条
  • 1
  • 2
  • 3
  • 请选择