Title: [229479] trunk/Source/WebCore
- Revision
- 229479
- Author
- [email protected]
- Date
- 2018-03-09 13:14:58 -0800 (Fri, 09 Mar 2018)
Log Message
Cannot change audio input source device
https://bugs.webkit.org/show_bug.cgi?id=175975
<rdar://problem/34073589>
Reviewed by Eric Carlson.
Covered by manually testing https://webrtc.github.io/samples/src/content/devices/input-output/ with a USB web cam.
* platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioSharedUnit::setCaptureDeviceID):
(WebCore::CoreAudioCaptureSource::CoreAudioCaptureSource):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (229478 => 229479)
--- trunk/Source/WebCore/ChangeLog 2018-03-09 21:04:03 UTC (rev 229478)
+++ trunk/Source/WebCore/ChangeLog 2018-03-09 21:14:58 UTC (rev 229479)
@@ -1,3 +1,17 @@
+2018-03-09 Youenn Fablet <[email protected]>
+
+ Cannot change audio input source device
+ https://bugs.webkit.org/show_bug.cgi?id=175975
+ <rdar://problem/34073589>
+
+ Reviewed by Eric Carlson.
+
+ Covered by manually testing https://webrtc.github.io/samples/src/content/devices/input-output/ with a USB web cam.
+
+ * platform/mediastream/mac/CoreAudioCaptureSource.cpp:
+ (WebCore::CoreAudioSharedUnit::setCaptureDeviceID):
+ (WebCore::CoreAudioCaptureSource::CoreAudioCaptureSource):
+
2018-03-09 Jer Noble <[email protected]>
Add new CSS env constants for use with fullscreen
Modified: trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp (229478 => 229479)
--- trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp 2018-03-09 21:04:03 UTC (rev 229478)
+++ trunk/Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.cpp 2018-03-09 21:14:58 UTC (rev 229479)
@@ -102,6 +102,8 @@
bool hasAudioUnit() const { return m_ioUnit; }
+ void setCaptureDeviceID(uint32_t);
+
private:
OSStatus configureSpeakerProc();
OSStatus configureMicrophoneProc();
@@ -195,6 +197,19 @@
});
}
+void CoreAudioSharedUnit::setCaptureDeviceID(uint32_t captureDeviceID)
+{
+#if PLATFORM(MAC)
+ if (m_captureDeviceID == captureDeviceID)
+ return;
+
+ m_captureDeviceID = captureDeviceID;
+ reconfigureAudioUnit();
+#else
+ UNUSED_PARAM(captureDeviceID);
+#endif
+}
+
void CoreAudioSharedUnit::addEchoCancellationSource(AudioSampleDataSource& source)
{
if (!source.setOutputFormat(m_speakerProcFormat)) {
@@ -762,6 +777,7 @@
, m_captureDeviceID(persistentID)
{
auto& unit = CoreAudioSharedUnit::singleton();
+ unit.setCaptureDeviceID(m_captureDeviceID);
initializeEchoCancellation(unit.enableEchoCancellation());
initializeSampleRate(unit.sampleRate());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes