summaryrefslogtreecommitdiffstats
path: root/media/libcubeb/disable-iaudioclient3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'media/libcubeb/disable-iaudioclient3.patch')
-rw-r--r--media/libcubeb/disable-iaudioclient3.patch64
1 files changed, 64 insertions, 0 deletions
diff --git a/media/libcubeb/disable-iaudioclient3.patch b/media/libcubeb/disable-iaudioclient3.patch
new file mode 100644
index 000000000..658806b26
--- /dev/null
+++ b/media/libcubeb/disable-iaudioclient3.patch
@@ -0,0 +1,64 @@
+diff --git a/media/libcubeb/src/cubeb_wasapi.cpp b/media/libcubeb/src/cubeb_wasapi.cpp
+--- a/media/libcubeb/src/cubeb_wasapi.cpp
++++ b/media/libcubeb/src/cubeb_wasapi.cpp
+@@ -1916,24 +1916,24 @@ int setup_wasapi_stream_one_side(cubeb_s
+ LOG("Could not get default %s endpoint, error: %lx\n", DIRECTION_NAME, hr);
+ }
+ return CUBEB_ERROR;
+ }
+ }
+
+ /* Get a client. We will get all other interfaces we need from
+ * this pointer. */
+- hr = device->Activate(__uuidof(IAudioClient3),
+- CLSCTX_INPROC_SERVER,
+- NULL, audio_client.receive_vpp());
+- if (hr == E_NOINTERFACE) {
++ // hr = device->Activate(__uuidof(IAudioClient3),
++ // CLSCTX_INPROC_SERVER,
++ // NULL, audio_client.receive_vpp());
++ // if (hr == E_NOINTERFACE) {
+ hr = device->Activate(__uuidof(IAudioClient),
+ CLSCTX_INPROC_SERVER,
+ NULL, audio_client.receive_vpp());
+- }
++ //}
+
+ if (FAILED(hr)) {
+ LOG("Could not activate the device to get an audio"
+ " client for %s: error: %lx\n", DIRECTION_NAME, hr);
+ // A particular device can't be activated because it has been
+ // unplugged, try fall back to the default audio device.
+ if (devid && hr == AUDCLNT_E_DEVICE_INVALIDATED) {
+ LOG("Trying again with the default %s audio device.", DIRECTION_NAME);
+@@ -1989,26 +1989,26 @@ int setup_wasapi_stream_one_side(cubeb_s
+ // Check if a loopback device should be requested. Note that event callbacks
+ // do not work with loopback devices, so only request these if not looping.
+ if (is_loopback) {
+ flags |= AUDCLNT_STREAMFLAGS_LOOPBACK;
+ } else {
+ flags |= AUDCLNT_STREAMFLAGS_EVENTCALLBACK;
+ }
+
+- if (initialize_iaudioclient3(audio_client, stm, mix_format, flags, direction)) {
+- LOG("Initialized with IAudioClient3");
+- } else {
++ // if (initialize_iaudioclient3(audio_client, stm, mix_format, flags, direction)) {
++ // LOG("Initialized with IAudioClient3");
++ // } else {
+ hr = audio_client->Initialize(AUDCLNT_SHAREMODE_SHARED,
+ flags,
+ frames_to_hns(stm, stm->latency),
+ 0,
+ mix_format.get(),
+ NULL);
+- }
++ // }
+ if (FAILED(hr)) {
+ LOG("Unable to initialize audio client for %s: %lx.", DIRECTION_NAME, hr);
+ return CUBEB_ERROR;
+ }
+
+ hr = audio_client->GetBufferSize(buffer_frame_count);
+ if (FAILED(hr)) {
+ LOG("Could not get the buffer size from the client"