View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000779||OpenMPT||libopenmpt||public||2016-05-04 17:46||2022-06-21 12:57|
|Reporter||Saga Musix||Assigned To|
|Product Version||OpenMPT 1.?? (long term goals)|
|Target Version||OpenMPT 1.?? (libopenmpt 1.0) (goals)|
|Summary||0000779: Allow certain playback-related flags to be set as load-time ctl or during playback|
Some internal flags should be able to be chosen by the user (e.g. the currently unimplemented flag for playing Amiga MODs as mono, force-enabling VBlank timing for ProTracker MODs or super-smooth ramping for XM files).
|Tags||No tags attached.|
|Has the bug occurred in previous versions?|
|Tested code revision (in case you know it)|
I think basically all of enum PlayBehaviour could be exposed as ctls. ctls are settable even after loading by using ctl_set(). Unless implemented load-time specific explicitly, ctls will also and are supposed to work during play time by default.
I don't think it is really necessary to expose all of PlayBehaviour - most of it can be accurately determined at load-time and should never be changed by the user. The amount of (sometimes rather insufficiently documented) behaviour flags there would probably just confuse any library user (both developer and end-user). The number of play behaviours that are actually relevant to be settable via ctls is really low.
An interesting approach could be to have different "player types" which could be queried. For example, for S3M files, player types could be "ST3 with GUS", "ST3 with SoundBlaster", "Impulse Tracker", and these player types would be associated with certain sets of playback flags. For MOD, different ProTracker versions and other tools could define certain playback flags in the same way. This would be easier to understand than the 100+ playback behaviour flags that are currently available.
|2016-05-04 17:46||Saga Musix||New Issue|
|2016-05-04 17:47||Saga Musix||Category||Feature Request => libopenmpt|
|2016-05-04 17:47||Saga Musix||Description Updated|
|2016-05-04 18:24||manx||Note Added: 0002359|
|2016-05-04 19:56||Saga Musix||Note Added: 0002360|
|2018-11-24 10:48||Saga Musix||Relationship added||related to 0001173|
|2020-05-16 20:10||Saga Musix||Note Added: 0004330|
|2020-05-17 08:05||manx||Target Version||=> OpenMPT 1.?? (libopenmpt 1.0) (goals)|
|2022-06-21 12:48||Saga Musix||Relationship added||has duplicate 0001605|