August 23rd, 2019: Source code released to the world!
alTrace is a debugging tool for applications that use OpenAL for audio. It provides a proxy OpenAL implementation that logs all interactions with the API to a file before passing on the work to a real OpenAL implementation. From there, tools are provided to play back the call stream later, letting one run a reproducable set of API calls without the original application's involvement, and visualize those API calls in various ways.
Developers simply load a different shared library (by linking to it, or forcing it with LD_PRELOAD or whatnot) and use OpenAL as usual. A tracefile will be written out that can then be used without the original application.
This tracefile can be used to display a list of commands and state changes, or run the commands back, possibly on a different OpenAL implementation. All information is stored in the tracefile and doesn't need OpenAL at all to reproduce any information later. Now the developer can debug audio problems remotely, at their leisure and with a deep view into all the exact details.
alTrace provides both command line tools for dumping information and replaying a tracefile, and a GUI application for better clarity on the state of the AL from API call to API call.
What doesn't work:
hg clone https://hg.icculus.org/icculus/altrace/
Page maintained by Ryan C. Gordon.