summaryrefslogtreecommitdiffstats
path: root/src/bank.c
Commit message (Collapse)AuthorAgeFilesLines
* Refactor sequencer to use generic objectsXANTRONIX Development2022-03-171-2/+6
| | | | | | | | | Changes: * Make most xas_object methods accept an 'index' argument * Make most event sequence functions in src/seq.c use xas_object generically
* Implement xas_object_call_tableXANTRONIX Development2022-03-171-9/+11
| | | | | | | | | | | | Changes: * Implement xas_object_call_table as a static structure to allow creating a static dispatch table on a per-compilation-unit basis * Refactor xas_object to provide a single pointer to a xas_object_call_table * Refactor all object implementations to use xas_object_call_table
* Add set_flags dispatch to src/bank.cXANTRONIX Development2022-03-161-0/+1
|
* Add index argument to bank entry change eventsXANTRONIX Development2022-03-161-0/+5
|
* Add index argument to xas_object_start(), stop()XANTRONIX Development2022-03-161-2/+17
| | | | | | | | | | | Changes: * Refactor all start, stop dispatch methods to accept an index argument, whether it is used or not * Use 'index' slot of xas_seq_event to store index to pass to xas_object_start(), xas_object_stop() for start and stop events
* Fix unused argument warningXANTRONIX Development2022-03-161-1/+1
|
* Use xas_object_init() for new banksXANTRONIX Development2022-03-161-0/+2
|
* Rename 'count' argument to 'entry_size'XANTRONIX Development2022-03-141-5/+5
|
* Additional nomenclature rectitudeXANTRONIX Development2022-03-141-3/+3
|
* Remove unnecessary argument from callbacksXANTRONIX Development2022-03-141-3/+2
|
* Make xas_bank_player_start() always start from 0XANTRONIX Development2022-03-131-4/+0
|
* Fix incorrect xas_bank_entry_duration()XANTRONIX Development2022-03-071-3/+7
|
* Don't reset player entry to 0 on stopXANTRONIX Development2022-03-071-1/+0
|
* xas_bank_entry_duration(): use struct timevalXANTRONIX Development2022-03-071-2/+6
|
* Implement xas_bank_entry_duration()XANTRONIX Development2022-03-071-0/+6
| | | | | Implement xas_bank_entry_duration() to return the number of PCM samples in a sample bank entry
* Implement entry_by_index() in src/bank.cXANTRONIX Development2022-03-071-3/+10
| | | | | Implement entry_by_index() in src/bank.c to provide a single means of obtaining a pointer to a xas_bank_entry object
* Implement xas_bank_player_set_flags()XANTRONIX Development2022-03-061-1/+12
| | | | | Implement xas_bank_player_set_flags() to allow setting certain playback flags, such as, XAS_BANK_PLAYER_LOOP
* Always return 0 from xas_bank_player_stop()XANTRONIX Development2022-03-061-1/+1
|
* Don't set gain to 0 on stopping sample bank playerXANTRONIX Development2022-03-061-1/+0
|
* Destroy managed spatial scene objectsXANTRONIX Development2022-03-011-0/+1
|
* Set stream_new callback for audible object typesXANTRONIX Development2022-02-281-3/+4
|
* Ensure default bank player gain is 1.0XANTRONIX Development2022-02-281-1/+1
|
* Allow setting bank player gain separatelyXANTRONIX Development2022-02-281-6/+23
|
* Implement xas_objectXANTRONIX Development2022-02-271-5/+13
| | | | | | | | | | | | | | | Changes: * Implement xas_object as a base "class" for all playback state objects; allow implementation of start() and stop() methods to control playback * Move code for setting gain, bank slot to a new method, xas_bank_player_select() * Remove code from xas_bank_player_start() setting gain, bank slot * Add xas_object header to each monaural playable object
* Implement xas_bank_load_file()XANTRONIX Development2022-02-231-0/+32
| | | | | Implement xas_bank_load_file() to load a sample from a RIFF file on disk into a sample bank
* Avoid xas_bank_record() infinite loopXANTRONIX Development2022-02-231-0/+2
|
* Ensure xas_bank_record() uses same audio formatXANTRONIX Development2022-02-231-0/+7
|
* Implement xas_bank_player typeXANTRONIX Development2022-02-231-37/+74
| | | | | | | | | | Changes: * Implement xas_bank_player type to decouple player state from sample storage, to allow multiple concurrent players against a single sample bank * Refactor examples/say.c to use xas_bank_player
* Implement xas_audio_format typeXANTRONIX Development2022-02-091-24/+20
| | | | | | | | | | | Changes: * Implement xas_audio_format struct to provide sample size, channels, and sample rate * Refactor argument order for most functions to allow a reasonable reading of argument types, when replacing three separate size_t arguments with one xas_audio_format object
* don't forget to adjust gain on sample playbackXANTRONIX Development2022-02-031-5/+9
|
* i'm a dingus cat :333XANTRONIX Development2022-02-031-1/+3
|
* holy shit idk what just happened but it worksXANTRONIX Development2022-02-031-28/+65
|
* Implement xas_bank_active()XANTRONIX Development2022-02-031-0/+4
| | | | | Implement xas_bank_active() to allow one to determine if a sample bank is currently active
* that can fit on a single lineXANTRONIX Development2022-02-031-2/+1
|
* Shorten he name of XAS_AUDIO_ constantsXANTRONIX Development2022-02-031-1/+1
|
* Initial implementation of src/bank.cXANTRONIX Development2022-02-021-0/+109
Initial implementation of src/bank.c to act as a sample bank