Unity音频导入设置

参考:unity官方文档

导入设置

Force To Mono:强制单声道。启用后音频片段将降混为单声道声音。可以节省该资源所占据的空间。

  • Normalize:峰值归一化。降混过程通常会导致信号比原始信号更安静。峰值归一化的信号为音频源的音量属性提供了后期调整的空间。

Load In Background:启用后,音频片段将在后台加载,不会导致主线程出现停顿。默认情况下,此功能处于禁用状态,以确保标准的 Unity 行为,即所有 AudioClips 在 场景开始播放后立即完成加载。对仍在后台加载的 AudioClips 的播放请求将推迟,直到片段加载完成。您可以通过 AudioClip.loadState 属性查询加载状态。

Ambisonic:立体环绕声。双耳声音频源以一种格式存储音频,该格式表示可以根据监听器方向旋转的声音场。它适用于 360 度视频和 XR 应用程序。如果您的音频文件包含双耳声编码音频,请启用此选项。

Load Type

  • Decompress On Load:音频文件在加载后立即解压缩。对于较短的声音,请使用此选项以避免动态解压缩的性能开销。请注意,此选项进行 Vorbis 编码的声音将比保持压缩状态使用大约十倍的内存(对于 ADPCM 编码,大约是 3.5 倍),因此不要对大型文件使用此选项。

  • Compressed In Memory:将音频压缩保存在内存中,并在播放时解压缩。此选项会造成轻微的性能开销,尤其是对于 Ogg/Vorbis 压缩文件而言。仅对内存使用过大的文件使用此选项。解压缩发生在混音线程上,可以在 性能分析器窗口的音频面板的 DSP CPU 部分中进行监控。

  • Streaming:流式加载。此方法将音频存储在本地磁盘中,在运行时加载、解码和播放文件。逐步将文件推过一个小缓冲区,在缓冲区中一次只存在整个文件的一小部分数据。使用最少的内存来缓冲从磁盘增量读取并自发解码的压缩数据。解压缩发生在一个单独的流式传输线程上,可以在性能分析器窗口的音频面板的流式传输 CPU 部分中监控该线程的 CPU 使用情况。注意:即使没有加载任何音频数据,流式传输片段也会有大约 200KB 的开销。

Preload Audio Data:启用后,音频片段将在场景加载后预加载。默认情况下,此功能处于启用状态,以反映标准的 Unity 行为,即所有 AudioClips 在场景开始播放后立即完成加载。如果未设置此标志,音频数据将在第一次 AudioSource.Play、AudioSource.PlayOneShot 上加载,或者可以通过 AudioClip.LoadAudioData 加载,并通过 AudioClip.UnloadAudioData 卸载。流式音频玩法预加载。

Compression Format

  • PCM:此选项以牺牲更大的文件大小为代价提供了更高的质量,最适合短的声音效果。

  • Vorbis:压缩后文件更小,但与 PCM 音频相比,质量略低。压缩量可以通过Qualify滑块进行配置。此格式最适合中等长度的声音效果和音乐。

  • ADPCM:此格式适用于包含大量噪声且需要大量播放的声音,例如脚步声、撞击声、武器声。 压缩比率比 PCM 小 3.5 倍,但 CPU 使用率远低于 MP3/Vorbis 格式,使其成为上述声音类别首选的选择。

Sample Rate Settings

  • Preserve Sample Rate:保留采样率。此设置保持采样率不变(默认值44100HZ)。

  • Optimize Sample Rate:优化采样率。此设置会根据分析的最高频率内容自动优化采样率。

  • Override Sample Rate:覆盖采样率。此设置允许手动覆盖采样率,因此实际上它可以用于丢弃频率内容。

