Commit Graph

1220 Commits

Author SHA1 Message Date
Chris Robinson 3deaa2fad3 Combine stereo and multi-channel templates 2010-12-09 17:14:12 -08:00
Chris Robinson c3cd4c80b2 Use a matrix when rendering to the dry buffer 2010-12-09 16:37:23 -08:00
Chris Robinson be3f3c4bf0 Make better use of the type range when converting from float 2010-12-09 05:06:29 -08:00
Chris Robinson d1ca8b4470 Use simple loops instead of several explicit lines for the mono mixer 2010-12-09 05:05:42 -08:00
Chris Robinson 72e3386c6a Be a bit more generic with the multi-channel mixer loops 2010-12-09 04:41:52 -08:00
Chris Robinson 4010a6b745 Remove some now-unused functions 2010-12-08 02:56:24 -08:00
Chris Robinson 0218957eb5 Use "internal" visibility by default
All functions callable by apps, directly or indirectly (eg, through function
pointers), are marked as "protected", and internal visibility can provide
benefits over hidden when we know functions won't be called by other modules.
2010-12-08 02:32:09 -08:00
Chris Robinson cd65ab7dfa Add an IMA4 encoder 2010-12-05 03:34:19 -08:00
Chris Robinson c4adf541c1 Set the playing flag to TRUE when the dsound buffer starts playing 2010-12-04 20:22:12 -08:00
Chris Robinson 88e3a22772 Separate device format into 'channel config' and 'sample type' components 2010-12-04 19:50:00 -08:00
Chris Robinson 191803ad53 Fix wave and null device calculations when the timer wraps 2010-12-03 23:48:59 -08:00
Chris Robinson 1b7be672fa No need to clamp the app-specified pitch 2010-12-03 23:08:26 -08:00
Chris Robinson 9581325b9c Rename SrcFmt -> UserFmt 2010-12-03 22:33:41 -08:00
Chris Robinson 59990acc2a Add functions to write (signed) byte and ushort samples to devices 2010-12-02 16:36:37 -08:00
Chris Robinson 0bf7716332 Remove incomplete EXT_buffer_sub_data, as it's (temporarily) superceded by SOFT_buffer_sub_data
The EXT version can come back when other implementations take an interest
2010-12-02 01:46:43 -08:00
Chris Robinson 3339e5dc6a Use memcpy to copy a string instead of sprintf 2010-12-02 01:12:49 -08:00
Chris Robinson 30b3f68ddf Make a function static 2010-12-02 01:05:29 -08:00
Chris Robinson 75552f2765 Remove unused macro 2010-12-01 23:21:18 -08:00
Chris Robinson 4a0bf9fd44 Template-ize the device buffer writing functions 2010-12-01 21:50:49 -08:00
Chris Robinson fa28098a83 Some general cleanups 2010-12-01 20:34:29 -08:00
Chris Robinson 646409cbdf Don't limit IMA4 decoding to 2 channels 2010-12-01 18:36:07 -08:00
Chris Robinson 9e8fb89a52 Rename OUTPUTCHANNELS to something more descriptive 2010-12-01 18:33:17 -08:00
Chris Robinson 14441e0e53 Rename some variables 2010-12-01 14:19:57 -08:00
Chris Robinson 7f5814c4d8 Use min/max to clamp the IMA4 sample and index values 2010-12-01 14:07:21 -08:00
Chris Robinson e3afc3587e Fix handling of -32768 in the muLaw encoder 2010-12-01 02:24:39 -08:00
Chris Robinson 8a52c44d15 Don'f fail if realloc returns NULL for 0 sizes 2010-12-01 02:00:41 -08:00
Chris Robinson e6e18732b5 Make sure the muLaw sample encoder is inlined 2010-11-30 18:06:54 -08:00
Chris Robinson 3f8ae8f1ce Fix IMA4 decoding 2010-11-30 16:54:30 -08:00
Chris Robinson a79129835c Fix some comments and line spacing 2010-11-30 13:04:48 -08:00
Chris Robinson 6fcaecdc9f Fix int-to-double conversion 2010-11-30 12:26:37 -08:00
Chris Robinson 8dc8090888 Make muLaw decoding work similar to encoding 2010-11-30 01:26:43 -08:00
Chris Robinson 4db2f1ec7d Implement a muLaw encoder 2010-11-30 01:20:40 -08:00
Chris Robinson 06fa030260 Rename the IMA4 block decoder function 2010-11-30 01:00:37 -08:00
Chris Robinson 018f9fc278 Handle all channel configurations for double 2010-11-30 00:32:13 -08:00
Chris Robinson c0f6d46cd8 Allow LoadData to handle IMA4 data 2010-11-30 00:28:02 -08:00
Chris Robinson 8e43b1fe04 Let the storable format enum values share the input format enum values where they overlap 2010-11-29 23:57:07 -08:00
Chris Robinson 04df919a1c Clean up muLaw format loading a bit 2010-11-29 23:46:49 -08:00
Chris Robinson f82e628f08 Allow converting IMA4 to types other than short 2010-11-29 22:55:46 -08:00
Chris Robinson 07a7c03adb Check for a couple missing input formats and remove an unneeded default case 2010-11-29 22:07:07 -08:00
Chris Robinson e800f8c0a7 Let DecomposeInputType verify the format passed to alBufferSubDataSOFT 2010-11-29 22:01:54 -08:00
Chris Robinson d02dbef9d2 Pass the input channel config and sample type to LoadData 2010-11-29 21:55:47 -08:00
Chris Robinson 55262bc6e9 Make the decompose functions return false when given an unhandled format 2010-11-29 20:34:33 -08:00
Chris Robinson 51ed22afb9 Combine two switch blocks 2010-11-29 20:17:15 -08:00
Chris Robinson 0cf32e2946 Reorder some parameters for consistency 2010-11-29 19:48:18 -08:00
Chris Robinson 693ab4d8bc Fix source offset calculations 2010-11-29 19:36:33 -08:00
Chris Robinson e4869b447c Store the decomposed source format in the buffer 2010-11-29 19:27:33 -08:00
Chris Robinson 547f356131 Keep a handle on the buffer with the format when queueing new buffers 2010-11-29 17:35:22 -08:00
Chris Robinson 017ab1b3fd Add IMA4 as a source data type 2010-11-29 17:14:22 -08:00
Chris Robinson 07ef566de1 Add support for (unsigned) int input formats 2010-11-29 17:00:22 -08:00
Chris Robinson 3c8a29a179 Reorder and rename parameters for the format decomposition functions 2010-11-29 15:19:39 -08:00