当前位置: 首页 > article >正文

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


http://www.kler.cn/a/394930.html

相关文章:

  • python习题练习
  • java面试题(jvm)
  • FluentUI使用
  • 搭建深度学习开发环境
  • @ComponentScan:Spring Boot中的自动装配大师
  • 基于非时空的离身与反身智能
  • 【Qt】Qt在窗口中加载Web界面的方法汇总
  • stable-diffusion-3 ,每天免费试用
  • 【Homework】【5】Learning resources for DQ Robotics in MATLAB
  • 网络安全SQL初步注入2
  • Vue 与 React 前端框架差异对比及案例分析
  • MYSQL 修改表的结构
  • 【golang-技巧】- 定时器使用-ticker
  • Struts源码阅读——三个常用的辅助类DispatchAction
  • STM32学习笔记-----UART的概念
  • 2025年前端发展趋势
  • Spring Boot 中的全局异常处理器
  • Ubuntu20.04 解决一段时间后键盘卡死的问题 ubuntu
  • 前端开发中常用的包管理器(npm、yarn、pnpm、bower、parcel)
  • SSL证书以及实现HTTP反向代理
  • autodl+modelscope推理stable-diffusion-3.5-large
  • Sql server查询数据库表的数量
  • Linux入门攻坚——37、Linux防火墙-iptables-3
  • 陈列oracle的错误信息列表
  • 微服务架构面试内容整理-安全性-Spring Security
  • Koa进阶:掌握中间件和参数校验的艺术