Timidty support

Moderator: Raze Developers

User avatar
NightFright
Spotlight Team
Posts: 1278
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Timidty support

Post by NightFright »

I know it's probably too early to ask for this, but are there any chances Timidty++ support is added? This way we could also use the amazing EAWPats (or GUS patches) there. I guess as a compromise it always works to use Bashe's EAWPats soundfont with Fluidsynth (or VirtualMIDISynth), but being able to use the original patches would be preferable.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48033
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Timidty support

Post by Graf Zahl »

No - Timidity++ is GPL 2.0, and cannot be used with the Build license in the same project.

I'd like to have this as much as you do - but what can you do in this case where some people were intent of using non-commercial licenses?
User avatar
Rachael
Admin
Posts: 12950
Joined: Tue Jan 13, 2004 1:31 pm
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Preferred Pronouns: She/Her

Re: Timidty support

Post by Rachael »

Would it be legal if a third-party developer created a patch that allowed this?

"Oh, hey, I am just gonna leave this here, it's a source code patch, but legally this cannot be distributed because of incompatible licenses so you'll have to compile from source to make it work"
Gez
 
 
Posts: 17652
Joined: Fri Jul 06, 2007 3:22 pm

Re: Timidty support

Post by Gez »

The old TiMidity4ZDoom hack could probably be reused if we really wanted.
User avatar
NightFright
Spotlight Team
Posts: 1278
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Timidty support

Post by NightFright »

I see. Oh well, then it's the soundfont at least. Maybe Bashe can also be convinced to do another soundfont without his personal adjustments.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48033
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Timidty support

Post by Graf Zahl »

Rachael wrote:Would it be legal if a third-party developer created a patch that allowed this?

"Oh, hey, I am just gonna leave this here, it's a source code patch, but legally this cannot be distributed because of incompatible licenses so you'll have to compile from source to make it work"


As a source code patch, all that needs to be done is to copy all relevant code from GZDoom and add the missing menu parts and swap out the ZMusic DLL. Of course such a thing cannot be distributed in binary form thanks to the Build license.
But even if Build was removed, thanks to EDuke being GPL v2-non-plus, all the other backends were still in the same situation, so sorry, still no OPL, unless someone ported EDuke's OPL player.
Cacodemon345
Posts: 398
Joined: Fri Dec 22, 2017 1:53 am
Discord: Cacodemon345#9151
Github ID: Cacodemon345
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Timidty support

Post by Cacodemon345 »

Rachael wrote:Would it be legal if a third-party developer created a patch that allowed this?

"Oh, hey, I am just gonna leave this here, it's a source code patch, but legally this cannot be distributed because of incompatible licenses so you'll have to compile from source to make it work"
My own way of doing that would be like this: Externalize all configuration from the main game exec related to ZMusic into it's own ini file, with an additional config utility to configure the ZMusic DLL and all of its features and synths. That way, it would allow the full ZMusic DLL to be used without the need to bundle it, avoiding the license issues. People can also swap out the ZMusic DLL for the full version of it locally.

Of course the solution isn't exactly perfect, but it works.
Manuel-K
Posts: 75
Joined: Wed Mar 15, 2017 11:43 am

Re: Timidty support

Post by Manuel-K »

Is it really a problem to include the menu code? That might be seen as an encouragement for users to personally mix incompatible licenses, but that seems a bit far fetched.
Gez
 
 
Posts: 17652
Joined: Fri Jul 06, 2007 3:22 pm

Re: Timidty support

Post by Gez »

Ideally the menu code could query ZMusic for supported features, showing options only if they're meaningfully available.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 48033
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Timidty support

Post by Graf Zahl »

Technically it's not a problem, of course, but I won't let myself be accused of weaseling around some licensing restrictions.
It's easy enough anyway - all you need is to replace music_config.cpp with GZDoom's version (make sure you fix the differently named base sound font!)
The menu isn't even needed to get it set up, you can do that directly through the console. The main issue with the menu is that it requires quite a bit of text to be added to the language resource that has no purpose outside of such a special build. Sorry, but that's something that won't be well received by GPL purists so I won't do anything about it.
Note that I won't be able to keep anyone from maintaining a fork that fills in the blanks and doesn't offer binaries, but I won't do it myself.
Gez wrote:Ideally the menu code could query ZMusic for supported features, showing options only if they're meaningfully available.
Yes, that surely can be done, but here we are again in territory where I really do not want to go with a project that has such a messed up license. My rule has been simple: All code that gets added must be compatible with both the Build license and the GPL v2.
User avatar
NightFright
Spotlight Team
Posts: 1278
Joined: Fri May 02, 2008 12:29 pm
Location: Germany

Re: Timidty support

Post by NightFright »

Well, it looks like Bashe is willing to take another look at his soundfont adaptation and might consider doing a version that is even closer to the native sound of the patches. So this request wasn't made in vain.

Return to “Closed Feature Suggestions”