Godot: Support for FLAC

Created on 23 Jan 2018  路  7Comments  路  Source: godotengine/godot

Godot version:
any

OS/device including version:
any

Issue description:
It would be nice to have FLAC support in Godot. It uses less space than WAV and it uses lossless compression in contrast to OGG.

archived feature proposal audio

Most helpful comment

this could be easily doable via a GDNative plugin btw, both import and playback.. audio needs to be supported properly though

All 7 comments

IMO there is not much a of a point in supporting FLAC.

WAV is supported in Godot because it has almost free decoding time (you can play hundreds of sounds simultaneously without putting much strain on the audio thread), with the only drawback being the memory needed.

OGG is supported because it uses a lot less memory than WAV, but has the cost of being more expensive to reproduce.

FLAC has no wins, it's slow to reproduce and still uses considerably more space than OGG. Also i'm not sure if it would work on the current Godot audio system because the decoder is required to not allocate any memory. Not sure if this is possible in FLAC.

I would actually love to have FLAC support, but not for what ends up in the final export. My sound workflow is almost entirely FLAC because it optimizes my indie disk space (and I do lots of audio work, my sound library is in FLAC too).
I don't care if Godot is unable to play FLAC, but being able to import it (either as stream or full) would be useful. Otherwise... I guess I would have to convert everything to WAV or OGG manually, it kinda defeats the import system :/

this could be easily doable via a GDNative plugin btw, both import and playback.. audio needs to be supported properly though

FLAC support would be valuable for things like rhythm games where the content is produced from a community, like Stepmania, or where gameplay is generated from files on the user's hard drive, like Audiosurf. I'd prefer additional codec support to be provided through modules, though, instead of pushing them to core.

Supporting extra codecs (not just for audio but also for video) without adding more things to core Godot seems like the exact sort of thing that GDNative is designed to do.

IMO there is not much a of a point in supporting FLAC.

WAV is supported in Godot because it has almost free decoding time (you can play hundreds of sounds simultaneously without putting much strain on the audio thread), with the only drawback being the memory needed.

OGG is supported because it uses a lot less memory than WAV, but has the cost of being more expensive to reproduce.

FLAC has no wins, it's slow to reproduce and still uses considerably more space than OGG. Also i'm not sure if it would work on the current Godot audio system because the decoder is required to not allocate any memory. Not sure if this is possible in FLAC.

You clearly do not understand the importance of lossless compression to some people, although I will agree that a GDNative plugin would be the best route to handle extra audio or video plugins. The only problem is I don't know how to set that up, but hopefully I can find someone that does and/or figure it out myself.

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.

The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.

If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!

Was this page helpful?
0 / 5 - 0 ratings