Fri, 21 Oct 2011 17:14:19 -0700 |
Eric Wing |
Workaround for terrible iOS 5.0 regression bug in Apple's OpenAL implementation with regards to resetting streaming sources. The fix uses a version check to determine if the workaround is employed. Once Apple fixes the problem, an upper bounds version check should be added.
|
Fri, 30 Sep 2011 17:48:23 -0700 |
Eric Wing |
Fixed bug with seeking channels with predecoded samples. The OpenAL 1.1 spec specifies that a playing source should automatically jump when already playing. The code was unnecessarily recalling alPlaySource again which is not necessarily the correct thing to do. I think the previous code is another remnant of the Open 1.0 era. Also fixed bugs in the return codes for seek and rewind. For single channels, the return code was 0 channels processed in ALmixer which resulted in returning false to Lua. The implementation now should return 1/true for single channels, but 0/false for no channels. Errors will return -1/false.
|
Fri, 30 Sep 2011 16:44:08 -0700 |
Eric Wing |
Workaround: There is a terrible OpenAL regression bug in iOS 5 dealing with streaming sources. alSourcei(source_id, AL_BUFFER, AL_NONE); fails to clear queued buffer queues on a streaming source. The workaround involves manually dequeuing the individual buffers before calling alSourcei(source_id, AL_BUFFER, AL_NONE);. But there is an additional race condition bug where the unqueue fails to take, so the included workaround keeps looping until the buffers finally report as cleared.
|
Thu, 29 Sep 2011 11:33:34 -0700 |
Eric Wing |
Added addition query to get the current number of buffers processed in the new inner buffer decoupling loop because I've been seeing a lot of 59TestingError warnings. I think it is possible the value may become stale after the first iteration of the loop resulting in assumption failures which result in triggering this error.
|
Tue, 13 Sep 2011 18:11:34 -0700 |
Eric Wing |
Added AL_SOURCE_STATE to luaal
|
Tue, 13 Sep 2011 18:11:12 -0700 |
Eric Wing |
merged
|
Tue, 13 Sep 2011 18:03:21 -0700 |
Eric Wing |
Split off background thread (threads only) termination and creation into separate functions from Interruption handling to make it easier to avoid race condition bug with Apple rdar://10081775 w.r.t. setting the OpenAL context. New APIs to suspend and resume update threads. Interruption handling calls these automatically.
|
Tue, 30 Aug 2011 19:43:49 -0700 |
Eric Wing |
merged
|
Tue, 30 Aug 2011 19:42:31 -0700 |
Eric Wing |
Warning: Breaking API/ABI changes. New optimizations to decouple update loop from number of buffers queued in audio streaming to allow more for more and smaller buffers to be processed in a loop. This also has the benefit for access_data callback buffer sizes not to be dictated by the performance tuning.
|
Thu, 23 Jun 2011 17:37:16 -0700 |
Eric Wing |
Added API to check if in interruption.
|
Fri, 19 Aug 2011 12:36:50 -0700 |
Eric Wing |
Resync to get interruption changes.
|
Mon, 23 May 2011 11:33:58 -0700 |
Eric Wing |
fixed memory leak in tErrorLib
|
Thu, 28 Apr 2011 16:22:30 -0700 |
Eric Wing |
Added support files.
|
Mon, 11 Apr 2011 17:19:24 -0700 |
Eric Wing |
Fixed memory leak in Quit due to changes related to background thread removal. FreeData was quick escaping because it checked for ALmixer_Initialized which is now false by the time the code is reached.
|
Thu, 07 Apr 2011 19:19:07 -0700 |
Eric Wing |
Moved two variable declarations to the top to make old C89/90 compilers happy.
|
Wed, 06 Apr 2011 14:54:09 -0700 |
Eric Wing |
Bug fix for starvation problem due to for-loop using uninitialized variable.
|