0 Favourites

FMOD integration

  • Anyone ever tried using FMOD? If not, would a similar type of audio framework be something that people are interested in? It seems like it would be pretty handy for keeping audio engineers and designers on the same page, so to speak. Just wondering what you all think. Cheers.

  • johnrazor I have often heard FMOD mentioned when I was researching Audiosurf/Beat Hazard type games. Could one use FMOD for these? If so, I would be extremely interested. The only other step would be getting a C2 plugin that finally allows us to create games that can import music at runtine.

  • I've been reading up on it a bit since posting, and it sounds like it might actually be easier to design a substitute from scratch than to hack FMOD into working with C2. I'm quite frequently wrong, though, especially when I'm speculating about a project. Cheers.

  • johnrazor : FMOD is an expensive piece of middleware and a low level sound API which doesn't work with html5. It's mainly used by big studios. Although it's free for indie designer, you still have to request a per-project licence, and it's dependent on your actual budget (in other words, you need to be incorporated, I believe).

    To sum things up: it cannot be integrated directly into c2.

  • Construct 3

    Buy Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Buy Now Construct 3 users don't see these ads
  • Valerien good to know, thanks.

    @johnrazor Well, have you taken a look at the analyzer built in to C2 already? You may be able to build off of that.

  • johnrazor : FMOD is an expensive piece of middleware and a low level sound API which doesn't work with html5. It's mainly used by big studios. Although it's free for indie designer, you still have to request a per-project licence, and it's dependent on your actual budget (in other words, you need to be incorporated, I believe).

    To sum things up: it cannot be integrated directly into c2.

    Thanks for clarifying! I appreciate it. I'm going to dig around a bit more and post my findings here. As game designers, would you think it would be handy to have functions like this (just brainstorming, feel free to add your own ideas). Also there very well could be a plugin or something that already does all this--- I'm still pretty new to Construct (mostly use it to prototype ideas, myself). Cheers.

    IncreaseTempo

    DecreaseTempo

    ChangeKey

    NextTrack

    PreviousTrack

    _____________

  • Valerien good to know, thanks.

    johnrazor Well, have you taken a look at the analyzer built in to C2 already? You may be able to build off of that.

    Yeah, actually that's what gave me the idea. The hard parts are all done, it seems like-- the functionality is all there. I think we'd do well to have a common language we could speak (between audio guys and game designers/developers). DJs use the Camelot system frequently, that might be a handy jumping-off point as well. Hrm.

  • johnrazor : design teams and sound designers who team up generally establish and share a common language to base their discussions on. I've read the analysis functionality in construct 2 had issues. A knowledgeable member around here has done an app that uses it, at least on Construct classic. Can't remember his pseudo though.

  • johnrazor : design teams and sound designers who team up generally establish and share a common language to base their discussions on. I've read the analysis functionality in construct 2 had issues. A knowledgeable member around here has done an app that uses it, at least on Construct classic. Can't remember his pseudo though.

    Sure, that makes sense. As a musician, I can tell you that any song I write has the following attributes, which almost never change (unless briefly) throughout a song.

    Tempo = Speed of rhythm. Also known as beats per minute (BPM).

    Key = Harmony of song. For example, C minor is a deep, sad key, whereas A Major is a happy, bright key.

    C Minor: http://upload.wikimedia.org/wikipedia/c ... ending.mid

    A Major: http://upload.wikimedia.org/wikipedia/c ... _major.mid

    Energy = This is a bit more abstract, but I look at it like this: the number of different sounds playing at any given time. Louder sounds weigh heavier than smaller sounds, if that makes sense--- basically, the more noise you're making at any given time, the more energy I consider it to have.

    In addition to that, at least amongst the composers/producers I know-- we all live and die by the 8-bar loop. It's longer or shorter depending on the BPM, but 8 bars is equal to one measure. In pop songs, figure the chorus is almost always a single measure.

  • It depends on what you're trying to accomplish, but if you mean something like interactive/adaptive audio, C2 already handles this pretty simply. My games have interactive music that changes based on player input or game conditions, and I just run it all off a variable timer and some simple events. You can also apply DSP effects if you want, though it isn't necessary for my games for music. I don't know how effective the analyzer is in C2, but as far as cues, crossfades, swaps, interuptions, flourishes and all that, you can do that with C2's events as they are now with no extra libraries.

  • It depends on what you're trying to accomplish, but if you mean something like interactive/adaptive audio, C2 already handles this pretty simply. My games have interactive music that changes based on player input or game conditions, and I just run it all off a variable timer and some simple events. You can also apply DSP effects if you want, though it isn't necessary for my games for music. I don't know how effective the analyzer is in C2, but as far as cues, crossfades, swaps, interuptions, flourishes and all that, you can do that with C2's events as they are now with no extra libraries.

    Great to know, thanks for sharing. I'm thinking more along the lines of how I present my music in the asset store at this point-- realizing that the tools are already in place, thanks to the feedback here. I really appreciate you all taking the time to help me understand things from your perspective. Cheers!

  • johnrazor I have often heard FMOD mentioned when I was researching Audiosurf/Beat Hazard type games. Could one use FMOD for these? If so, I would be extremely interested. The only other step would be getting a C2 plugin that finally allows us to create games that can import music at runtine.

    Just reading through the thread again, and I don't think I understand what you mean when you say importing at runtime-- you mean like this?

    1. User launches application, which has no audio imported.

    2. Audio is pulled down from a server somewhere, and is not static (names and attributes of audio could be different every time)

    3. Audio is played back when triggered by user.

    I feel like I'm missing the big picture, here, which is embarassing since I've spent a fair bit of time tinkering in C2. :/

    Cheers!

  • [quote:1gcusn1u]1. User launches application, which has no audio imported.

    2. Audio is pulled down from a server somewhere, and is not static (names and attributes of audio could be different every time)

    3. Audio is played back when triggered by user.

    es. As far as I know, there is no good way (or maybe even any way) to create a program that can load audio externally, whether it be from an online server, a local hard drive disk, or whathaveyou.

    For instance, I asked this a while ago, and got nothin':

    And this, too:

    Not one reply, even after hopefully bumping them.

    What I would like to do is create a game that can load external audio like Audiosurf can (using a plugin like the File Chooser), pre-analyse said audio before playing it and not during, and then create the game level/layout/etc.

    It seems that the current state of Construct 2 does not offer these features like, say, Unity and Unreal can. I should probably be switching to either of those engines, and not use C2, but I really do enjoy working in this engine, and hence I'd like to actually develop with it.

    /end wall of text

  • [quote:l8urm5o2]1. User launches application, which has no audio imported.

    2. Audio is pulled down from a server somewhere, and is not static (names and attributes of audio could be different every time)

    3. Audio is played back when triggered by user.

    es. As far as I know, there is no good way (or maybe even any way) to create a program that can load audio externally, whether it be from an online server, a local hard drive disk, or whathaveyou.

    For instance, I asked this a while ago, and got nothin':

    And this, too:

    Not one reply, even after hopefully bumping them.

    What I would like to do is create a game that can load external audio like Audiosurf can (using a plugin like the File Chooser), pre-analyse said audio before playing it and not during, and then create the game level/layout/etc.

    It seems that the current state of Construct 2 does not offer these features like, say, Unity and Unreal can. I should probably be switching to either of those engines, and not use C2, but I really do enjoy working in this engine, and hence I'd like to actually develop with it.

    /end wall of text

    It seems like this could be possible with metadata--- maybe something like this:

    Upload audio file to server. Server analyzes audio file and creates XML file based on analysis. User launches application/website, selects audio file, and level is procedurally generated based on the XML metadata file. Something like that?

  • johnrazor that could be done, but what about playing the file? And what exactly do you mean by "metadata"?

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)
Similar Topics Posts Views Last Post
Unread hot topic
224 49,499
ThePhotons's avatar
ThePhotons
Unread hot topic
30 3,132
2dgamedev's avatar
2dgamedev
Topic
19 950
RozekEnhance's avatar
RozekEnhance