This is a vast topic but in general an RTOS makes life a lot easier. I use FreeRTOS.
OTOH if you can reasonably structure your project as a loop, plus a timer interrupt (say 1kHz) plus I/O interrupts (say for a UART, SPI, etc) then that will take less time to implement.
In your case, if I get your drift, you are reading 16 bit values out of an SPI FLASH chip, at a fixed rate say 48kHz, stuffing them into two DACs, and you want to generate one of those funny spectrum analyser patterns on an LCD. The 48kHz code is best run off a timer interrupt, and then a timer interrupt running at say 10-100Hz will pick up some recent values (you put some of the DAC samples somewhere), process them and update the LCD. That would be the simple way. The RTOS way would still use a 48kHz interrupt to do the first bit (you have to do that because audio playback must be done at exact sample timing) and you could use an RTOS task for the LCD stuff but it is hardly worth it.
If I was doing it I would use my RTOS stuff because I already have it.
Can't guess what CPU power you need. Is it .wav (which is lossless encoded and easy) or is it .mp3 (which needs decoding)?
Sorry I said LCD but you are using LEDs...
I don't think you need an RTOS.