Although input streams can recognize if they are muted by the system mixer, this information is not propagated to MediaStreamTrack.
Adding jianwu@ to be notified when this starts landing.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5b2232658c703564b42eb768cb97c36e385cb7d1 commit 5b2232658c703564b42eb768cb97c36e385cb7d1 Author: ossu <ossu@chromium.org> Date: Wed Jun 21 12:57:38 2017 Detect AudioInputStream muting and propagate to MediaStreamAudioSource. Also adds a check in WebKit's MediaStreamTrack for if the source's state is not initially Live. BUG= chromium:729002 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2919793002 Cr-Commit-Position: refs/heads/master@{#481184} [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/browser/renderer_host/media/audio_input_renderer_host.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/browser/renderer_host/media/audio_input_renderer_host.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/browser/speech/speech_recognizer_impl.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/common/media/audio_messages.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/audio_input_message_filter.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/audio_input_message_filter.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/external_media_stream_audio_source.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/external_media_stream_audio_source.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/local_media_stream_audio_source.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/local_media_stream_audio_source.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/media_stream_audio_source.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/media_stream_audio_source.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/media_stream_source.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/webrtc/processed_local_audio_source.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/media/webrtc/processed_local_audio_source.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/pepper/pepper_platform_audio_input.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/content/renderer/pepper/pepper_platform_audio_input.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_controller.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_controller.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_controller_unittest.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_device.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_device.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_device_unittest.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/audio_input_ipc.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/fake_audio_input_stream.cc [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/audio/fake_audio_input_stream.h [modify] https://crrev.com/5b2232658c703564b42eb768cb97c36e385cb7d1/media/base/audio_capturer_source.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fdd19a3a59659ea485633fe69005ca2b8c4d7ea5 commit fdd19a3a59659ea485633fe69005ca2b8c4d7ea5 Author: ossu <ossu@chromium.org> Date: Thu Jun 22 09:35:39 2017 Add a variadic version of ParamTraits, to allow for >5 IPC parameters. I needed to add one more parameter to AudioInputMsg_NotifyStreamCreated and ran into this limit. BUG= chromium:729002 Review-Url: https://codereview.chromium.org/2938613002 Cr-Commit-Position: refs/heads/master@{#481491} [modify] https://crrev.com/fdd19a3a59659ea485633fe69005ca2b8c4d7ea5/ipc/ipc_message_utils.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d998fd8a158eab8a17162049277c1f37aab1cf42 commit d998fd8a158eab8a17162049277c1f37aab1cf42 Author: ossu <ossu@chromium.org> Date: Tue Jun 27 13:02:17 2017 Propagate muted state from MediaStreamAudioSource into JS. BUG= chromium:729002 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2922733002 Cr-Commit-Position: refs/heads/master@{#482609} [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/content/browser/webrtc/webrtc_getusermedia_browsertest.cc [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/content/renderer/media/media_stream_audio_source.cc [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/content/renderer/media/media_stream_source.cc [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/content/test/data/media/getusermedia.html [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/content/test/data/media/webrtc_test_utilities.js [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/third_party/WebKit/LayoutTests/fast/mediastream/MediaStreamTrack-expected.txt [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/third_party/WebKit/LayoutTests/fast/mediastream/MediaStreamTrack.html [modify] https://crrev.com/d998fd8a158eab8a17162049277c1f37aab1cf42/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp
I should probably mark this one as fixed. There might be some follow-ups but the functionality is now there.
Comment 1 by ossu@chromium.org
, Jun 13 2017