采样率22050,那么CHUNK_SIZE 一次传输的音频数据大小设置多少合适?unity接收后出现卡顿的问题的思路

在采样率为22050的情况下,选择合适的 CHUNK_SIZE 主要取决于 Unity 接收和处理音频数据的效率。以下是设置 CHUNK_SIZE 的一些建议:

  1. 计算 CHUNK_SIZE :音频的传输数据量可以通过公式 CHUNK_SIZE = 采样率 * 传输间隔秒数 * 每样本字节数 * 声道数 来计算。假设音频是 16 位单声道,则每样本为 2 字节,采样率为 22050,若选择传输间隔为 0.1 秒,那么:
    C H U N K _ S I Z E = 22050 × 0.1 × 2 × 1 = 4410 字节 CHUNK\_SIZE = 22050 \times 0.1 \times 2 \times 1 = 4410 \text{ 字节} CHUNK_SIZE=22050×0.1×2×1=4410 字节

实际设置可以从 4096 字节的 CHUNK_SIZE 开始测试,观察效果。

音频是16位采样?还是直接float 32位采样?

可以直接float 32位采样,这就注意了每个样本是4个字节,效果更好。如果是int16 采样,质量偏差。

unity接收后出现卡顿的问题的思路

经过实验,

  • 发送端,基于websocket传输音频时,不用增加延迟时间,尽快传输过来。
  • 接收端设置一个比较大的缓存空间,之后在慢慢播放音频就可以

采样率决定了播放速度

音频是一位数组,采集的是振幅,通过振幅的斜率可以计算频率,通过FFT可以分解出频率。

相关推荐
有Li3 小时前
2D 超声心动图视频到 3D 心脏形状重建的临床应用| 文献速递-医学影像人工智能进展
人工智能·3d·音视频
XuanRanDev4 小时前
【音视频处理】FFmpeg for Windows 安装教程
windows·ffmpeg·音视频
程序猿玖月柒7 小时前
常见的多媒体框架(FFmpeg GStreamer DirectShow AVFoundation OpenMax)
ffmpeg·音视频·gstreamer·openmax·directshow·avfoundation
源代码杀手7 小时前
【以音频软件FFmpeg为例】通过Python脚本将软件路径添加到Windows系统环境变量中的实现与原理分析
windows·python·音视频
Leon_Chenl10 小时前
FFmpeg 头文件完美翻译之 libavcodec 模块
ffmpeg·音视频·c·视频编解码·libavcodec
程序猿玖月柒1 天前
嵌入式音视频开发——视频篇(三)
音视频
涛涛讲AI1 天前
扣子平台音频功能:让声音也能“智能”起来
人工智能·音视频·工作流·智能体·ai智能体·ai应用
学习嵌入式的小羊~1 天前
RV1126画面质量一:视频基础
音视频
霍格沃兹测试开发学社测试人社区1 天前
人工智能在音频、视觉、多模态领域的应用
软件测试·人工智能·测试开发·自动化·音视频
单片机社区1 天前
随笔十六、音频采集、UDP发送
嵌入式硬件·udp·音视频·泰山派