deadbeef icon indicating copy to clipboard operation
deadbeef copied to clipboard

add libgsf and timidity

Open Oleksiy-Yakovenko opened this issue 9 years ago • 7 comments

Original issue 751 created by Alexey-Yakovenko on 2012-04-19T11:52:14.000Z:

submitted by: personxys Date: 2011-09-06 22:47:46

timidity is a midi player with many features (including custom soundfonts wink) : http://timidity.sourceforge.net/ libgsf plays *.gsf and *.minigsf (gameboy advance sound format) more info here: http://wiki.linuxfromscratch.org/blfs/wiki/libgsf and here: http://www.linuxfromscratch.org/blfs/view/cvs/general/libgsf.html

Oleksiy-Yakovenko avatar Mar 12 '15 22:03 Oleksiy-Yakovenko

Comment #1 originally posted by Alexey-Yakovenko on 2012-04-19T11:52:15.000Z:

From: personxys Date: 2011-09-06 23:15:22

oh sorry heres the correct gsf page: http://projects.raphnet.net/#playgsf my mistake =P

Oleksiy-Yakovenko avatar Mar 12 '15 22:03 Oleksiy-Yakovenko

Comment #2 originally posted by Alexey-Yakovenko on 2012-04-19T19:53:14.000Z:

<empty>

Oleksiy-Yakovenko avatar Mar 12 '15 22:03 Oleksiy-Yakovenko

Comment #3 originally posted by Alexey-Yakovenko on 2013-11-23T12:17:03.000Z:

I'd like to second the request for *.gsf and *.minigsf sound formats! Deadbeef currently has a great spread of features when it comes to chiptune, but it is lacking GBA support. This is a pity, and it would be a welcome addition for those out there who have an extensive chiptune library.

Oleksiy-Yakovenko avatar Mar 12 '15 22:03 Oleksiy-Yakovenko

I know this is a very old issue and has probably been lost in the works, but I'd like to bump the issue and show my desire to see this transpire. I do have a fair few GSFs that aren't playable in DeaDBeeF, which is a real shame. It's one of the only chiptune formats it can't play at this point.

joshbarrass avatar May 23 '18 18:05 joshbarrass

This issue's been sitting here a while, so perhaps someone else has already taken this on, but I couldn't anything last I looked. I finally got some free time to work on this myself and I have now written my own GSF decoder plugin: https://github.com/joshbarrass/deadbeef_GSFdecoder

There are still a couple of things I need to implement (e.g. fadeout), a few bugs I need to fix, some improvements to add and some modifications I'll need to make if I want it to be compatible with the deadbeef-plugin-builder, but it is in a working state! There are a few (pre-)releases available for Linux users on the release page for anyone interested.

joshbarrass avatar Sep 19 '22 16:09 joshbarrass

@joshbarrass Congrats, and great job!

Let me know if I can help with anything.

I only looked at the code briefly, and one thing that I noticed is that, potentially, you will encounter re-entrancy problems, since the plugin is using a bunch of what looks like global variables holding the decoder state.

This will lead to problems if you try to run certain plugins which decode files in background (converter, waveform seekbar), while another file is playing.

I don't know whether it's fixable though. But I think it should be.

Oleksiy-Yakovenko avatar Sep 19 '22 17:09 Oleksiy-Yakovenko

Thank you! :D

I'm aware of this issue (I encountered it first-hand with the converter), but I think it should be quite straightforward to fix. I've left an issue open on the repo to remind me about it, and I'm hoping I'll get a chance later this week to work on it.

joshbarrass avatar Sep 19 '22 19:09 joshbarrass

@Oleksiy-Yakovenko that issue is now fixed, and I've tested that the converter can now run at the same time as playback

joshbarrass avatar Sep 22 '22 21:09 joshbarrass

Cool, congrats :)

Oleksiy-Yakovenko avatar Sep 22 '22 21:09 Oleksiy-Yakovenko

I will update the plugins wiki page to include your new plugin (sorry, can't do it now - but I'll get to it ASAP)

Oleksiy-Yakovenko avatar Sep 22 '22 21:09 Oleksiy-Yakovenko

Awesome, thanks! And there's no rush -- whenever you get an opportunity

joshbarrass avatar Sep 22 '22 22:09 joshbarrass

done!

Oleksiy-Yakovenko avatar Sep 23 '22 06:09 Oleksiy-Yakovenko

I'm closing the issue then. I'll ignore that this feature request asks for Timidity as well. If somebody needs it - they may post another request :)

Oleksiy-Yakovenko avatar Sep 23 '22 06:09 Oleksiy-Yakovenko