Commit 00563711 authored by Andrew Eikum's avatar Andrew Eikum Committed by Michael Stefaniuc

xaudio2: Explicitly version the 2.7 coclasses.

In versions 2.8 and later, no coclasses are provided by the API, so we should version the old ones to make it clear they're out of date. Signed-off-by: 's avatarAndrew Eikum <aeikum@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org> (cherry picked from commit 4ad4c611) Signed-off-by: 's avatarMichael Stefaniuc <mstefani@winehq.org>
parent 850ac564
......@@ -249,7 +249,7 @@ static void test_simple_streaming(IXAudio2 *xa)
if(xaudio27){
IXAPO *xapo;
hr = CoCreateInstance(&CLSID_AudioVolumeMeter, NULL,
hr = CoCreateInstance(&CLSID_AudioVolumeMeter27, NULL,
CLSCTX_INPROC_SERVER, &IID_IUnknown, (void**)&vumeter);
ok(hr == S_OK, "CoCreateInstance(AudioVolumeMeter) failed: %08x\n", hr);
......@@ -834,7 +834,7 @@ static void test_xapo_creation_legacy(const char *module, unsigned int version)
&CLSID_AudioVolumeMeter24,
&CLSID_AudioVolumeMeter25,
&CLSID_AudioVolumeMeter26,
&CLSID_AudioVolumeMeter
&CLSID_AudioVolumeMeter27
};
static const GUID *ar_clsids[] = {
......@@ -845,7 +845,7 @@ static void test_xapo_creation_legacy(const char *module, unsigned int version)
&CLSID_AudioReverb24,
&CLSID_AudioReverb25,
&CLSID_AudioReverb26,
&CLSID_AudioReverb
&CLSID_AudioReverb27
};
xapofxdll = LoadLibraryA(module);
......@@ -973,7 +973,7 @@ static void test_xapo_creation_modern(const char *module)
}
/* test legacy CLSID */
hr = pCreateFX(&CLSID_AudioVolumeMeter, &fx_unk, NULL, 0);
hr = pCreateFX(&CLSID_AudioVolumeMeter27, &fx_unk, NULL, 0);
ok(hr == S_OK, "%s: CreateFX(CLSID_AudioVolumeMeter) failed: %08x\n", module, hr);
if(SUCCEEDED(hr)){
IXAPO *xapo;
......@@ -1060,7 +1060,7 @@ START_TEST(xaudio2)
test_xapo_creation();
/* XAudio 2.7 (Jun 2010 DirectX) */
hr = CoCreateInstance(&CLSID_XAudio2, NULL, CLSCTX_INPROC_SERVER,
hr = CoCreateInstance(&CLSID_XAudio27, NULL, CLSCTX_INPROC_SERVER,
&IID_IXAudio27, (void**)&xa27);
if(hr == S_OK){
xaudio27 = TRUE;
......
......@@ -699,7 +699,7 @@ static HRESULT WINAPI xapocf_CreateInstance(IClassFactory *iface, IUnknown *pOut
if(pOuter)
return CLASS_E_NOAGGREGATION;
if(IsEqualGUID(This->class, &CLSID_AudioVolumeMeter)){
if(IsEqualGUID(This->class, &CLSID_AudioVolumeMeter27)){
VUMeterImpl *object;
object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
......@@ -715,7 +715,7 @@ static HRESULT WINAPI xapocf_CreateInstance(IClassFactory *iface, IUnknown *pOut
HeapFree(GetProcessHeap(), 0, object);
return hr;
}
}else if(IsEqualGUID(This->class, &CLSID_AudioReverb)){
}else if(IsEqualGUID(This->class, &CLSID_AudioReverb27)){
ReverbImpl *object;
object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object));
......
......@@ -25,7 +25,7 @@
threading(both),
uuid(5a508685-a254-4fba-9b82-9a24b00306af)
]
coclass XAudio2 { interface IXAudio2; }
coclass XAudio27 { interface IXAudio27; }
[
helpstring("XAudio2 Volume Meter Class"),
......
......@@ -2033,58 +2033,58 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, void **ppv)
factory = make_xaudio2_factory(25);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio26)){
factory = make_xaudio2_factory(26);
}else if(IsEqualGUID(rclsid, &CLSID_XAudio2)){
}else if(IsEqualGUID(rclsid, &CLSID_XAudio27)){
factory = make_xaudio2_factory(27);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter20)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 20);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 20);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter21)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 21);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 21);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter22)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 22);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 22);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter23)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 23);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 23);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter24)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 24);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 24);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter25)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 25);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 25);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter26)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 26);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter, 27);
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 26);
}else if(IsEqualGUID(rclsid, &CLSID_AudioVolumeMeter27)){
factory = make_xapo_factory(&CLSID_AudioVolumeMeter27, 27);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb20)){
factory = make_xapo_factory(&CLSID_AudioReverb, 20);
factory = make_xapo_factory(&CLSID_AudioReverb27, 20);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb21) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb10)){
factory = make_xapo_factory(&CLSID_AudioReverb, 21);
factory = make_xapo_factory(&CLSID_AudioReverb27, 21);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb22) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb11)){
factory = make_xapo_factory(&CLSID_AudioReverb, 22);
factory = make_xapo_factory(&CLSID_AudioReverb27, 22);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb23) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb12)){
factory = make_xapo_factory(&CLSID_AudioReverb, 23);
factory = make_xapo_factory(&CLSID_AudioReverb27, 23);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb24) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb13)){
factory = make_xapo_factory(&CLSID_AudioReverb, 24);
factory = make_xapo_factory(&CLSID_AudioReverb27, 24);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb25)){
factory = make_xapo_factory(&CLSID_AudioReverb, 25);
factory = make_xapo_factory(&CLSID_AudioReverb27, 25);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb26) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb14)){
factory = make_xapo_factory(&CLSID_AudioReverb, 26);
factory = make_xapo_factory(&CLSID_AudioReverb27, 26);
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb) ||
}else if(IsEqualGUID(rclsid, &CLSID_AudioReverb27) ||
IsEqualGUID(rclsid, &CLSID_WINE_FXReverb15)){
factory = make_xapo_factory(&CLSID_AudioReverb, 27);
factory = make_xapo_factory(&CLSID_AudioReverb27, 27);
}else if(IsEqualGUID(rclsid, &CLSID_WINE_FXReverb28)){
factory = make_xapo_factory(&CLSID_AudioReverb, 28);
factory = make_xapo_factory(&CLSID_AudioReverb27, 28);
}else if(IsEqualGUID(rclsid, &CLSID_WINE_FXEQ10)){
......
......@@ -54,7 +54,7 @@ HRESULT WINAPI XAudio2Create(IXAudio2 **ppxa2, UINT32 flags, XAUDIO2_PROCESSOR p
IXAudio27 *xa27;
/* create XAudio2 2.8 instance */
hr = CoCreateInstance(&CLSID_XAudio2, NULL, CLSCTX_INPROC_SERVER,
hr = CoCreateInstance(&CLSID_XAudio27, NULL, CLSCTX_INPROC_SERVER,
&IID_IXAudio2, (void**)&xa2);
if(FAILED(hr))
return hr;
......@@ -81,13 +81,13 @@ HRESULT WINAPI XAudio2Create(IXAudio2 **ppxa2, UINT32 flags, XAUDIO2_PROCESSOR p
HRESULT WINAPI CreateAudioVolumeMeter(IUnknown **out)
{
return CoCreateInstance(&CLSID_AudioVolumeMeter, NULL, CLSCTX_INPROC_SERVER,
return CoCreateInstance(&CLSID_AudioVolumeMeter27, NULL, CLSCTX_INPROC_SERVER,
&IID_IUnknown, (void**)out);
}
HRESULT WINAPI CreateAudioReverb(IUnknown **out)
{
return CoCreateInstance(&CLSID_AudioReverb, NULL, CLSCTX_INPROC_SERVER,
return CoCreateInstance(&CLSID_AudioReverb27, NULL, CLSCTX_INPROC_SERVER,
&IID_IUnknown, (void**)out);
}
......
......@@ -23,7 +23,7 @@
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXEQ27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x00);
/* xaudio 2.8 */
/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXEQ, 0xf5e01117, 0xd6c4, 0x485a, 0xa3, 0xf5, 0x69, 0x51, 0x96, 0xf3, 0xdb, 0xfa);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXEQ10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x00, 0x00, 0x01, 0x00);
......@@ -36,7 +36,7 @@ DEFINE_GUID(CLSID_WINE_FXEQ28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xF
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXMasteringLimiter27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x01);
/* xaudio 2.8 */
/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXMasteringLimiter, 0xc4137916, 0x2be1, 0x46fd, 0x85, 0x99, 0x44, 0x15, 0x36, 0xf4, 0x98, 0x56);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXMasteringLimiter10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x01, 0x00, 0x01, 0x00);
......@@ -49,7 +49,7 @@ DEFINE_GUID(CLSID_WINE_FXMasteringLimiter28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXReverb27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x02);
/* xaudio 2.8 */
/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXReverb, 0x7d9aca56, 0xcb68, 0x4807, 0xb6, 0x32, 0xb1, 0x37, 0x35, 0x2e, 0x85, 0x96);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXReverb10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x02, 0x00, 0x01, 0x00);
......@@ -62,7 +62,7 @@ DEFINE_GUID(CLSID_WINE_FXReverb28, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43,
/* xapofx 1.0 through 1.5 */
DEFINE_GUID(CLSID_FXEcho27, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0x55, 0x00, 0x00, 0x00, 0x03);
/* xaudio 2.8 */
/* xaudio >= 2.8 */
DEFINE_GUID(CLSID_FXEcho, 0x5039d740, 0xf736, 0x449a, 0x84, 0xd3, 0xa5, 0x62, 0x02, 0x55, 0x7b, 0x87);
/* wine internal */
DEFINE_GUID(CLSID_WINE_FXEcho10, 0xa90bc001, 0xe897, 0xe897, 0x74, 0x39, 0x43, 0xFF, 0x03, 0x00, 0x01, 0x00);
......
......@@ -24,13 +24,6 @@ import "audiosessiontypes.h";
cpp_quote("#include <pshpack1.h>")
[
uuid(5a508685-a254-4fba-9b82-9a24b00306af)
]
coclass XAudio2 {
interface IUnknown;
}
[
uuid(fac23f48-31f5-45a8-b49b-5225d61401aa)
]
coclass XAudio20 {
......@@ -80,6 +73,13 @@ coclass XAudio26 {
}
[
uuid(5a508685-a254-4fba-9b82-9a24b00306af)
]
coclass XAudio27 {
interface IUnknown;
}
[
uuid(db05ea35-0329-4d4b-a53a-6dead03d3852)
]
coclass XAudio2Debug {
......
......@@ -19,13 +19,6 @@
import "unknwn.idl";
[
uuid(cac1105f-619b-4d04-831a-44e1cbf12d57)
]
coclass AudioVolumeMeter {
interface IUnknown;
}
[
uuid(c0c56f46-29b1-44e9-9939-a32ce86867e2)
]
coclass AudioVolumeMeter20 {
......@@ -75,9 +68,9 @@ coclass AudioVolumeMeter26 {
}
[
uuid(6a93130e-1d53-41d1-a9cf-e758800bb179)
uuid(cac1105f-619b-4d04-831a-44e1cbf12d57)
]
coclass AudioReverb {
coclass AudioVolumeMeter27 {
interface IUnknown;
}
......@@ -129,3 +122,10 @@ coclass AudioReverb25 {
coclass AudioReverb26 {
interface IUnknown;
}
[
uuid(6a93130e-1d53-41d1-a9cf-e758800bb179)
]
coclass AudioReverb27 {
interface IUnknown;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment