Fixed the racing in the resampler of webrtc when two streams are calling OnData().

There can be multiple streams calling OnData() when the users setup multiple getUserMedia with WebAudio and microphone. We have no way to avoid this situation since it is a valid user cases from the JS perspective.
But unfortunately webrtc does not support it since it has one global transmit mixer, and it will crash when more than 1 stream getting into its resampler.

This CL introduces a lock to sequence the calls to avoid the racing, which should fix the crash.


BUG=332126
TEST=https://devpool-13.talkgadget.google.com/hangouts, go to setting page and play the rington, verify no crash and sound good.
Or go to https://x20web.corp.google.com/~xians/multiple_sources.html, start the call, AddWebAUdio, then Playout a clip, verify the audio sounds good and no crash.

Review URL: https://codereview.chromium.org/131213003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243902 0039d316-1c4b-4281-b951-d872f2087c98
[Ozone] Update gfx::SurfaceFactoryOzone interface in content_unittests

Missed updating the MockSurfaceFactoryOzone implementation in content_unittests
when I modified the GetVSyncProvider function.

TBR=piman@chromium.org
NOTRY=true

BUG=

Review URL: https://codereview.chromium.org/131893002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243903 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 243903