Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
d8ae98d4
Commit
d8ae98d4
authored
Oct 01, 2020
by
Andrew Eikum
Committed by
Alexandre Julliard
Oct 02, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mmdevapi: Implement SetClientProperties.
Signed-off-by:
Andrew Eikum
<
aeikum@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
530c79fb
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
105 additions
and
10 deletions
+105
-10
render.c
dlls/mmdevapi/tests/render.c
+25
-0
mmdevdrv.c
dlls/winealsa.drv/mmdevdrv.c
+16
-2
mmdevdrv.c
dlls/wineandroid.drv/mmdevdrv.c
+16
-2
mmdevdrv.c
dlls/winecoreaudio.drv/mmdevdrv.c
+16
-2
mmdevdrv.c
dlls/wineoss.drv/mmdevdrv.c
+16
-2
mmdevdrv.c
dlls/winepulse.drv/mmdevdrv.c
+16
-2
No files found.
dlls/mmdevapi/tests/render.c
View file @
d8ae98d4
...
...
@@ -141,6 +141,7 @@ static void test_audioclient(void)
REFERENCE_TIME
t1
,
t2
;
HANDLE
handle
;
BOOL
offload_capable
;
AudioClientProperties
client_props
;
hr
=
IMMDevice_Activate
(
dev
,
&
IID_IAudioClient2
,
CLSCTX_INPROC_SERVER
,
NULL
,
(
void
**
)
&
ac2
);
...
...
@@ -260,6 +261,30 @@ static void test_audioclient(void)
hr
=
IAudioClient2_IsOffloadCapable
(
ac2
,
AudioCategory_BackgroundCapableMedia
,
&
offload_capable
);
ok
(
hr
==
S_OK
,
"IsOffloadCapable failed: %08x
\n
"
,
hr
);
hr
=
IAudioClient2_SetClientProperties
(
ac2
,
NULL
);
ok
(
hr
==
E_POINTER
,
"SetClientProperties with NULL props gave wrong error: %08x
\n
"
,
hr
);
client_props
.
cbSize
=
0
;
client_props
.
bIsOffload
=
FALSE
;
client_props
.
eCategory
=
AudioCategory_BackgroundCapableMedia
;
client_props
.
Options
=
0
;
hr
=
IAudioClient2_SetClientProperties
(
ac2
,
&
client_props
);
ok
(
hr
==
E_INVALIDARG
,
"SetClientProperties with invalid cbSize gave wrong error: %08x
\n
"
,
hr
);
client_props
.
cbSize
=
sizeof
(
client_props
);
client_props
.
bIsOffload
=
TRUE
;
hr
=
IAudioClient2_SetClientProperties
(
ac2
,
&
client_props
);
if
(
!
offload_capable
)
ok
(
hr
==
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
,
"SetClientProperties(offload) gave wrong error: %08x
\n
"
,
hr
);
else
ok
(
hr
==
S_OK
,
"SetClientProperties(offload) failed: %08x
\n
"
,
hr
);
client_props
.
bIsOffload
=
FALSE
;
hr
=
IAudioClient2_SetClientProperties
(
ac2
,
&
client_props
);
ok
(
hr
==
S_OK
,
"SetClientProperties failed: %08x
\n
"
,
hr
);
IAudioClient2_Release
(
ac2
);
test_uninitialized
(
ac
);
...
...
dlls/winealsa.drv/mmdevdrv.c
View file @
d8ae98d4
...
...
@@ -2676,9 +2676,23 @@ static HRESULT WINAPI AudioClient_SetClientProperties(IAudioClient2 *iface,
{
ACImpl
*
This
=
impl_from_IAudioClient2
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
return
E_NOTIMPL
;
if
(
!
prop
)
return
E_POINTER
;
if
(
prop
->
cbSize
!=
sizeof
(
*
prop
))
return
E_INVALIDARG
;
TRACE
(
"{ bIsOffload: %u, eCategory: 0x%x, Options: 0x%x }
\n
"
,
prop
->
bIsOffload
,
prop
->
eCategory
,
prop
->
Options
);
if
(
prop
->
bIsOffload
)
return
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
;
return
S_OK
;
}
static
HRESULT
WINAPI
AudioClient_GetBufferSizeLimits
(
IAudioClient2
*
iface
,
...
...
dlls/wineandroid.drv/mmdevdrv.c
View file @
d8ae98d4
...
...
@@ -1635,9 +1635,23 @@ static HRESULT WINAPI AudioClient_SetClientProperties(IAudioClient2 *iface,
{
ACImpl
*
This
=
impl_from_IAudioClient2
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
return
E_NOTIMPL
;
if
(
!
prop
)
return
E_POINTER
;
if
(
prop
->
cbSize
!=
sizeof
(
*
prop
))
return
E_INVALIDARG
;
TRACE
(
"{ bIsOffload: %u, eCategory: 0x%x, Options: 0x%x }
\n
"
,
prop
->
bIsOffload
,
prop
->
eCategory
,
prop
->
Options
);
if
(
prop
->
bIsOffload
)
return
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
;
return
S_OK
;
}
static
HRESULT
WINAPI
AudioClient_GetBufferSizeLimits
(
IAudioClient2
*
iface
,
...
...
dlls/winecoreaudio.drv/mmdevdrv.c
View file @
d8ae98d4
...
...
@@ -2243,9 +2243,23 @@ static HRESULT WINAPI AudioClient_SetClientProperties(IAudioClient2 *iface,
{
ACImpl
*
This
=
impl_from_IAudioClient2
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
return
E_NOTIMPL
;
if
(
!
prop
)
return
E_POINTER
;
if
(
prop
->
cbSize
!=
sizeof
(
*
prop
))
return
E_INVALIDARG
;
TRACE
(
"{ bIsOffload: %u, eCategory: 0x%x, Options: 0x%x }
\n
"
,
prop
->
bIsOffload
,
prop
->
eCategory
,
prop
->
Options
);
if
(
prop
->
bIsOffload
)
return
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
;
return
S_OK
;
}
static
HRESULT
WINAPI
AudioClient_GetBufferSizeLimits
(
IAudioClient2
*
iface
,
...
...
dlls/wineoss.drv/mmdevdrv.c
View file @
d8ae98d4
...
...
@@ -1800,9 +1800,23 @@ static HRESULT WINAPI AudioClient_SetClientProperties(IAudioClient2 *iface,
{
ACImpl
*
This
=
impl_from_IAudioClient2
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
return
E_NOTIMPL
;
if
(
!
prop
)
return
E_POINTER
;
if
(
prop
->
cbSize
!=
sizeof
(
*
prop
))
return
E_INVALIDARG
;
TRACE
(
"{ bIsOffload: %u, eCategory: 0x%x, Options: 0x%x }
\n
"
,
prop
->
bIsOffload
,
prop
->
eCategory
,
prop
->
Options
);
if
(
prop
->
bIsOffload
)
return
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
;
return
S_OK
;
}
static
HRESULT
WINAPI
AudioClient_GetBufferSizeLimits
(
IAudioClient2
*
iface
,
...
...
dlls/winepulse.drv/mmdevdrv.c
View file @
d8ae98d4
...
...
@@ -2248,9 +2248,23 @@ static HRESULT WINAPI AudioClient_SetClientProperties(IAudioClient2 *iface,
{
ACImpl
*
This
=
impl_from_IAudioClient2
(
iface
);
FIXM
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
TRAC
E
(
"(%p)->(%p)
\n
"
,
This
,
prop
);
return
E_NOTIMPL
;
if
(
!
prop
)
return
E_POINTER
;
if
(
prop
->
cbSize
!=
sizeof
(
*
prop
))
return
E_INVALIDARG
;
TRACE
(
"{ bIsOffload: %u, eCategory: 0x%x, Options: 0x%x }
\n
"
,
prop
->
bIsOffload
,
prop
->
eCategory
,
prop
->
Options
);
if
(
prop
->
bIsOffload
)
return
AUDCLNT_E_ENDPOINT_OFFLOAD_NOT_CAPABLE
;
return
S_OK
;
}
static
HRESULT
WINAPI
AudioClient_GetBufferSizeLimits
(
IAudioClient2
*
iface
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment