Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(795)

Side by Side Diff: content/renderer/renderer_blink_platform_impl.cc

Issue 1599533003: MediaCaptureFromElement: add support for audio captureStream(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/renderer_blink_platform_impl.h" 5 #include "content/renderer/renderer_blink_platform_impl.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 #include "content/renderer/device_sensors/device_light_event_pump.h" 54 #include "content/renderer/device_sensors/device_light_event_pump.h"
55 #include "content/renderer/device_sensors/device_motion_event_pump.h" 55 #include "content/renderer/device_sensors/device_motion_event_pump.h"
56 #include "content/renderer/device_sensors/device_orientation_absolute_event_pump .h" 56 #include "content/renderer/device_sensors/device_orientation_absolute_event_pump .h"
57 #include "content/renderer/device_sensors/device_orientation_event_pump.h" 57 #include "content/renderer/device_sensors/device_orientation_event_pump.h"
58 #include "content/renderer/dom_storage/local_storage_cached_areas.h" 58 #include "content/renderer/dom_storage/local_storage_cached_areas.h"
59 #include "content/renderer/dom_storage/local_storage_namespace.h" 59 #include "content/renderer/dom_storage/local_storage_namespace.h"
60 #include "content/renderer/dom_storage/webstoragenamespace_impl.h" 60 #include "content/renderer/dom_storage/webstoragenamespace_impl.h"
61 #include "content/renderer/gamepad_shared_memory_reader.h" 61 #include "content/renderer/gamepad_shared_memory_reader.h"
62 #include "content/renderer/media/audio_decoder.h" 62 #include "content/renderer/media/audio_decoder.h"
63 #include "content/renderer/media/canvas_capture_handler.h" 63 #include "content/renderer/media/canvas_capture_handler.h"
64 #include "content/renderer/media/html_audio_element_capturer_source.h"
64 #include "content/renderer/media/html_video_element_capturer_source.h" 65 #include "content/renderer/media/html_video_element_capturer_source.h"
65 #include "content/renderer/media/image_capture_frame_grabber.h" 66 #include "content/renderer/media/image_capture_frame_grabber.h"
66 #include "content/renderer/media/media_recorder_handler.h" 67 #include "content/renderer/media/media_recorder_handler.h"
67 #include "content/renderer/media/renderer_webaudiodevice_impl.h" 68 #include "content/renderer/media/renderer_webaudiodevice_impl.h"
68 #include "content/renderer/media/renderer_webmidiaccessor_impl.h" 69 #include "content/renderer/media/renderer_webmidiaccessor_impl.h"
69 #include "content/renderer/media/rtc_certificate_generator.h" 70 #include "content/renderer/media/rtc_certificate_generator.h"
70 #include "content/renderer/mojo/blink_service_registry_impl.h" 71 #include "content/renderer/mojo/blink_service_registry_impl.h"
71 #include "content/renderer/render_thread_impl.h" 72 #include "content/renderer/render_thread_impl.h"
72 #include "content/renderer/renderer_clipboard_delegate.h" 73 #include "content/renderer/renderer_clipboard_delegate.h"
73 #include "content/renderer/screen_orientation/screen_orientation_observer.h" 74 #include "content/renderer/screen_orientation/screen_orientation_observer.h"
(...skipping 894 matching lines...) Expand 10 before | Expand all | Expand 10 after
968 AddVideoTrackToMediaStream( 969 AddVideoTrackToMediaStream(
969 HtmlVideoElementCapturerSource::CreateFromWebMediaPlayerImpl( 970 HtmlVideoElementCapturerSource::CreateFromWebMediaPlayerImpl(
970 web_media_player, 971 web_media_player,
971 content::RenderThread::Get()->GetIOMessageLoopProxy()), 972 content::RenderThread::Get()->GetIOMessageLoopProxy()),
972 false, // is_remote 973 false, // is_remote
973 false, // is_readonly 974 false, // is_readonly
974 web_media_stream); 975 web_media_stream);
975 #endif 976 #endif
976 } 977 }
977 978
979 void RendererBlinkPlatformImpl::createHTMLAudioElementCapturer(
980 WebMediaStream* web_media_stream,
981 WebMediaPlayer* web_media_player) {
982 #if defined(ENABLE_WEBRTC)
miu 2016/05/13 23:40:35 Consider omitting the "#if defined(ENABLE_WEBRTC)"
mcasas 2016/05/14 02:23:47 It should be like that indeed, but by extension (a
miu 2016/05/17 21:00:41 This may have been true in the past, but not anymo
mcasas 2016/05/18 00:00:10 Acknowledged.
983 DCHECK(web_media_stream);
984 DCHECK(web_media_player);
985 // These are the MediaStream parameters, hardcoded and pervasive
986 // TODO(mcasas): fetch them from some place and/or ignore these.
987 const int kInputNumChannels = 1;
miu 2016/05/13 23:40:35 Actually, this is the *output* format (from Extern
mcasas 2016/05/14 02:23:47 Yeah, |output| from the Source but |input| from th
miu 2016/05/17 21:00:41 Oh! I don't know why I didn't notice this before:
mcasas 2016/05/18 00:00:10 Brilliant! SO -oh- Done!
988 const int kInputSamplingRate = 48000;
989 const int kBufferDurationMs = 10;
990
991 AddAudioTrackToMediaStream(
miu 2016/05/13 23:40:35 Nice! :)
mcasas 2016/05/14 02:23:47 Acknowledged.
992 HtmlAudioElementCapturerSource::CreateFromWebMediaPlayerImpl(
993 web_media_player),
994 kInputSamplingRate, media::GuessChannelLayout(kInputNumChannels),
995 kBufferDurationMs * kInputSamplingRate /
996 base::Time::kMillisecondsPerSecond,
997 false /* is_remote */, false /* is_readonly */, web_media_stream);
998 #endif
999 }
1000
978 //------------------------------------------------------------------------------ 1001 //------------------------------------------------------------------------------
979 1002
980 WebImageCaptureFrameGrabber* 1003 WebImageCaptureFrameGrabber*
981 RendererBlinkPlatformImpl::createImageCaptureFrameGrabber() { 1004 RendererBlinkPlatformImpl::createImageCaptureFrameGrabber() {
982 #if defined(ENABLE_WEBRTC) 1005 #if defined(ENABLE_WEBRTC)
983 return new ImageCaptureFrameGrabber(); 1006 return new ImageCaptureFrameGrabber();
984 #else 1007 #else
985 return nullptr; 1008 return nullptr;
986 #endif // defined(ENABLE_WEBRTC) 1009 #endif // defined(ENABLE_WEBRTC)
987 } 1010 }
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after
1330 return &trial_token_validator_; 1353 return &trial_token_validator_;
1331 } 1354 }
1332 1355
1333 void RendererBlinkPlatformImpl::workerContextCreated( 1356 void RendererBlinkPlatformImpl::workerContextCreated(
1334 const v8::Local<v8::Context>& worker) { 1357 const v8::Local<v8::Context>& worker) {
1335 GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread( 1358 GetContentClient()->renderer()->DidInitializeWorkerContextOnWorkerThread(
1336 worker); 1359 worker);
1337 } 1360 }
1338 1361
1339 } // namespace content 1362 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698