cocos2d/cocos2d-x — pull request #3010 by sergey-shambir (2013-06-26 09:02:15+00:00)
Title: Pitch 7platforms

* Implemented pitch, pan and gain for 7 platforms: iOS, OSX, android (both backends), linux (both backends), tizen, blackberry, nacl. Last 4 platforms now have unified OpenAL engine.
* No support for windows, emscrippten, marmalade, no pitch effect on android+OpenSL since bug in OpenSL at android >= 4.0 requires some redesign: http://code.google.com/p/android/issues/detail?id=24592
* OpenAL engine on Linux now have optional mp3 support, with OPENAL_MP3=1 make option.
* Reorganized CocosDenshionTest, added sliders for pitch/pan/gain.

Should work on NaCL and Blackberry, but I didn't tested. Tested on android, linux, tizen emulator; implementations for iOS/OSX are trivial and used in our cocos2d-x tweak, but I didn't tested TestCpp separately.

About unsupported features:
* I'm going to add pitch support for Android+OpenES soon, maybe on near weekend
* On emscrippten pitch cannot be implemented using SDL, but emscrippten now supports OpenAL so we can use unified openal engine on this platform too. But this feature needs extensive testing, since OpenAL on emscrippten have own javascript backend and I don't know which audio codecs are supported by javascript-based alut.
* On windows, there are some work in another pull requests that can help to impelemnt pitch/pan/gain, so we just need wait while this work will be finished.
* On marmalade stereo effects and pitch are hurd to implement, but maybe marmalade stuff can do it.