Code Monkey home page Code Monkey logo

Comments (7)

Dudejoe870 avatar Dudejoe870 commented on September 24, 2024

Glad you like it! I haven't worked on this in a bit, but really I kind of doubt that VST support is something that can happen unless libopenmpt supports it (VST hosting is an extremely difficult thing to do properly). However as far as row/channel controls and all of that, that's not all that complicated I could probably try to implement that. Currently the addon is quite literally just a wrapper around libopenmpt, and it exposes all of that stuff in a pretty easy interface already.

EDIT: I had actually already forgotten but the AudioMPTPlayback class should already have an overloaded version of seek with order/row functionality! I probably need to create a wiki. it also hasn't been tested so please do update if there are any issues. I'm looking into adding more control right now.

EDIT2: Just looked up the possibility of VST support and it says here that libopenmpt does in fact not support VSTs. Also taking a look at the the documentation, I'm not sure how the VST information is stored, it probably might be able to be retrieved but I have no idea. So I don't know how practical it is to implement it on top of libopenmpt anyway. Either way currently something like that is too big of a task for me to delve into. I will keep this issue open however with the possibility that it could be implemented some day.

from godot-openmpt.

GeminiSquishGames avatar GeminiSquishGames commented on September 24, 2024

from godot-openmpt.

Dudejoe870 avatar Dudejoe870 commented on September 24, 2024

I haven't really used the mptm format, but you might be able to also just use subsongs if you want and switch between them, if it supports them (instead of using multiple AudioStreams)

from godot-openmpt.

Dudejoe870 avatar Dudejoe870 commented on September 24, 2024

FYI: New build is out. You can download it as an artifact in the actions tab. I'll also probably upload it to the prebuilt branch soon.

from godot-openmpt.

GeminiSquishGames avatar GeminiSquishGames commented on September 24, 2024

I haven't really used the mptm format, but you might be able to also just use subsongs if you want and switch between them, if it supports them (instead of using multiple AudioStreams)

True but what I mean is to have parts that I can play together that are in sync, a bit like stems. One contains the basic parts of the song, one contains the non-battle parts, and one contains the battle parts. For a simple example. Thanks for the heads up on the release!

ps: https://wiki.openmpt.org/Development:_OpenMPT_Format_Extensions - this is the wiki page that has info on the file structure for extensions, it has VST header data, maybe it's of use to you. I think it's mostly just .it format with the extra things like OPL and Plugins built in. They used to hack in these extensions in .xm and .it files but stopped and made it part of the official .mptm file format only. At any rate, anything you don't get to that I need I'll probably eventually try to get it going at some point, but I don't need VST that much I was just wondering if you may have looked into it. I'm a little surprised it doesn't just work as long as the settings point to the right location of the VSTs, but obviously, it's not that easy.

from godot-openmpt.

Dudejoe870 avatar Dudejoe870 commented on September 24, 2024

Well I will also say that, most VSTs (even free ones) probably don't have licenses that allow redistribution at any rate, so packaging them into a game will probably be illegal.

from godot-openmpt.

GeminiSquishGames avatar GeminiSquishGames commented on September 24, 2024

from godot-openmpt.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.