zThorn / AggroBeats

0 stars 0 forks source link

Deciding on audio library to use #1

Closed zThorn closed 9 years ago

zThorn commented 9 years ago

So we have a couple options as far as performing the FFT. We can either go fully custom and use a library like FFTW, but it apparently has licensing costs for commercial projects. Additionally we have the option to use a library like KissFFT, but we would have to handle loading of audio files, and since mp3's are a closed format it gets a little bit wonky. I found libmpg123 which would probably work for that, but then we'd have to figure out how to parse the audiostream into a float array, which could get messy.

If we want to go for the "already done" approach, there's this module: https://forums.unrealengine.com/showthread.php?53747-Packaging-Game-with-Audio-Visualization-Plugin but we'd have to run a custom compiled version of UE, and we'd have to package & build the addon manually. Apparently theres also an FMOD plugin for UE that's available that we may be able use, and that should be fairly plug & play. On an unrelated note I have no idea what its capabilities are.

zThorn commented 9 years ago

FMOD appears to be more related to solely playing audio and not necessarily analyzing it, while the Audiovisulization plugin would give us access to spectrum frequencies & amplitudes in realtime

MusicAdam commented 9 years ago

Yeah so it sounds like we should use the plugin as if we wanted to use a 3rd party engine we'd basically have to implement it like this anyway and this one is already done for us (basically) the Kiss_FFT library & corresponding plugin is already present just not included in the build.

zThorn commented 9 years ago

Yeah kissFFT is the library they use, the only thing is its pretty undocumented as far as how we go about doing that. I think I just need to make sure that it links with kissFFT, because it looks like their default makefile doesnt include it.

MusicAdam commented 9 years ago

Yeah I read through that thread and it basically sounds like the library is there but we have to include it in the build ourselves.

zThorn commented 9 years ago

Alright, Ill take a look into the build files today when I get home

zThorn commented 9 years ago

https://www.youtube.com/watch?v=OesnWQCJGig&feature=youtu.be

So it looks like the audiovisualization plugin works out of the box, I made a quick blueprint with it and everything compiled fine. I think its only a problem when we go to create a dist version, and I say we worry about that when we have to worry about it.