As a general rule of thumb Music is Compressed and SFX are not, but what about voice overs? Are there any cons to them being compressed? Should they decompress on load? Any general insights would be appreciated.
Compress an audio file if it takes up a lot of space uncompressed. Decompress on load if you have the memory for it. It doesn't matter what the audio file is.
There are a few things to consider here when deciding how to load your sound:
- size on disk
- size in memory
- CPU usage
Long sound files such as music and dialog should definately be compressed. They should also be streamed (Unfortunately I don't think Unity3D support streaming sounds though). They should definately not be decompressed on load, that is only useful for sounds which are played frequently. If you play a sound once then decompressing the whole thing upfront is going to eat up a lot of memory for no real benefit.
Compressing the sound file will do a few things, it will speed up the time it takes to get that data from the disk and into memory. (It's faster to read a 3MB file than a 30MB file) There is additional CPU usage required to decompress the file, but it is usually a good trade off for any long sounds like dialog.
What Jessy said. Also, typically voice-only files are a lower bandwidth (female generally higher than male, but still). So the compression factor can be pretty high without losing much fidelity. Mono rather than stereo, obviously.
I think the idea of compression should also affect the voice overs and dubbing, the bitrate may be little advance or late and the sync lapse can be visible if this is in video format. See http://www.debbieirwin.com/, about enhance video narrations and voice overs.