Uinty3D性能優化-聲音資源

轉自:https://www.cnblogs.com/wwhhgg/p/13025544.html

結論在最後

 

音頻格式

WAV:微軟公司開發的一種聲音文件格式,簡單的編/解碼、普遍的認同/支持以及無損耗存儲,目前Windows上最流行的聲音文件格式,資源大,不推薦

MP3:是MPEG標準中的音頻部分,大小隻有WAV文件的1/10,是一種有損壓縮數字音頻格式,失真小,適合音質要求高的文件,例如BGM

OGG:是一種新的音頻壓縮格式,類似MP3的音樂格式,它是完全免費、開放和沒有專利限制的。壓縮比高,適合人聲、音效等

Unity聲音資源

壓縮的:壓縮聲音是通過從編輯器導入設置選擇compressed選項,音頻數據將很小,但在播放時會消耗CPU來解碼

原生的:對於短音效使用未壓縮音頻(WAV,AIFF)。音頻數據將較大,但是聲音在播放是不需要解碼

Snipaste_2020-06-01_10-35-21

Force To Mono:轉化爲單聲道,一般手機使用單聲道足夠滿足需求

Normalize:單聲道標準化

Load In Background:單獨線程加載,不阻塞主線程,如果直接放在場景裏,會在場景加載的時候一起被加載

Ambisionic:立體聲

OriginaSize:磁盤大小,播放時要佔的RAM內存

ImportedSize:導入內存大小,打包時用的內存

Ratio:ImportedSize佔OriginalSize比例

應該注意的優化

Total Audio Source:總資源數

AudioClipCount:緩存的音頻數量

AudioVoices:當前播放的音頻個數

TotalAudioMemory :實際佔用的內存大小

Total Audio CPU,Streaming CPU :CPU的消耗

OGG就相當於一個容器,Vorbis是一種音頻壓縮機制,像一些後綴名爲.ogg的文件,表明這裏面只包含Vorbis 音頻


Load Type 類型 特點
Decompress On Load 加載時解壓縮 未壓縮的音頻將存儲在RAM中。需要的內存最多,但是播放它CPU消耗小,適合較小壓縮聲音,不要對大型文件使用,會消耗最高的內存。處理較小的聲音(load就解壓)
Compressed In Memory 壓縮在內存中 壓縮後的音頻剪輯存儲在RAM中,播放時將解壓縮,CPU消耗比較大(尤其是對於Ogg / Vorbis壓縮文件),適合對較大的文件。較大的聲音(保持解壓的狀態)
Streaming 即時解碼 音頻永久存在設備上(硬盤或閃存上) ,播放流媒體方式(邊加載邊播放),不需要RAM進行存儲或播放,使用最少的內存來讀取並即時解碼壓縮數據,解壓縮在單獨流線程上,CPU消耗比較大,適合背景音樂,明顯降低內存佔用使用最少的內存來緩衝壓縮數據(很長的音樂)
Compression Format 壓縮格式 特點
PCM 以較大文件大小提供更高質量 非常短的音效是最好的,質量高,文件大
ADPCM 壓縮率比PCM小3.5倍,但CPU使用率比MP3/Vorbis低得多 噪音多並且大量播放聲音,如腳步聲音,撞擊聲
Vorbis/MP3 壓縮後文件較小,比PCM質量低 最適合中等長度聲音,質量低
Sample Rate Setting 採樣率設置 特點
Preserve Sample Rate 保留採樣率 (默認)使採樣率保持不變
Optimize Sample Rate 優化採樣率 按最高頻率自動優化採樣率
Override Sample Rate 覆蓋採樣率 允許手動覆蓋採樣率
  • 總結:加載類型和壓縮格式主要是會影響到CPU和內存。壓縮率越高文件就小,包體小,但是解壓縮佔用的內存就大,CPU消耗也大。所以沒有最合適,只有相對合適。
  • Streaming+Vorbis,使用最少的內存,但需要更多的CPU消耗和硬盤I/O操作;
  • Compressed In Memory+Vorbis,磁盤I/O操作被替換成內存的消耗,可以調整“Quaility”滑塊以減小壓縮剪輯的大小,以交換音質,一般推薦70%左右。
  • 項目是採用:
  • 長度<10:Compressed In Memory + Vorbis
  • 長度>10:(背景音樂)Streaming + Vorbis
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章