优化建议

  1. Unity 支持导入各种源格式的声音文件。但是,导入这些文件(除跟踪文件外)时,它们始终会重新编码为构建目标格式。为了避免格式的多次转换造成音频质量的下降,尽可能使用.wav(原始未压缩)文件作为源资源。
    通常,PCM 和 Vorbis/MP3 格式更适合使声音尽可能接近原始声音。PCM 在 CPU 要求方面比较轻量级,因为声音未压缩,可以从内存中直接读取。Vorbis/MP3 允许通过质量滑块自适应地丢弃不太明显的信息。

  2. 模块文件(.mod、.it、.s3m、.xm)可以以极低的占用空间提供高质量。使用模块文件时,请确保加载类型设置为Compressed In Memory,因为如果设置为Decompress On Load,整个歌曲将被解压缩。

  3. 一般来说,压缩音频(或模块)最适合较长的文件,例如背景音乐或对话,而PCM 和ADPCM 更适合包含一些噪声的短的声音效果,因为ADPCM 的伪像在平滑信号上太明显了。您应该使用压缩滑块调整压缩量。从高质量压缩开始,逐渐降低设置,直到声音质量的损失变得明显。然后,再稍微提高设置,直到感知到的质量损失消失。

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

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

相关文章

时间序列分析——移动平均法、指数平滑法、逐步回归法、趋势外推法等(基于Python实现)

第 11章——时间序列分析和预测 【例11-1】 绘制时间序列折线图—观察成分 【代码框11-1】——绘制时间序列折线图 # 图11-2的绘制代码 import pandas as pd import matplotlib.pyplot as plt plt.rcParams[font.sans-serif]=[SimHei

NVMe(Non-Volatile Memory Express)非易失性存储器访问和传输协议

目录 NVMe(Non-Volatile Memory Express)非易失性存储器访问和传输协议 一、NVMe的定义 二、NVMe的特点 三、NVMe的应用场景 四、举例说明 NVMe(Non-Volatile Memory Express)非易失性存储器访问和传输协议 是一种非易失性存储器访问和传输协议,专为固态硬盘(SSD)…

SpringBoot有几种获取Request对象的方法

HttpServletRequest 简称 Request,它是一个 Servlet API 提供的对象,用于获取客户端发起的 HTTP 请求信息。例如:获取请求参数、获取请求头、获取 Session 会话信息、获取请求的 IP 地址等信息。 那么问题来了,在 Spring Boot 中…

模型运行速度笔记: s/epoch VS s/iter

1 概念介绍 在模型训练中: s/epoch 表示每个epoch所需的秒数,即完成一轮完整数据集训练的时间。s/iter 表示每个iteration(迭代)所需的秒数,即处理一个batch的时间。 它们的关系是: 2 举例 比如我tra…

JavaWeb笔记整理——Spring Task、WebSocket

目录 SpringTask ​cron表达式 WebSocket SpringTask cron表达式 WebSocket

PET-文件包含-FINISHED

include发生错误报warning,继续执行。require发生错误直接error,不继续执行 无视扩展名,只要能解析,就能当可执行文件执行,哪怕文件后缀或没后缀 1 条件竞争 pass17 只需要知道tmp的路径。把xieshell.jpg上传&…

rust逆向初探

rust 逆向葵花宝典 rust逆向技巧 rust逆向三板斧: [!NOTE] 快速定位关键函数 (真正的main函数):观察输出、输入,字符串搜索,断点等方法。定位关键 加密区 :根据输入的flag,打硬件断点,快速捕获…

macbook git 设置和远程克隆项目

step1: git安装 step2: git配置 step3: ssh配置 Git的基本操作(Mac版)_mac gitbash-CSDN博客

vue项目npm run serve出现【- Network: unavailable】(从排查到放弃)

1. 问题现象 环境: 系统:win11node:v16.20.2“vue”: “2.6.10” 执行npm run serve启动vue项目,期望: App running at:- Local: http://localhost:9528/ - Network: http://x.x.x.x:9528/实际: App runn…

同比缩放,64的倍数,最大值

目录 opencv实现 opencv实现,只有缩小 import globimport cv2def resize_image(image, max_area800 * 400):original_height, original_width image.shape[:2]max_area_found 0best_resized_image None# 确定最小缩放比例,避免过度缩小导致图像信息…

