summaryrefslogtreecommitdiffstats
path: root/ppapi/proxy/ppb_core_proxy.cc
diff options
context:
space:
mode:
authorcrogers@google.com <crogers@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-12 04:37:02 +0000
committercrogers@google.com <crogers@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-09-12 04:37:02 +0000
commite2e8e32ea2d109d2f654b3b72caaffabb2743bf2 (patch)
treee871d99532e874e7dbdc53dde8dbdba9853c497c /ppapi/proxy/ppb_core_proxy.cc
parent9290738eb73e230c1f0fa958e585dde6718b42aa (diff)
downloadchromium_src-e2e8e32ea2d109d2f654b3b72caaffabb2743bf2.zip
chromium_src-e2e8e32ea2d109d2f654b3b72caaffabb2743bf2.tar.gz
chromium_src-e2e8e32ea2d109d2f654b3b72caaffabb2743bf2.tar.bz2
Allow audio system to handle synchronized low-latency audio I/O
As an important part of WebAudio/WebRTC integration, we need to be able to process and analyse live audio. This change adds the ability to our audio system for handling synchronized audio input and output in the same callback (same thread) which is important for good performance and low-latency. As a part of this change, the audio IPC system now takes an optional |input_channels| argument in the CreateStream() message and associated browser-side code in AudioRendererHost::OnCreateStream(), etc. |input_channels| will be 0 during normal operation of audio output (and no input). But when synchronized audio I/O is needed, then a non-zero value can be passed in here. The |params| passed in represents both the input and output format, particularly the frames_per_buffer() and sample_rate(). AudioRendererSink now has an new InitializeIO() method which will allow the use of synchronized I/O with the |input_channels| argument. AudioRendererSink::RenderCallback now has a new RenderIO() which will be called instead of Render() in the case where a non-zero value is passed in for |input_channels|. BUG=none TEST=none (manual testing on early Mac OS X and Windows audio back-ends) Review URL: https://chromiumcodereview.appspot.com/10830268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156234 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/proxy/ppb_core_proxy.cc')
0 files changed, 0 insertions, 0 deletions