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.rhkb.cn/news/472147.html

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

相关文章

基于 PyTorch 从零手搓一个GPT Transformer 对话大模型

一、从零手实现 GPT Transformer 模型架构 近年来,大模型的发展势头迅猛,成为了人工智能领域的研究热点。大模型以其强大的语言理解和生成能力,在自然语言处理、机器翻译、文本生成等多个领域取得了显著的成果。但这些都离不开其背后的核心架…

C++(Day35)

一、学习内容 C绪论 C是C语言的拓充,C包含C的所有属性,换一句话说,C语言的语法在C中都合法。 C语言是面向过程的编程思想。 C语言是面向对象的编程思想。(半面向对象,半面向过程) 可以说在C中一切皆对象。 …

World of Warcraft [WeakAuras]Barney Raid Kit - Collapsing Star Indicator

https://wago.io/BarneyCS 黄色数字表示需要修的血量。 绿色数字表示停止修血。 红色数字表示修血过量,以及该坍缩星将在大爆炸读条结束前多少秒爆炸。 Numbers in yellow means damage required. Numbers in green means HP is good, dont damage anymore. Numbers…

Elasticsearch retrievers 通常与 Elasticsearch 8.16.0 一起正式发布!

作者:来自 Elastic Panagiotis Bailis Elasticsearch 检索器经过了重大改进,现在可供所有人使用。了解其架构和用例。 在这篇博文中,我们将再次深入探讨检索器(retrievers)。我们已经在之前的博文中讨论过它们&#xf…

C++清除所有输出【DEV-C++】所有编辑器通用 | 算法基础NO.1

各位小伙伴们,上一期的保留小数位数教学够用一辈子,有不错的点赞量,可我连一个粉丝铁粉都没有,你愿意做我的第一个铁粉吗?OK废话不多说,开始! 温故与知心 可能你也学过,且是工作者…

麒麟kysec安全

一、kysec安全框架管理 开启kysec getstatus Copy security-switch --set default Copy 重启系统 reboot Copy 刷新页面,等待几分钟,即可完成文件的扫描。 查看kysec状态 getstatus Copy 切换到管理员身份(密码:devuser…

本地 / 网络多绑定用例总结

原文连接:AUTOSAR_EXP_ARAComAPI的7章笔记(4) 情景设定 在前一节的基础上,假设有类似情景,区别在于服务实例 2 位于与 AP 产品相同以太网的不同 ECU 上,服务消费者及其代理驻留在 AP 产品 ECU 上。因以太网…

Android笔记(三十六):封装一个Matrix从顶部/底部对齐的ImageView

背景 ImageView的scaleType默认显示图片是这样,但是有时候设计稿需求希望图片左右能紧贴着ImageView左右边缘,又不破坏图片的比例,用自带的matrix,centerCrop等都可以满足 但是都会造成图片的某些区域被裁剪了,如果设…

什么是项目完整性管理?

项目完整性管理是一种在项目生命周期中确保项目质量、进度、成本、资源等各方面保持一致性与协调性的系统性方法。它不仅涉及项目的规划与执行,还包括对项目中的各项资源、流程、技术的整合和控制,以保障项目的最终交付质量和效果。随着项目复杂性的提升…

【3D Slicer】的小白入门使用指南四

开源解剖影像浏览工具Open Anatomy Browser使用及介绍 和3D slicer米有太大关系,该工具是网页版影像数据的浏览工具(可以简单理解为网页版的3D slicer) 介绍 ● 开放解剖(OA)浏览器是由神经影像分析中心开发的,基于网络浏览器技术构建的图谱查看器。 ● OA浏览器将解剖模…

如何优化Kafka消费者的性能

要优化 Kafka 消费者性能,你可以考虑以下策略: 并行消费:通过增加消费者组中的消费者数量来并行处理更多的消息,从而提升消费速度。 批量消费:配置 fetch.min.bytes 和 fetch.max.wait.ms 参数来控制批量消费的大小和…

论文 | On Second Thought, Let’s Not Think Step by Step!

概述与研究背景 本文探讨了“零样本链式思维”(Zero-shot Chain of Thought, CoT)在大语言模型(LLM)中的应用及其潜在的偏见与有害内容生成风险。论文指出,尽管CoT在多种逻辑推理任务中提高了模型的表现,但…

华为云前台展示公网访问需要购买EIP,EIP流量走向

华为云前台网络(VPC,安全组,EIP) 1.EIP网段是从哪里划分的? 管理员在后台Service_OM已设置 Service_OM-网络资源-外部网络-创建外部网络基本信息:配置参数:*名称 public*网络类型 LOCAL 不带标签 类似开…

4. Spring Cloud Ribbon 实现“负载均衡”的详细配置说明

4. Spring Cloud Ribbon 实现“负载均衡”的详细配置说明 文章目录 4. Spring Cloud Ribbon 实现“负载均衡”的详细配置说明前言1. Ribbon 介绍1.1 LB(Load Balance 负载均衡) 2. Ribbon 原理2.2 Ribbon 机制 3. Spring Cloud Ribbon 实现负载均衡算法-应用实例4. 总结&#x…

apk反编译修改教程系列-----apk应用反编译中AndroidManifest.xml详细代码释义解析 包含各种权限 代码含义【二】

💝💝💝💝在上期博文中解析了一个常规apk中 AndroidManifest.xml的权限以及代码。应粉丝需求。这次解析一个权限较高的apk。这款apk是一个家长管控的应用。需求的各种权限较高。而且通过管控端可以设置控制端的app隐藏与否。 通过博文了解💝💝💝💝 1💝💝…

如何修改npm包

前言 开发中遇到一个问题,配置 Element Plus 自定义主题时,添加了 ElementPlusResolver({ importStyle: "sass" }) 后,控制台出现报错,这是因为 Dart Sass 2.0 不再支持使用 !global 来声明新变量,虽然当前…

神经网络与Transformer详解

一、模型就是一个数学公式 模型可以描述为:给定一组输入数据,经过一系列数学公式计算后,输出n个概率,分别代表该用户对话属于某分类的概率。 图中 a, b 就是模型的参数,a决定斜率,b决定截距。 二、神经网络的公式结构 举例:MNIST包含了70,000张手写数字的图像,其中…

谷歌Gemini发布iOS版App,live语音聊天免费用!

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工…

【Java基础知识系列】之Java类的初始化顺序

前言 类的初始化顺序 简单场景 代码示例 public class Person {private String name initName();private String initName() {System.out.println("【父类】初始化实例变量name");return "【父类】史蒂夫";}private int age;private static int staticVa…

鸿蒙 管理应用拥有的状态有Localstorage、Appstorage、PersistentStorage、Environment、用户首选项、持久化方案。

LocalStorage: LocalStorage是页面级UI状态存储,通过Entry装饰器接收的参数可以在页面内共享同一个LocalStorage实例。支持UIAbility实例内多个页面间状态共享。 // 存储数据 localStorage.setItem(key, value); // 获取数据 const value localStorage…