# Too slow to run with TSan on Windows.
ApmTest.EchoCancellationReportsCorrectDelays
ApmTest.IdenticalInputChannelsResultInIdenticalOutputChannels
CommonFormats/AudioProcessingTest*
RingBufferTest.RandomStressTest
RingBufferTest.RandomStressTestWithNullPtr
VideoProcessingModuleTest.ContentAnalysis
VideoProcessingModuleTest.Deflickering
VideoProcessingModuleTest.Denoising
TestVideoSenderWithVp8.*

# https://code.google.com/p/webrtc/issues/detail?id=1938
MouseCursorShapeTest.MatchCursors

# https://code.google.com/p/webrtc/issues/detail?id=2329
NetEqDecodingTest.TestBitExactness
NetEqDecodingTest.TestNetworkStatistics
