Open main menu

Difference between revisions of "OpenTasks"

187 bytes added ,  21:32, 21 February 2010
→‎Output selection: some updates after discussing with waltervn
(→‎Output selection: some updates after discussing with waltervn)
Line 250: Line 250:
To overcome these issues it would be best to change our audio output configuration API to use different layers of configuration:
To overcome these issues it would be best to change our audio output configuration API to use different layers of configuration:


* The first layer would be the output type. This might be for example MIDI, AdLib (or rather in generic OPL* output), (PC) Speaker (this might also include PCjr and CMS that would need to be determined in detail), Amiga, Digital Output etc. Note that this is no final list, this would need to be rechecked when working on the task later!
* The first layer would be the output type. This might be for example MIDI (or maybe even General MIDI and MT-32 MIDI), AdLib (or rather in generic OPL* output), (PC) Speaker (this might also include PCjr and CMS that would need to be determined in detail), Amiga, Digital Output etc. Note that this is no final list, this would need to be rechecked when working on the task later!
* The next layer would be either a concrete output implementation, like Windows MIDI or ALSA for MIDI, or some sub-type, for example MIDI usually comes in either MT-32 MIDI or General MIDI (or both!). Here would be thought required to determine what would be the best solution. For example some games might just support MT-32 MIDI or General MIDI, thus this might be a first layer type. So if you plan to take this task, you will still have a lot of research to do, to find the best separation :-).
* The next layer would probably be a concrete output implementation, like Windows MIDI or ALSA for MIDI. Or some sub-type, for example MIDI usually comes in either MT-32 MIDI or General MIDI (or both!). Here would be thought required to determine what would be the best solution. For example some games might just support either MT-32 MIDI or General MIDI, thus this might be a first layer type. Maybe it would also be possible that we have another layer just for the GUI, i.e. not visible to the engine code, which covers this. So if you plan to take this task, you will still have a lot of research to do, to find the best separation :-).


The exact same layers should also be visible in the GUI configuration to allow for a much more user friendly output configuration. The user might additionally configure a concrete output like ALSA to use a specific implementation specific setting (like in the output port for ALSA) though. See the [[OpenTasks#MIDI_device_configuration|MIDI_device_configuration]] task for more information about this. (Note that it would probably best to tackle both tasks in a single Google Summer of Code project!).
Roughly the samelayers should also be visible in the GUI configuration to allow for a much more user friendly output configuration. The user might additionally configure a concrete output like ALSA to use a specific implementation specific setting (like in the output port for ALSA) though. See the [[OpenTasks#MIDI_device_configuration|MIDI_device_configuration]] task for more information about this. (Note that it would probably best to tackle both tasks in a single Google Summer of Code project!).


Of course this is not set in stone yet; if you have some other great idea how to tackle this, we are happy for your feedback :-).
Of course this is not set in stone yet; if you have some other great idea how to tackle this, we are happy for your feedback :-).
561

edits