采样率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可以分解出频率。

相关推荐
MR.欻4 小时前
ZLMediaKit 源码分析(四):RTP/RTCP 协议栈实现分析
c++·人工智能·vscode·ffmpeg·音视频
运维栈记5 小时前
Remotion + Claude Code:用自然语言创作视频的革命性突破
人工智能·ai·音视频
晓py5 小时前
音视频基础概念入门_FFmpeg学习笔记
学习·ffmpeg·音视频
ACP广源盛139246256736 小时前
GSV2221@ACP# 高带宽低功耗显示转换芯片,赋能 TRAE SOLO 设备高清扩展升级
人工智能·嵌入式硬件·电脑·音视频
丷丩6 小时前
MapLibre GL JS第30课:添加视频
javascript·音视频·gis·mapbox·maplibre gl js
JasonSJX6 小时前
如何更好地保护视频内容免受盗版侵害
音视频·drm·视频加密·数字版权保护
“码”力全开7 小时前
突破异构算力与协议围墙:基于 Docker 与边缘计算的 GB28181/RTSP 视频智能管理平台架构实践(附源码交付)
docker·音视频·边缘计算
“码”力全开8 小时前
基于 Docker 容器化与异构计算的工业级视频中台架构:GB28181/RTSP 双协议栈统一接入与源码交付深度解析
docker·架构·音视频
K姐研究社8 小时前
LibTV团队版实测 – 多人协作重构 AI 视频生产模式
人工智能·aigc·音视频
南山有乔木78917 小时前
网易云音乐下载的ncm歌曲怎么转换MP3?本地播放可以这样整理
音视频