项目技术栈-解决方案-web3去中心化

web3去中心化 Web3 DApp区块链:钱包:智能合约:UI:ETH系开发技能树DeFi应用 去中心化金融P2P 去中心化网络参考Web3 DApp 区块链: 以以太坊(Ethereum)为主流,也包括Solana、Aptos等其他非EVM链。 区块链本身是软件,需要运行在一系列节点上,这些节点组成P2P网络或者半…

STM32 标准库函数 GPIO_SetBits、GPIO_ResetBits、GPIO_WriteBit、GPIO_Write 区别

GPIO_SetBits: 使用例: GPIO_SetBits(GPIOA, GPIO_Pin_1 | GPIO_Pin_2);意思是将GPIOA1和GPIOA2设为高电平 GPIO_SetBits(GPIOA, 0x0003);意思也是将GPIOA1和GPIOA2设为高电平 实际上当选中GPIOA时,它会按位遍历,在哪一位有1说…

贝叶斯网络——基于概率的图模型(详解)

贝叶斯网络(Bayesian Network,简称BN)是一种基于概率图模型的表示方法,用于表示变量之间的依赖关系,并通过条件概率推断变量间的关系。它通过有向无环图(DAG)来描述变量之间的依赖关系&#xff…

[智能车摄像头是一种安装在汽车上用于辅助驾驶和提高安全性的重要设备]

智能车摄像头是一种安装在汽车上用于辅助驾驶和提高安全性的重要设备。它们通常包括几个不同类型,如前视摄像头、环视摄像头、行车记录仪等。这些摄像头的主要功能有: 前视摄像头(Forward Camera):用于提供驾驶员前方…

用WordPress需要学习哪些编程知识

要使用WordPress搭建和管理网站,您需要掌握一些基本的编程知识。以下是一些关键的技能和概念: 基本编程知识 – HTML:用于构建网页的结构。 – CSS:用于设计和布局网页。 – PHP:WordPress是基于PHP的,…

numpy中的transpose()和pytorch中的permute()

它们都用于重新排列张量的维度,但在实现细节和使用方式上有所不同 numpy.transpose numpy.transpose 函数用于重新排列数组的维度。它接受一个元组作为参数,表示新的维度顺序。 numpy.transpose(a, axesNone) a:输入的数组。 axes&#xff…

linux,一、部署LNMP环境二、配置动静分离三、地址重写四、编写systemd Unit文件

一、部署LNMP环境 二、配置动静分离 三、地址重写 四、编写systemd Unit文件一、部署LNMP环境 环境说明 主机名 IP地址 角色 server1(已存在) eth0:192.168.88.254/24 客户端 proxy(已存在) eth0:192.168.8…

组件间通信(组件间传递数据)

组件间通信(组件间传递数据) 在 Vue.js 中,组件间通信是开发者需要经常处理的任务,特别是在构建具有多层次组件的复杂应用时。根据组件之间的关系和数据流的复杂程度,可以采用不同的通信方式。以下是常用的几种组件间通信方式: …

使用Element UI实现前端分页,及el-table表格跨页选择数据,切换分页保留分页数据,限制多选数量

文章目录 一、前端分页1、模板部分 (\<template>)2、数据部分 (data)3、计算属性 (computed)4、方法 (methods) 二、跨页选择1、模板部分 (\<template>)2、数据部分 (data)3、方法 (methods) 三、限制数量1、模板部分 (\<template>)2、数据部分 (data)3、方法…

git常用命令+搭vscode使用

1.克隆远程代码 git clone http:xxx git clone ssh:xxx clone的url 中 https和 ssh是有区别的: git中SSH和HTTP连接有什么区别-CSDN博客 当然https拉下来的代码每次pull /push都需要验证一次自己的账户和密码,可以config进行配置不用每次手敲: 解决VScode中每次git pu…