Actually, if initializing failed at all, it would never properly
uninitialize because the 'initialized' variable was never set until the
very end. Instead, set the "initialized" flag from the beginning to
ensure initialization.
- Add CoreAudio device input capture for mac audio capturing. The code
should cover just about everything for capturing mac input device
audio. Because of the way mac audio is designed, users may have no
choice but to obtain the open source soundflower software to capture
their mac's desktop audio. It may be necessary for us to distribute
it with the program as well.
- Hide event backend
- Use win32 events for windows
- Allow timed waits for events
- Fix a few warnings