If you want to be able to have one animal sound play while another one is already playing, you will need multiple sources. If you want to be able to play multiple animal sounds without a delayed playback while it loads from disk, you need multiple buffers.
However, having lots of buffers takes up memory, so you may need to compromise if you run out of memory (have the same number of sources, but less buffers, and do some kind of dynamic loading to incur less of a feeling of delay on the user's part).
That said, start off simple: 1 source, 1 buffer per animal sound. If they're short, you're not likely to run out of memory so optimization will be unnecessary.