diff --git a/Freeswitch.2010.express.sln b/Freeswitch.2010.express.sln index 8837d349f7..8b469e9759 100644 --- a/Freeswitch.2010.express.sln +++ b/Freeswitch.2010.express.sln @@ -89,8 +89,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_curl", "src\mod\xml EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_say_en", "src\mod\say\mod_say_en\mod_say_en.2010.vcxproj", "{988CACF7-3FCB-4992-BE69-77872AE67DC8}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\portaudio\build\msvc\portaudio.2010.vcxproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_xml_cdr", "src\mod\xml_int\mod_xml_cdr\mod_xml_cdr.2010.vcxproj", "{08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_amr", "src\mod\codecs\mod_amr\mod_amr.2010.vcxproj", "{8DEB383C-4091-4F42-A56F-C9E46D552D79}" @@ -345,14 +343,28 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeexdsp", "libs\win32\s EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download LDNS", "libs\win32\Download LDNS.2010.vcxproj", "{5BE9A596-F11F-4379-928C-412F81AE182B}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download PORTAUDIO", "libs\win32\Download PORTAUDIO.2010.vcxproj", "{C0779BCC-C037-4F58-B890-EF37BA956B3C}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "portaudio", "libs\win32\portaudio\portaudio.2010.vcxproj", "{0A18A071-125E-442F-AFF7-A3F68ABECF99}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download V8", "libs\win32\Download V8.2010.vcxproj", "{13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libv8", "libs\win32\v8\libv8.2010.vcxproj", "{AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_v8", "src\mod\languages\mod_v8\mod_v8.2010.vcxproj", "{9B9D2551-D6BD-4F20-8BE5-DE30E154A064}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution All|Win32 = All|Win32 All|x64 = All|x64 + Debug DirectSound|Win32 = Debug DirectSound|Win32 + Debug DirectSound|x64 = Debug DirectSound|x64 Debug_RTL_dll|Win32 = Debug_RTL_dll|Win32 Debug_RTL_dll|x64 = Debug_RTL_dll|x64 Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 + Release DirectSound|Win32 = Release DirectSound|Win32 + Release DirectSound|x64 = Release DirectSound|x64 Release_Dynamic_SSE|Win32 = Release_Dynamic_SSE|Win32 Release_Dynamic_SSE|x64 = Release_Dynamic_SSE|x64 Release_Dynamic|Win32 = Release_Dynamic|Win32 @@ -372,6 +384,9 @@ Global {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|Win32.ActiveCfg = Release|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.ActiveCfg = Release|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.All|x64.Build.0 = Release|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug DirectSound|x64.Build.0 = Debug|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -379,6 +394,9 @@ Global {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|Win32.Build.0 = Debug|Win32 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.ActiveCfg = Debug|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Debug|x64.Build.0 = Debug|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release DirectSound|x64.Build.0 = Release|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1AF3A893-F7BE-43DD-B697-8AB2397C0D67}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -404,6 +422,9 @@ Global {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|Win32.ActiveCfg = Release|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.ActiveCfg = Release|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.All|x64.Build.0 = Release|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug DirectSound|x64.Build.0 = Debug|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -411,6 +432,9 @@ Global {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|Win32.Build.0 = Debug|Win32 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.ActiveCfg = Debug|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Debug|x64.Build.0 = Debug|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release DirectSound|x64.ActiveCfg = Release|x64 + {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release DirectSound|x64.Build.0 = Release|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -436,6 +460,9 @@ Global {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|Win32.ActiveCfg = Release Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.ActiveCfg = Release Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.All|x64.Build.0 = Release Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug DirectSound|Win32.ActiveCfg = Debug Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug DirectSound|x64.ActiveCfg = Debug Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug DirectSound|x64.Build.0 = Debug Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug_RTL_dll|Win32.ActiveCfg = Debug Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug_RTL_dll|x64.ActiveCfg = Debug Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug_RTL_dll|x64.Build.0 = Debug Passthrough|x64 @@ -443,6 +470,9 @@ Global {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|Win32.Build.0 = Debug Passthrough|Win32 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.ActiveCfg = Debug Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Debug|x64.Build.0 = Debug Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release DirectSound|Win32.ActiveCfg = Release Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release DirectSound|x64.ActiveCfg = Release Passthrough|x64 + {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release DirectSound|x64.Build.0 = Release Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release_Dynamic_SSE|Win32.ActiveCfg = Release Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release_Dynamic_SSE|x64.ActiveCfg = Release Passthrough|x64 {1D95CD95-0DE2-48C3-AC23-D5C7D1C9C0F0}.Release_Dynamic_SSE|x64.Build.0 = Release Passthrough|x64 @@ -468,6 +498,9 @@ Global {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|Win32.ActiveCfg = Release|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.ActiveCfg = Release|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.All|x64.Build.0 = Release|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug DirectSound|x64.Build.0 = Debug|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -475,6 +508,9 @@ Global {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|Win32.Build.0 = Debug|Win32 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.ActiveCfg = Debug|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Debug|x64.Build.0 = Debug|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release DirectSound|x64.ActiveCfg = Release|x64 + {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release DirectSound|x64.Build.0 = Release|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {AFAC0568-7548-42D5-9F6A-8D3400A1E4F6}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -500,6 +536,9 @@ Global {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|Win32.ActiveCfg = Release|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.ActiveCfg = Release|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.All|x64.Build.0 = Release|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug DirectSound|x64.Build.0 = Debug|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -507,6 +546,9 @@ Global {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|Win32.Build.0 = Debug|Win32 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.ActiveCfg = Debug|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Debug|x64.Build.0 = Debug|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release DirectSound|x64.ActiveCfg = Release|x64 + {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release DirectSound|x64.Build.0 = Release|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -531,11 +573,17 @@ Global {5FD31A25-5D83-4794-8BEE-904DAD84CE71}.Release|x64.Build.0 = Release|x64 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|Win32.ActiveCfg = Release|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.All|x64.ActiveCfg = Release|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|Win32.ActiveCfg = Debug|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Debug|x64.ActiveCfg = Debug|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release DirectSound|Win32.Build.0 = Release|Win32 + {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release DirectSound|x64.ActiveCfg = Release|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {1A1FF289-4FD6-4285-A422-D31DD67A4723}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -559,6 +607,9 @@ Global {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|Win32.ActiveCfg = Release|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.ActiveCfg = Release|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.All|x64.Build.0 = Release|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug DirectSound|x64.Build.0 = Debug|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -566,6 +617,9 @@ Global {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|Win32.Build.0 = Debug|Win32 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.ActiveCfg = Debug|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Debug|x64.Build.0 = Debug|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release DirectSound|x64.ActiveCfg = Release|x64 + {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release DirectSound|x64.Build.0 = Release|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {07113B25-D3AF-4E04-BA77-4CD1171F022C}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -591,6 +645,9 @@ Global {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|Win32.ActiveCfg = Release MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.ActiveCfg = Release MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.All|x64.Build.0 = Release MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug DirectSound|Win32.ActiveCfg = Debug MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug DirectSound|x64.ActiveCfg = Debug MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug DirectSound|x64.Build.0 = Debug MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug_RTL_dll|Win32.ActiveCfg = Debug MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug_RTL_dll|x64.ActiveCfg = Debug MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug_RTL_dll|x64.Build.0 = Debug MS-LDAP|x64 @@ -598,6 +655,9 @@ Global {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|Win32.Build.0 = Debug MS-LDAP|Win32 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.ActiveCfg = Debug MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Debug|x64.Build.0 = Debug MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release DirectSound|Win32.ActiveCfg = Release MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release DirectSound|x64.ActiveCfg = Release MS-LDAP|x64 + {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release DirectSound|x64.Build.0 = Release MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release_Dynamic_SSE|Win32.ActiveCfg = Release MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release_Dynamic_SSE|x64.ActiveCfg = Release MS-LDAP|x64 {EC3E5C7F-EE09-47E2-80FE-546363D14A98}.Release_Dynamic_SSE|x64.Build.0 = Release MS-LDAP|x64 @@ -623,6 +683,9 @@ Global {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|Win32.ActiveCfg = Release|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.ActiveCfg = Release|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.All|x64.Build.0 = Release|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug DirectSound|x64.Build.0 = Debug|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -630,6 +693,9 @@ Global {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|Win32.Build.0 = Debug|Win32 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.ActiveCfg = Debug|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Debug|x64.Build.0 = Debug|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release DirectSound|x64.ActiveCfg = Release|x64 + {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release DirectSound|x64.Build.0 = Release|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {A27CCA23-1541-4337-81A4-F0A6413078A0}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -655,6 +721,9 @@ Global {784113EF-44D9-4949-835D-7065D3C7AD08}.All|Win32.ActiveCfg = Release|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.ActiveCfg = Release|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.All|x64.Build.0 = Release|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug DirectSound|x64.Build.0 = Debug|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -662,6 +731,9 @@ Global {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|Win32.Build.0 = Debug|Win32 {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.ActiveCfg = Debug|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Debug|x64.Build.0 = Debug|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Release DirectSound|x64.ActiveCfg = Release|x64 + {784113EF-44D9-4949-835D-7065D3C7AD08}.Release DirectSound|x64.Build.0 = Release|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {784113EF-44D9-4949-835D-7065D3C7AD08}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -687,6 +759,9 @@ Global {89385C74-5860-4174-9CAF-A39E7C48909C}.All|Win32.ActiveCfg = Release|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.ActiveCfg = Release|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.All|x64.Build.0 = Release|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug DirectSound|x64.Build.0 = Debug|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -694,6 +769,9 @@ Global {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|Win32.Build.0 = Debug|Win32 {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.ActiveCfg = Debug|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Debug|x64.Build.0 = Debug|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Release DirectSound|x64.ActiveCfg = Release|x64 + {89385C74-5860-4174-9CAF-A39E7C48909C}.Release DirectSound|x64.Build.0 = Release|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {89385C74-5860-4174-9CAF-A39E7C48909C}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -719,11 +797,17 @@ Global {692F6330-4D87-4C82-81DF-40DB5892636E}.All|Win32.ActiveCfg = Release|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.ActiveCfg = Release|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.All|x64.Build.0 = Release|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug DirectSound|x64.Build.0 = Debug|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|Win32.ActiveCfg = Debug|Win32 {692F6330-4D87-4C82-81DF-40DB5892636E}.Debug|x64.ActiveCfg = Debug|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {692F6330-4D87-4C82-81DF-40DB5892636E}.Release DirectSound|x64.Build.0 = Release|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {692F6330-4D87-4C82-81DF-40DB5892636E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -747,6 +831,9 @@ Global {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|Win32.ActiveCfg = Release|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.ActiveCfg = Release|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.All|x64.Build.0 = Release|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug DirectSound|x64.Build.0 = Debug|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -754,6 +841,9 @@ Global {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|Win32.Build.0 = Debug|Win32 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.ActiveCfg = Debug|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Debug|x64.Build.0 = Debug|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release DirectSound|x64.Build.0 = Release|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D3EC0AFF-76FC-4210-A825-9A17410660A3}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -779,6 +869,9 @@ Global {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|Win32.ActiveCfg = Release|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.ActiveCfg = Release|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.All|x64.Build.0 = Release|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug DirectSound|x64.Build.0 = Debug|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -786,6 +879,9 @@ Global {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|Win32.Build.0 = Debug|Win32 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.ActiveCfg = Debug|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Debug|x64.Build.0 = Debug|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release DirectSound|x64.ActiveCfg = Release|x64 + {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release DirectSound|x64.Build.0 = Release|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {FFAA4C52-3A53-4F99-90C1-D59D1F0427F3}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -811,6 +907,9 @@ Global {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|Win32.ActiveCfg = Release|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.ActiveCfg = Release|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.All|x64.Build.0 = Release|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug DirectSound|x64.Build.0 = Debug|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -818,6 +917,9 @@ Global {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|Win32.Build.0 = Debug|Win32 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.ActiveCfg = Debug|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Debug|x64.Build.0 = Debug|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release DirectSound|x64.ActiveCfg = Release|x64 + {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release DirectSound|x64.Build.0 = Release|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {30A5B29C-983E-4580-9FD0-D647CCDCC7EB}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -843,6 +945,9 @@ Global {1C453396-D912-4213-89FD-9B489162B7B5}.All|Win32.ActiveCfg = Release|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.ActiveCfg = Release|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.All|x64.Build.0 = Release|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Debug DirectSound|x64.Build.0 = Debug|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -850,6 +955,9 @@ Global {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|Win32.Build.0 = Debug|Win32 {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.ActiveCfg = Debug|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Debug|x64.Build.0 = Debug|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1C453396-D912-4213-89FD-9B489162B7B5}.Release DirectSound|x64.Build.0 = Release|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1C453396-D912-4213-89FD-9B489162B7B5}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -875,6 +983,9 @@ Global {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|Win32.ActiveCfg = Release|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.ActiveCfg = Release|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.All|x64.Build.0 = Release|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug DirectSound|x64.Build.0 = Debug|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -882,6 +993,9 @@ Global {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|Win32.Build.0 = Debug|Win32 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.ActiveCfg = Debug|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Debug|x64.Build.0 = Debug|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release DirectSound|x64.ActiveCfg = Release|x64 + {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release DirectSound|x64.Build.0 = Release|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {CBEC7225-0C21-4DA8-978E-1F158F8AD950}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -907,6 +1021,9 @@ Global {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|Win32.ActiveCfg = Release|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.ActiveCfg = Release|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.All|x64.Build.0 = Release|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug DirectSound|x64.Build.0 = Debug|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -914,6 +1031,9 @@ Global {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|Win32.Build.0 = Debug|Win32 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.ActiveCfg = Debug|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Debug|x64.Build.0 = Debug|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release DirectSound|x64.Build.0 = Release|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -939,6 +1059,9 @@ Global {C24FB505-05D7-4319-8485-7540B44C8603}.All|Win32.ActiveCfg = Release|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.ActiveCfg = Release|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.All|x64.Build.0 = Release|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Debug DirectSound|x64.Build.0 = Debug|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -946,6 +1069,9 @@ Global {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|Win32.Build.0 = Debug|Win32 {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.ActiveCfg = Debug|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Debug|x64.Build.0 = Debug|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Release DirectSound|x64.ActiveCfg = Release|x64 + {C24FB505-05D7-4319-8485-7540B44C8603}.Release DirectSound|x64.Build.0 = Release|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {C24FB505-05D7-4319-8485-7540B44C8603}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -971,6 +1097,9 @@ Global {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|Win32.ActiveCfg = Release|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.ActiveCfg = Release|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.All|x64.Build.0 = Release|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug DirectSound|x64.Build.0 = Debug|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -978,6 +1107,9 @@ Global {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|Win32.Build.0 = Debug|Win32 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.ActiveCfg = Debug|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Debug|x64.Build.0 = Debug|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release DirectSound|x64.Build.0 = Release|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B5881A85-FE70-4F64-8607-2CAAE52669C6}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1003,6 +1135,9 @@ Global {05515420-16DE-4E63-BE73-85BE85BA5142}.All|Win32.ActiveCfg = Release|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.ActiveCfg = Release|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.All|x64.Build.0 = Release|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug DirectSound|x64.Build.0 = Debug|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1010,6 +1145,9 @@ Global {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|Win32.Build.0 = Debug|Win32 {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.ActiveCfg = Debug|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Debug|x64.Build.0 = Debug|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Release DirectSound|x64.ActiveCfg = Release|x64 + {05515420-16DE-4E63-BE73-85BE85BA5142}.Release DirectSound|x64.Build.0 = Release|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {05515420-16DE-4E63-BE73-85BE85BA5142}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1035,6 +1173,9 @@ Global {1906D736-08BD-4EE1-924F-B536249B9A54}.All|Win32.ActiveCfg = Release DLL|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.ActiveCfg = Release DLL|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.All|x64.Build.0 = Release DLL|x64 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug DirectSound|Win32.ActiveCfg = Debug DLL|Win32 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug DirectSound|Win32.Build.0 = Debug DLL|Win32 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug DirectSound|x64.ActiveCfg = Debug DLL|Win32 {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1042,6 +1183,9 @@ Global {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|Win32.Build.0 = Debug|Win32 {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.ActiveCfg = Debug|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Debug|x64.Build.0 = Debug|x64 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Release DirectSound|Win32.ActiveCfg = Release DLL|x64 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Release DirectSound|x64.ActiveCfg = Release DLL|x64 + {1906D736-08BD-4EE1-924F-B536249B9A54}.Release DirectSound|x64.Build.0 = Release DLL|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1906D736-08BD-4EE1-924F-B536249B9A54}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1067,6 +1211,9 @@ Global {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|Win32.ActiveCfg = Release Dll|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.ActiveCfg = Release Dll|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.All|x64.Build.0 = Release Dll|x64 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug DirectSound|Win32.ActiveCfg = Debug Dll|Win32 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug DirectSound|Win32.Build.0 = Debug Dll|Win32 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug DirectSound|x64.ActiveCfg = Debug Dll|Win32 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1074,6 +1221,9 @@ Global {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|Win32.Build.0 = Debug|Win32 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.ActiveCfg = Debug|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Debug|x64.Build.0 = Debug|x64 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release DirectSound|Win32.ActiveCfg = Release Dll|x64 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release DirectSound|x64.ActiveCfg = Release Dll|x64 + {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release DirectSound|x64.Build.0 = Release Dll|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {EEF031CB-FED8-451E-A471-91EC8D4F6750}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1099,6 +1249,9 @@ Global {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|Win32.ActiveCfg = Release DLL|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.ActiveCfg = Release DLL|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.All|x64.Build.0 = Release DLL|x64 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug DirectSound|Win32.ActiveCfg = Debug DLL|Win32 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug DirectSound|Win32.Build.0 = Debug DLL|Win32 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug DirectSound|x64.ActiveCfg = Debug DLL|Win32 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1106,6 +1259,9 @@ Global {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|Win32.Build.0 = Debug|Win32 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.ActiveCfg = Debug|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Debug|x64.Build.0 = Debug|x64 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release DirectSound|Win32.ActiveCfg = Release DLL|x64 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release DirectSound|x64.ActiveCfg = Release DLL|x64 + {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release DirectSound|x64.Build.0 = Release DLL|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {6EDFEFD5-3596-4FA9-8EBA-B331547B35A3}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1131,6 +1287,9 @@ Global {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|Win32.ActiveCfg = Release DLL|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.ActiveCfg = Release DLL|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.All|x64.Build.0 = Release DLL|x64 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug DirectSound|Win32.ActiveCfg = Debug DLL|Win32 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug DirectSound|Win32.Build.0 = Debug DLL|Win32 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug DirectSound|x64.ActiveCfg = Debug DLL|Win32 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1138,6 +1297,9 @@ Global {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|Win32.Build.0 = Debug|Win32 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.ActiveCfg = Debug|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Debug|x64.Build.0 = Debug|x64 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release DirectSound|Win32.ActiveCfg = Release DLL|x64 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release DirectSound|x64.ActiveCfg = Release DLL|x64 + {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release DirectSound|x64.Build.0 = Release DLL|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {8D04B550-D240-4A44-8A18-35DA3F7038D9}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1163,6 +1325,9 @@ Global {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|Win32.ActiveCfg = Release|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.ActiveCfg = Release|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.All|x64.Build.0 = Release|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug DirectSound|x64.Build.0 = Debug|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1170,6 +1335,9 @@ Global {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|Win32.Build.0 = Debug|Win32 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.ActiveCfg = Debug|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Debug|x64.Build.0 = Debug|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release DirectSound|x64.ActiveCfg = Release|x64 + {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release DirectSound|x64.Build.0 = Release|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {F6C55D93-B927-4483-BB69-15AEF3DD2DFF}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1195,6 +1363,9 @@ Global {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|Win32.ActiveCfg = Release|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.ActiveCfg = Release|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.All|x64.Build.0 = Release|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug DirectSound|x64.Build.0 = Debug|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1202,6 +1373,9 @@ Global {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|Win32.Build.0 = Debug|Win32 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.ActiveCfg = Debug|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Debug|x64.Build.0 = Debug|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release DirectSound|x64.ActiveCfg = Release|x64 + {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release DirectSound|x64.Build.0 = Release|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {F057DA7F-79E5-4B00-845C-EF446EF055E3}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1227,6 +1401,9 @@ Global {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|Win32.ActiveCfg = Release|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.ActiveCfg = Release|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.All|x64.Build.0 = Release|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug DirectSound|x64.Build.0 = Debug|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1234,6 +1411,9 @@ Global {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|Win32.Build.0 = Debug|Win32 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.ActiveCfg = Debug|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Debug|x64.Build.0 = Debug|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release DirectSound|x64.ActiveCfg = Release|x64 + {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release DirectSound|x64.Build.0 = Release|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {E727E8F6-935D-46FE-8B0E-37834748A0E3}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1259,6 +1439,9 @@ Global {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|Win32.ActiveCfg = Release|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.ActiveCfg = Release|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.All|x64.Build.0 = Release|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug DirectSound|x64.Build.0 = Debug|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1266,6 +1449,9 @@ Global {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|Win32.Build.0 = Debug|Win32 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.ActiveCfg = Debug|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Debug|x64.Build.0 = Debug|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release DirectSound|x64.Build.0 = Release|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {3D0370CA-BED2-4657-A475-32375CBCB6E4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1291,6 +1477,9 @@ Global {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|Win32.ActiveCfg = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.ActiveCfg = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.All|x64.Build.0 = Debug|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug DirectSound|x64.Build.0 = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1298,6 +1487,9 @@ Global {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|Win32.Build.0 = Debug|Win32 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.ActiveCfg = Debug|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Debug|x64.Build.0 = Debug|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release DirectSound|x64.ActiveCfg = Release|x64 + {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release DirectSound|x64.Build.0 = Release|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {87EE9DA4-DE1E-4448-8324-183C98DCA588}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1323,6 +1515,9 @@ Global {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|Win32.ActiveCfg = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.ActiveCfg = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.All|x64.Build.0 = Debug|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug DirectSound|x64.Build.0 = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1330,6 +1525,9 @@ Global {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|Win32.Build.0 = Debug|Win32 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.ActiveCfg = Debug|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Debug|x64.Build.0 = Debug|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release DirectSound|x64.ActiveCfg = Release|x64 + {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release DirectSound|x64.Build.0 = Release|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {155844C3-EC5F-407F-97A4-A2DDADED9B2F}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1355,6 +1553,9 @@ Global {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|Win32.ActiveCfg = Release|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.ActiveCfg = Release|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.All|x64.Build.0 = Release|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug DirectSound|x64.Build.0 = Debug|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1362,6 +1563,9 @@ Global {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|Win32.Build.0 = Debug|Win32 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.ActiveCfg = Debug|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Debug|x64.Build.0 = Debug|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release DirectSound|x64.Build.0 = Release|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0DF3ABD0-DDC0-4265-B778-07C66780979B}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1387,6 +1591,9 @@ Global {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|Win32.ActiveCfg = Release|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.ActiveCfg = Release|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.All|x64.Build.0 = Release|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug DirectSound|x64.Build.0 = Debug|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1394,6 +1601,9 @@ Global {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|Win32.Build.0 = Debug|Win32 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.ActiveCfg = Debug|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Debug|x64.Build.0 = Debug|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release DirectSound|x64.ActiveCfg = Release|x64 + {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release DirectSound|x64.Build.0 = Release|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {70A49BC2-7500-41D0-B75D-EDCC5BE987A0}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1420,6 +1630,9 @@ Global {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|Win32.Build.0 = Release|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.ActiveCfg = Release|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.All|x64.Build.0 = Release|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -1427,6 +1640,9 @@ Global {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|Win32.Build.0 = Debug|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.ActiveCfg = Debug|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Debug|x64.Build.0 = Debug|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release DirectSound|Win32.Build.0 = Release|Win32 + {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release DirectSound|x64.ActiveCfg = Release|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -1452,6 +1668,9 @@ Global {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|Win32.ActiveCfg = Release DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.ActiveCfg = Release DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.All|x64.Build.0 = Release DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug DirectSound|Win32.ActiveCfg = Debug DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug DirectSound|x64.ActiveCfg = Debug DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug DirectSound|x64.Build.0 = Debug DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug_RTL_dll|Win32.ActiveCfg = Debug DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug_RTL_dll|x64.ActiveCfg = Debug DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug_RTL_dll|x64.Build.0 = Debug DLL|x64 @@ -1459,6 +1678,9 @@ Global {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|Win32.Build.0 = Debug DLL|Win32 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.ActiveCfg = Debug DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Debug|x64.Build.0 = Debug DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release DirectSound|Win32.ActiveCfg = Release DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release DirectSound|x64.ActiveCfg = Release DLL|x64 + {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release DirectSound|x64.Build.0 = Release DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release_Dynamic_SSE|x64.ActiveCfg = Release DLL|x64 {DF018947-0FFF-4EB3-BDEE-441DC81DA7A4}.Release_Dynamic_SSE|x64.Build.0 = Release DLL|x64 @@ -1484,6 +1706,9 @@ Global {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|Win32.ActiveCfg = Release Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.ActiveCfg = Release Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.All|x64.Build.0 = Release Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug DirectSound|Win32.ActiveCfg = Debug Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug DirectSound|x64.ActiveCfg = Debug Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug DirectSound|x64.Build.0 = Debug Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug_RTL_dll|Win32.ActiveCfg = Debug Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug_RTL_dll|x64.ActiveCfg = Debug Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug_RTL_dll|x64.Build.0 = Debug Passthrough|x64 @@ -1491,6 +1716,9 @@ Global {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|Win32.Build.0 = Debug Passthrough|Win32 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.ActiveCfg = Debug Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Debug|x64.Build.0 = Debug Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release DirectSound|Win32.ActiveCfg = Release Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release DirectSound|x64.ActiveCfg = Release Passthrough|x64 + {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release DirectSound|x64.Build.0 = Release Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release_Dynamic_SSE|Win32.ActiveCfg = Release Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release_Dynamic_SSE|x64.ActiveCfg = Release Passthrough|x64 {FEA1EEF7-876F-48DE-88BF-C0E3E606D758}.Release_Dynamic_SSE|x64.Build.0 = Release Passthrough|x64 @@ -1516,6 +1744,9 @@ Global {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.ActiveCfg = Release|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|x64.Build.0 = Release|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug DirectSound|x64.Build.0 = Debug|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1523,6 +1754,9 @@ Global {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|Win32.Build.0 = Debug|Win32 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.ActiveCfg = Debug|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Debug|x64.Build.0 = Debug|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release DirectSound|x64.ActiveCfg = Release|x64 + {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release DirectSound|x64.Build.0 = Release|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1548,6 +1782,9 @@ Global {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|Win32.ActiveCfg = Release|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.ActiveCfg = Release|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.All|x64.Build.0 = Release|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug DirectSound|x64.Build.0 = Debug|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1555,6 +1792,9 @@ Global {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|Win32.Build.0 = Debug|Win32 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.ActiveCfg = Debug|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Debug|x64.Build.0 = Debug|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release DirectSound|x64.ActiveCfg = Release|x64 + {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release DirectSound|x64.Build.0 = Release|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {71A967D5-0E99-4CEF-A587-98836EE6F2EF}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1580,6 +1820,9 @@ Global {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|Win32.ActiveCfg = Release|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.ActiveCfg = Release|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.All|x64.Build.0 = Release|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug DirectSound|x64.Build.0 = Debug|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1587,6 +1830,9 @@ Global {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|Win32.Build.0 = Debug|Win32 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.ActiveCfg = Debug|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Debug|x64.Build.0 = Debug|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release DirectSound|x64.Build.0 = Release|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {AB91A099-7690-4ECF-8994-E458F4EA1ED4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1612,6 +1858,9 @@ Global {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|Win32.ActiveCfg = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.ActiveCfg = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.All|x64.Build.0 = Release|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug DirectSound|x64.Build.0 = Debug|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1619,6 +1868,9 @@ Global {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|Win32.Build.0 = Debug|Win32 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.ActiveCfg = Debug|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Debug|x64.Build.0 = Debug|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release DirectSound|x64.ActiveCfg = Release|x64 + {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release DirectSound|x64.Build.0 = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1641,41 +1893,12 @@ Global {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|Win32.Build.0 = Release|Win32 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.ActiveCfg = Release|x64 {988CACF7-3FCB-4992-BE69-77872AE67DC8}.Release|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release DirectSound|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release DirectSound|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.Build.0 = Release DirectSound|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|x64.Build.0 = Debug|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug|Win32 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug|Win32 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.Build.0 = Debug|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|Win32.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|x64.Build.0 = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release|Win32 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release|Win32 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release|x64 - {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|Win32.ActiveCfg = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.ActiveCfg = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.All|x64.Build.0 = Release|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug DirectSound|x64.Build.0 = Debug|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1683,6 +1906,9 @@ Global {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|Win32.Build.0 = Debug|Win32 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.ActiveCfg = Debug|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Debug|x64.Build.0 = Debug|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release DirectSound|x64.ActiveCfg = Release|x64 + {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release DirectSound|x64.Build.0 = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {08DAD348-9E0A-4A2E-97F1-F1E7E24A7836}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1708,6 +1934,9 @@ Global {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|Win32.ActiveCfg = Release Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.ActiveCfg = Release Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.All|x64.Build.0 = Release Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug DirectSound|Win32.ActiveCfg = Debug Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug DirectSound|x64.ActiveCfg = Debug Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug DirectSound|x64.Build.0 = Debug Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug_RTL_dll|Win32.ActiveCfg = Debug Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug_RTL_dll|x64.ActiveCfg = Debug Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug_RTL_dll|x64.Build.0 = Debug Passthrough|x64 @@ -1715,6 +1944,9 @@ Global {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|Win32.Build.0 = Debug Passthrough|Win32 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.ActiveCfg = Debug Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Debug|x64.Build.0 = Debug Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release DirectSound|Win32.ActiveCfg = Release Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release DirectSound|x64.ActiveCfg = Release Passthrough|x64 + {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release DirectSound|x64.Build.0 = Release Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release_Dynamic_SSE|Win32.ActiveCfg = Release Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release_Dynamic_SSE|x64.ActiveCfg = Release Passthrough|x64 {8DEB383C-4091-4F42-A56F-C9E46D552D79}.Release_Dynamic_SSE|x64.Build.0 = Release Passthrough|x64 @@ -1740,6 +1972,9 @@ Global {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|Win32.ActiveCfg = Release|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.ActiveCfg = Release|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.All|x64.Build.0 = Release|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug DirectSound|x64.Build.0 = Debug|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1747,6 +1982,9 @@ Global {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|Win32.Build.0 = Debug|Win32 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.ActiveCfg = Debug|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Debug|x64.Build.0 = Debug|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release DirectSound|x64.ActiveCfg = Release|x64 + {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release DirectSound|x64.Build.0 = Release|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {2C3C2423-234B-4772-8899-D3B137E5CA35}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1772,6 +2010,9 @@ Global {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|Win32.ActiveCfg = Release|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.ActiveCfg = Release|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.All|x64.Build.0 = Release|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug DirectSound|x64.Build.0 = Debug|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1779,6 +2020,9 @@ Global {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|Win32.Build.0 = Debug|Win32 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.ActiveCfg = Debug|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Debug|x64.Build.0 = Debug|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release DirectSound|x64.ActiveCfg = Release|x64 + {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release DirectSound|x64.Build.0 = Release|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {3850D93A-5F24-4922-BC1C-74D08C37C256}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1804,6 +2048,9 @@ Global {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|Win32.ActiveCfg = Release|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.ActiveCfg = Release|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.All|x64.Build.0 = Release|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug DirectSound|x64.Build.0 = Debug|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1811,6 +2058,9 @@ Global {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|Win32.Build.0 = Debug|Win32 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.ActiveCfg = Debug|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Debug|x64.Build.0 = Debug|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release DirectSound|x64.ActiveCfg = Release|x64 + {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release DirectSound|x64.Build.0 = Release|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {2CA40887-1622-46A1-A7F9-17FD7E7E545B}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1836,6 +2086,9 @@ Global {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|Win32.ActiveCfg = Release|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.ActiveCfg = Release|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.All|x64.Build.0 = Release|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug DirectSound|x64.Build.0 = Debug|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1843,6 +2096,9 @@ Global {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|Win32.Build.0 = Debug|Win32 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.ActiveCfg = Debug|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Debug|x64.Build.0 = Debug|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release DirectSound|x64.Build.0 = Release|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D7F1E3F2-A3F4-474C-8555-15122571AF52}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1868,6 +2124,9 @@ Global {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|Win32.ActiveCfg = Release|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.ActiveCfg = Release|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.All|x64.Build.0 = Release|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug DirectSound|x64.Build.0 = Debug|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1875,6 +2134,9 @@ Global {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|Win32.Build.0 = Debug|Win32 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.ActiveCfg = Debug|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Debug|x64.Build.0 = Debug|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release DirectSound|x64.ActiveCfg = Release|x64 + {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release DirectSound|x64.Build.0 = Release|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {5BC072DB-3826-48EA-AF34-FE32AA01E83B}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1900,6 +2162,9 @@ Global {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|Win32.ActiveCfg = Release|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.ActiveCfg = Release|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.All|x64.Build.0 = Release|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug DirectSound|x64.Build.0 = Debug|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1907,6 +2172,9 @@ Global {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|Win32.Build.0 = Debug|Win32 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.ActiveCfg = Debug|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Debug|x64.Build.0 = Debug|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release DirectSound|x64.Build.0 = Release|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {FA429E98-8B03-45E6-A096-A4BC5E821DE4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1932,6 +2200,9 @@ Global {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|Win32.ActiveCfg = Release|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.ActiveCfg = Release|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.All|x64.Build.0 = Release|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug DirectSound|x64.Build.0 = Debug|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1939,6 +2210,9 @@ Global {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|Win32.Build.0 = Debug|Win32 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.ActiveCfg = Debug|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Debug|x64.Build.0 = Debug|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release DirectSound|x64.ActiveCfg = Release|x64 + {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release DirectSound|x64.Build.0 = Release|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {06E3A538-AB32-44F2-B477-755FF9CB5D37}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1964,6 +2238,9 @@ Global {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|Win32.ActiveCfg = Release|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.ActiveCfg = Release|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.All|x64.Build.0 = Release|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug DirectSound|x64.Build.0 = Debug|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -1971,6 +2248,9 @@ Global {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|Win32.Build.0 = Debug|Win32 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.ActiveCfg = Debug|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Debug|x64.Build.0 = Debug|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release DirectSound|x64.ActiveCfg = Release|x64 + {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release DirectSound|x64.Build.0 = Release|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {6D1BEC70-4DCD-4FE9-ADBD-4A43A67E4D05}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -1996,6 +2276,9 @@ Global {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|Win32.ActiveCfg = Release|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.ActiveCfg = Release|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.All|x64.Build.0 = Release|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug DirectSound|x64.Build.0 = Debug|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2003,6 +2286,9 @@ Global {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|Win32.Build.0 = Debug|Win32 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.ActiveCfg = Debug|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Debug|x64.Build.0 = Debug|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release DirectSound|x64.ActiveCfg = Release|x64 + {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release DirectSound|x64.Build.0 = Release|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {A4B122CF-5196-476B-8C0E-D8BD59AC3C14}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2028,6 +2314,9 @@ Global {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|Win32.ActiveCfg = Release|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.ActiveCfg = Release|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.All|x64.Build.0 = Release|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug DirectSound|x64.Build.0 = Debug|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2035,6 +2324,9 @@ Global {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|Win32.Build.0 = Debug|Win32 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.ActiveCfg = Debug|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Debug|x64.Build.0 = Debug|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release DirectSound|x64.ActiveCfg = Release|x64 + {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release DirectSound|x64.Build.0 = Release|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {75DF7F29-2FBF-47F7-B5AF-5B4952DC1ABD}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2060,6 +2352,9 @@ Global {F6A33240-8F29-48BD-98F0-826995911799}.All|Win32.ActiveCfg = Release|x64 {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.ActiveCfg = Release|x64 {F6A33240-8F29-48BD-98F0-826995911799}.All|x64.Build.0 = Release|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Debug DirectSound|x64.Build.0 = Debug|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2067,6 +2362,9 @@ Global {F6A33240-8F29-48BD-98F0-826995911799}.Debug|Win32.Build.0 = Debug|Win32 {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.ActiveCfg = Debug|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Debug|x64.Build.0 = Debug|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Release DirectSound|x64.ActiveCfg = Release|x64 + {F6A33240-8F29-48BD-98F0-826995911799}.Release DirectSound|x64.Build.0 = Release|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {F6A33240-8F29-48BD-98F0-826995911799}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2092,6 +2390,9 @@ Global {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|Win32.ActiveCfg = Release|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.ActiveCfg = Release|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.All|x64.Build.0 = Release|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug DirectSound|x64.Build.0 = Debug|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2099,6 +2400,9 @@ Global {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|Win32.Build.0 = Debug|Win32 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.ActiveCfg = Debug|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Debug|x64.Build.0 = Debug|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release DirectSound|x64.Build.0 = Release|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {65A6273D-FCAB-4C55-B09E-65100141A5D4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2124,6 +2428,9 @@ Global {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|Win32.ActiveCfg = Release|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.ActiveCfg = Release|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.All|x64.Build.0 = Release|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug DirectSound|x64.Build.0 = Debug|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2131,6 +2438,9 @@ Global {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|Win32.Build.0 = Debug|Win32 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.ActiveCfg = Debug|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Debug|x64.Build.0 = Debug|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release DirectSound|x64.ActiveCfg = Release|x64 + {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release DirectSound|x64.Build.0 = Release|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2156,6 +2466,9 @@ Global {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|Win32.ActiveCfg = Release|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.ActiveCfg = Release|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.All|x64.Build.0 = Release|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug DirectSound|x64.Build.0 = Debug|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2163,6 +2476,9 @@ Global {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|Win32.Build.0 = Debug|Win32 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.ActiveCfg = Debug|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Debug|x64.Build.0 = Debug|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release DirectSound|x64.Build.0 = Release|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D0BCAC02-D94B-46B8-9B49-CDDCC2BD7909}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2188,6 +2504,9 @@ Global {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|Win32.ActiveCfg = Release|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.ActiveCfg = Release|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.All|x64.Build.0 = Release|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug DirectSound|x64.Build.0 = Debug|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2195,6 +2514,9 @@ Global {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|Win32.Build.0 = Debug|Win32 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.ActiveCfg = Debug|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Debug|x64.Build.0 = Debug|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release DirectSound|x64.Build.0 = Release|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {44D7DEAF-FDA5-495E-8B9D-1439E4F4C21E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2220,6 +2542,9 @@ Global {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|Win32.ActiveCfg = Release|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.ActiveCfg = Release|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.All|x64.Build.0 = Release|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug DirectSound|x64.Build.0 = Debug|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2227,6 +2552,9 @@ Global {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|Win32.Build.0 = Debug|Win32 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.ActiveCfg = Debug|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Debug|x64.Build.0 = Debug|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release DirectSound|x64.ActiveCfg = Release|x64 + {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release DirectSound|x64.Build.0 = Release|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {6FF941AC-82C5-429F-AA4C-AD2FB9E5DA52}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2252,6 +2580,9 @@ Global {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|Win32.ActiveCfg = Release|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.ActiveCfg = Release|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.All|x64.Build.0 = Release|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug DirectSound|x64.Build.0 = Debug|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2259,6 +2590,9 @@ Global {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|Win32.Build.0 = Debug|Win32 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.ActiveCfg = Debug|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Debug|x64.Build.0 = Debug|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release DirectSound|x64.ActiveCfg = Release|x64 + {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release DirectSound|x64.Build.0 = Release|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {E3246D17-E29B-4AB5-962A-C69B0C5837BB}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2284,6 +2618,9 @@ Global {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|Win32.ActiveCfg = Release|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.ActiveCfg = Release|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.All|x64.Build.0 = Release|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug DirectSound|x64.Build.0 = Debug|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2291,6 +2628,9 @@ Global {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|Win32.Build.0 = Debug|Win32 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.ActiveCfg = Debug|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Debug|x64.Build.0 = Debug|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release DirectSound|x64.ActiveCfg = Release|x64 + {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release DirectSound|x64.Build.0 = Release|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {7B077E7F-1BE7-4291-AB86-55E527B25CAC}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2316,6 +2656,9 @@ Global {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|Win32.ActiveCfg = Release|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.ActiveCfg = Release|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.All|x64.Build.0 = Release|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug DirectSound|x64.Build.0 = Debug|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2323,6 +2666,9 @@ Global {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|Win32.Build.0 = Debug|Win32 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.ActiveCfg = Debug|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Debug|x64.Build.0 = Debug|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release DirectSound|x64.Build.0 = Release|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D2396DD7-7D38-473A-ABB7-6F96D65AE1B9}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2348,6 +2694,9 @@ Global {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|Win32.ActiveCfg = Release|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.ActiveCfg = Release|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.All|x64.Build.0 = Release|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug DirectSound|x64.Build.0 = Debug|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2355,6 +2704,9 @@ Global {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|Win32.Build.0 = Debug|Win32 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.ActiveCfg = Debug|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Debug|x64.Build.0 = Debug|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release DirectSound|x64.ActiveCfg = Release|x64 + {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release DirectSound|x64.Build.0 = Release|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {CEE544A9-0303-44C2-8ECE-EFA7D7BCBBBA}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2380,6 +2732,9 @@ Global {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|Win32.ActiveCfg = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.ActiveCfg = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.All|x64.Build.0 = Debug|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug DirectSound|x64.Build.0 = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2387,6 +2742,9 @@ Global {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|Win32.Build.0 = Debug|Win32 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.ActiveCfg = Debug|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Debug|x64.Build.0 = Debug|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release DirectSound|x64.Build.0 = Release|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0D108721-EAE8-4BAF-8102-D8960EC93647}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2412,6 +2770,9 @@ Global {B535402E-38D2-4D54-8360-423ACBD17192}.All|Win32.ActiveCfg = Release|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.ActiveCfg = Release|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.All|x64.Build.0 = Release|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Debug DirectSound|x64.Build.0 = Debug|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2419,6 +2780,9 @@ Global {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|Win32.Build.0 = Debug|Win32 {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.ActiveCfg = Debug|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Debug|x64.Build.0 = Debug|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B535402E-38D2-4D54-8360-423ACBD17192}.Release DirectSound|x64.Build.0 = Release|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B535402E-38D2-4D54-8360-423ACBD17192}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2445,6 +2809,9 @@ Global {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|Win32.Build.0 = Release|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.ActiveCfg = Release|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.All|x64.Build.0 = Release|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2452,6 +2819,9 @@ Global {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|Win32.Build.0 = Debug|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.ActiveCfg = Debug|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Debug|x64.Build.0 = Debug|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release DirectSound|Win32.Build.0 = Release|Win32 + {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release DirectSound|x64.ActiveCfg = Release|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {4F92B672-DADB-4047-8D6A-4BB3796733FD}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2478,6 +2848,9 @@ Global {2DEE4895-1134-439C-B688-52203E57D878}.All|Win32.Build.0 = Release|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.ActiveCfg = Release|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.All|x64.Build.0 = Release|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2485,6 +2858,9 @@ Global {2DEE4895-1134-439C-B688-52203E57D878}.Debug|Win32.Build.0 = Debug|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.ActiveCfg = Debug|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Debug|x64.Build.0 = Debug|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Release DirectSound|Win32.Build.0 = Release|Win32 + {2DEE4895-1134-439C-B688-52203E57D878}.Release DirectSound|x64.ActiveCfg = Release|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {2DEE4895-1134-439C-B688-52203E57D878}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2511,6 +2887,9 @@ Global {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|Win32.Build.0 = Release|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.ActiveCfg = Release|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.All|x64.Build.0 = Release|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2518,6 +2897,9 @@ Global {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|Win32.Build.0 = Debug|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.ActiveCfg = Debug|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Debug|x64.Build.0 = Debug|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release DirectSound|Win32.Build.0 = Release|Win32 + {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release DirectSound|x64.ActiveCfg = Release|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {AF8163EE-FA76-4904-A11D-7D70A1B5BA2E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2543,6 +2925,9 @@ Global {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|Win32.ActiveCfg = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.ActiveCfg = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.All|x64.Build.0 = Debug|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug DirectSound|x64.Build.0 = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2550,6 +2935,9 @@ Global {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|Win32.Build.0 = Debug|Win32 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.ActiveCfg = Debug|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Debug|x64.Build.0 = Debug|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release DirectSound|x64.ActiveCfg = Release|x64 + {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release DirectSound|x64.Build.0 = Release|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {2F025EAD-99BD-40F5-B2CC-F0A28CAD7F2D}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2575,6 +2963,9 @@ Global {94001A0E-A837-445C-8004-F918F10D0226}.All|Win32.ActiveCfg = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.ActiveCfg = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.All|x64.Build.0 = Debug|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Debug DirectSound|x64.Build.0 = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2582,6 +2973,9 @@ Global {94001A0E-A837-445C-8004-F918F10D0226}.Debug|Win32.Build.0 = Debug|Win32 {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.ActiveCfg = Debug|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Debug|x64.Build.0 = Debug|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Release DirectSound|x64.ActiveCfg = Release|x64 + {94001A0E-A837-445C-8004-F918F10D0226}.Release DirectSound|x64.Build.0 = Release|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {94001A0E-A837-445C-8004-F918F10D0226}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2608,6 +3002,9 @@ Global {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|Win32.Build.0 = Release|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.ActiveCfg = Release|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.All|x64.Build.0 = Release|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2615,6 +3012,9 @@ Global {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|Win32.Build.0 = Debug|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.ActiveCfg = Debug|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Debug|x64.Build.0 = Debug|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release DirectSound|Win32.Build.0 = Release|Win32 + {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release DirectSound|x64.ActiveCfg = Release|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2639,11 +3039,17 @@ Global {3CE1DC99-8246-4DB1-A709-74F19F08EC67}.Release|x64.Build.0 = Release|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|Win32.ActiveCfg = Release|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.All|x64.ActiveCfg = Release|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|Win32.ActiveCfg = Debug|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Debug|x64.ActiveCfg = Debug|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release DirectSound|Win32.Build.0 = Release|Win32 + {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release DirectSound|x64.ActiveCfg = Release|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {87A1FE3D-F410-4C8E-9591-8C625985BC70}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2668,6 +3074,9 @@ Global {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|Win32.Build.0 = Release|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.ActiveCfg = Release|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.All|x64.Build.0 = Release|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2675,6 +3084,9 @@ Global {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|Win32.Build.0 = Debug|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.ActiveCfg = Debug|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Debug|x64.Build.0 = Debug|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release DirectSound|Win32.Build.0 = Release|Win32 + {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release DirectSound|x64.ActiveCfg = Release|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2699,11 +3111,17 @@ Global {7A8D8174-B355-4114-AFC1-04777CB9DE0A}.Release|x64.Build.0 = Release|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.All|Win32.ActiveCfg = Release|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.All|x64.ActiveCfg = Release|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|Win32.ActiveCfg = Debug|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Debug|x64.ActiveCfg = Debug|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Release DirectSound|Win32.Build.0 = Release|Win32 + {7EB71250-F002-4ED8-92CA-CA218114537A}.Release DirectSound|x64.ActiveCfg = Release|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {7EB71250-F002-4ED8-92CA-CA218114537A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2726,11 +3144,17 @@ Global {7EB71250-F002-4ED8-92CA-CA218114537A}.Release|x64.ActiveCfg = Release|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|Win32.ActiveCfg = Release|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.All|x64.ActiveCfg = Release|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|Win32.ActiveCfg = Debug|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Debug|x64.ActiveCfg = Debug|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release DirectSound|Win32.Build.0 = Release|Win32 + {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release DirectSound|x64.ActiveCfg = Release|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2753,11 +3177,17 @@ Global {6E49F6C2-ADDA-4BFB-81FE-AB9AF51B455F}.Release|x64.ActiveCfg = Release|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.All|Win32.ActiveCfg = Release|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.All|x64.ActiveCfg = Release|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|Win32.ActiveCfg = Debug|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Debug|x64.ActiveCfg = Debug|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Release DirectSound|Win32.Build.0 = Release|Win32 + {464AAB78-5489-4916-BE51-BF8D61822311}.Release DirectSound|x64.ActiveCfg = Release|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {464AAB78-5489-4916-BE51-BF8D61822311}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2781,6 +3211,9 @@ Global {0AD1177E-1FD8-4643-9391-431467A11084}.All|Win32.ActiveCfg = Release|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.ActiveCfg = Release|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.All|x64.Build.0 = Release|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Debug DirectSound|x64.Build.0 = Debug|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2788,6 +3221,9 @@ Global {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|Win32.Build.0 = Debug|Win32 {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.ActiveCfg = Debug|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Debug|x64.Build.0 = Debug|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0AD1177E-1FD8-4643-9391-431467A11084}.Release DirectSound|x64.Build.0 = Release|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0AD1177E-1FD8-4643-9391-431467A11084}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2813,11 +3249,17 @@ Global {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|Win32.ActiveCfg = Release Static|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.ActiveCfg = Release Static|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64.Build.0 = Release Static|x64 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug DirectSound|Win32.ActiveCfg = Debug Static|Win32 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug DirectSound|Win32.Build.0 = Debug Static|Win32 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug DirectSound|x64.ActiveCfg = Debug Static|Win32 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug_RTL_dll|x64.Build.0 = Debug|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release DirectSound|Win32.ActiveCfg = Release Static|x64 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release DirectSound|x64.ActiveCfg = Release Static|x64 + {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release DirectSound|x64.Build.0 = Release Static|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -2842,6 +3284,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|x64.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2849,6 +3294,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Debug|x64.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2875,6 +3323,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.All|x64.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2882,6 +3333,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Debug|x64.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB2086DB1B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2908,6 +3362,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.All|x64.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2915,6 +3372,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Debug|x64.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB3086DB1B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2941,6 +3401,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.All|x64.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -2948,6 +3411,9 @@ Global {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|Win32.Build.0 = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.ActiveCfg = Debug|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Debug|x64.Build.0 = Debug|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D5D2BF72-29FE-4982-A9FA-82AB1086DB1B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -2973,6 +3439,9 @@ Global {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|Win32.ActiveCfg = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.ActiveCfg = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.All|x64.Build.0 = Debug|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug DirectSound|x64.Build.0 = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -2980,6 +3449,9 @@ Global {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|Win32.Build.0 = Debug|Win32 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.ActiveCfg = Debug|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Debug|x64.Build.0 = Debug|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release DirectSound|x64.ActiveCfg = Release|x64 + {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release DirectSound|x64.Build.0 = Release|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {E316772F-5D8F-4F2A-8F71-094C3E859D34}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3005,6 +3477,9 @@ Global {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|Win32.ActiveCfg = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.ActiveCfg = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.All|x64.Build.0 = Debug|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug DirectSound|x64.Build.0 = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3012,6 +3487,9 @@ Global {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|Win32.Build.0 = Debug|Win32 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.ActiveCfg = Debug|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Debug|x64.Build.0 = Debug|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release DirectSound|x64.Build.0 = Release|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D3D8B329-20BE-475E-9E83-653CEA0E0EF5}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3037,6 +3515,9 @@ Global {38FE0559-9910-43A8-9E45-3E5004C27692}.All|Win32.ActiveCfg = Release|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.ActiveCfg = Release|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.All|x64.Build.0 = Release|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug DirectSound|x64.Build.0 = Debug|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3044,6 +3525,9 @@ Global {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|Win32.Build.0 = Debug|Win32 {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.ActiveCfg = Debug|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Debug|x64.Build.0 = Debug|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Release DirectSound|x64.ActiveCfg = Release|x64 + {38FE0559-9910-43A8-9E45-3E5004C27692}.Release DirectSound|x64.Build.0 = Release|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {38FE0559-9910-43A8-9E45-3E5004C27692}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3069,6 +3553,9 @@ Global {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|Win32.ActiveCfg = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.ActiveCfg = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.All|x64.Build.0 = Debug|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug DirectSound|x64.Build.0 = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3076,6 +3563,9 @@ Global {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|Win32.Build.0 = Debug|Win32 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.ActiveCfg = Debug|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Debug|x64.Build.0 = Debug|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release DirectSound|x64.Build.0 = Release|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0FEEAEC6-4399-4C46-B7DB-62ECE80D15B4}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3101,6 +3591,9 @@ Global {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|Win32.ActiveCfg = Release|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.ActiveCfg = Release|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.All|x64.Build.0 = Release|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug DirectSound|x64.Build.0 = Debug|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3108,6 +3601,9 @@ Global {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|Win32.Build.0 = Debug|Win32 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.ActiveCfg = Debug|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Debug|x64.Build.0 = Debug|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release DirectSound|x64.ActiveCfg = Release|x64 + {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release DirectSound|x64.Build.0 = Release|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {2A3D00C6-588D-4E86-81AC-9EF5EDE86E03}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3133,6 +3629,9 @@ Global {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|Win32.ActiveCfg = Release|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.ActiveCfg = Release|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.All|x64.Build.0 = Release|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug DirectSound|x64.Build.0 = Debug|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3140,6 +3639,9 @@ Global {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|Win32.Build.0 = Debug|Win32 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.ActiveCfg = Debug|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Debug|x64.Build.0 = Debug|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release DirectSound|x64.Build.0 = Release|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B6A9FB7A-1CC4-442B-812D-EC33E4E4A36E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3165,6 +3667,9 @@ Global {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|Win32.ActiveCfg = Release_Mono|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.ActiveCfg = Release_Mono|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.All|x64.Build.0 = Release_Mono|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug DirectSound|Win32.ActiveCfg = Debug_CLR|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug DirectSound|x64.ActiveCfg = Debug_CLR|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug DirectSound|x64.Build.0 = Debug_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug_RTL_dll|Win32.ActiveCfg = Debug_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug_RTL_dll|x64.ActiveCfg = Debug_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug_RTL_dll|x64.Build.0 = Debug_CLR|x64 @@ -3172,6 +3677,9 @@ Global {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|Win32.Build.0 = Debug_CLR|Win32 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.ActiveCfg = Debug_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Debug|x64.Build.0 = Debug_CLR|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release DirectSound|Win32.ActiveCfg = Release_CLR|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release DirectSound|x64.ActiveCfg = Release_CLR|x64 + {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release DirectSound|x64.Build.0 = Release_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release_Dynamic_SSE|x64.ActiveCfg = Release_CLR|x64 {7B42BDA1-72C0-4378-A9B6-5C530F8CD61E}.Release_Dynamic_SSE|x64.Build.0 = Release_CLR|x64 @@ -3198,6 +3706,9 @@ Global {E796E337-DE78-4303-8614-9A590862EE95}.All|Win32.Build.0 = Release|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.ActiveCfg = Release|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.All|x64.Build.0 = Release|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -3205,6 +3716,9 @@ Global {E796E337-DE78-4303-8614-9A590862EE95}.Debug|Win32.Build.0 = Debug|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.ActiveCfg = Debug|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Debug|x64.Build.0 = Debug|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Release DirectSound|Win32.Build.0 = Release|Win32 + {E796E337-DE78-4303-8614-9A590862EE95}.Release DirectSound|x64.ActiveCfg = Release|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {E796E337-DE78-4303-8614-9A590862EE95}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3230,6 +3744,9 @@ Global {419C8F80-D858-4B48-A25C-AF4007608137}.All|Win32.ActiveCfg = Release|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.ActiveCfg = Release|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.All|x64.Build.0 = Release|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Debug DirectSound|x64.Build.0 = Debug|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3237,6 +3754,9 @@ Global {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|Win32.Build.0 = Debug|Win32 {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.ActiveCfg = Debug|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Debug|x64.Build.0 = Debug|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Release DirectSound|x64.ActiveCfg = Release|x64 + {419C8F80-D858-4B48-A25C-AF4007608137}.Release DirectSound|x64.Build.0 = Release|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {419C8F80-D858-4B48-A25C-AF4007608137}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3262,6 +3782,9 @@ Global {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|Win32.ActiveCfg = Release|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.ActiveCfg = Release|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.All|x64.Build.0 = Release|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug DirectSound|x64.Build.0 = Debug|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3269,6 +3792,9 @@ Global {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|Win32.Build.0 = Debug|Win32 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.ActiveCfg = Debug|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Debug|x64.Build.0 = Debug|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release DirectSound|x64.Build.0 = Release|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B3F424EC-3D8F-417C-B244-3919D5E1A577}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3294,6 +3820,9 @@ Global {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|Win32.ActiveCfg = Release|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.ActiveCfg = Release|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.All|x64.Build.0 = Release|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug DirectSound|x64.Build.0 = Debug|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3301,6 +3830,9 @@ Global {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|Win32.Build.0 = Debug|Win32 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.ActiveCfg = Debug|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Debug|x64.Build.0 = Debug|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release DirectSound|x64.ActiveCfg = Release|x64 + {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release DirectSound|x64.Build.0 = Release|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {14E4A972-9CFB-436D-B0A5-4943F3F80D47}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3326,6 +3858,9 @@ Global {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|Win32.ActiveCfg = Release|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.ActiveCfg = Release|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.All|x64.Build.0 = Release|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug DirectSound|x64.Build.0 = Debug|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3333,6 +3868,9 @@ Global {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|Win32.Build.0 = Debug|Win32 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.ActiveCfg = Debug|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Debug|x64.Build.0 = Debug|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release DirectSound|x64.Build.0 = Release|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1BC8A8EC-E03B-44DF-BCD9-088650F4D29C}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3358,6 +3896,9 @@ Global {0B6C905B-142E-4999-B39D-92FF7951E921}.All|Win32.ActiveCfg = Release|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.ActiveCfg = Release|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.All|x64.Build.0 = Release|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug DirectSound|x64.Build.0 = Debug|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3365,6 +3906,9 @@ Global {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|Win32.Build.0 = Debug|Win32 {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.ActiveCfg = Debug|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Debug|x64.Build.0 = Debug|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0B6C905B-142E-4999-B39D-92FF7951E921}.Release DirectSound|x64.Build.0 = Release|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0B6C905B-142E-4999-B39D-92FF7951E921}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3390,6 +3934,9 @@ Global {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|Win32.ActiveCfg = Release|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.ActiveCfg = Release|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.All|x64.Build.0 = Release|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug DirectSound|x64.Build.0 = Debug|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3397,6 +3944,9 @@ Global {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|Win32.Build.0 = Debug|Win32 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.ActiveCfg = Debug|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Debug|x64.Build.0 = Debug|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release DirectSound|x64.Build.0 = Release|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {CF405366-9558-4AE8-90EF-5E21B51CCB4E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3422,6 +3972,9 @@ Global {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|Win32.ActiveCfg = Release|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.ActiveCfg = Release|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.All|x64.Build.0 = Release|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug DirectSound|x64.Build.0 = Debug|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3429,6 +3982,9 @@ Global {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|Win32.Build.0 = Debug|Win32 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.ActiveCfg = Debug|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Debug|x64.Build.0 = Debug|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release DirectSound|x64.Build.0 = Release|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D2FB8043-D208-4AEE-8F18-3B5857C871B9}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3454,6 +4010,9 @@ Global {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|Win32.ActiveCfg = Release|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.ActiveCfg = Release|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.All|x64.Build.0 = Release|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug DirectSound|x64.Build.0 = Debug|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3461,6 +4020,9 @@ Global {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|Win32.Build.0 = Debug|Win32 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.ActiveCfg = Debug|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Debug|x64.Build.0 = Debug|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release DirectSound|x64.ActiveCfg = Release|x64 + {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release DirectSound|x64.Build.0 = Release|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {329FD5B0-EF28-4606-86D0-F6EA21CF8E36}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3486,6 +4048,9 @@ Global {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|Win32.ActiveCfg = Release|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.ActiveCfg = Release|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.All|x64.Build.0 = Release|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug DirectSound|x64.Build.0 = Debug|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3493,6 +4058,9 @@ Global {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|Win32.Build.0 = Debug|Win32 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.ActiveCfg = Debug|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Debug|x64.Build.0 = Debug|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release DirectSound|x64.Build.0 = Release|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3518,6 +4086,9 @@ Global {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|Win32.ActiveCfg = Release|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.ActiveCfg = Release|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.All|x64.Build.0 = Release|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug DirectSound|x64.Build.0 = Debug|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3525,6 +4096,9 @@ Global {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|Win32.Build.0 = Debug|Win32 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.ActiveCfg = Debug|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Debug|x64.Build.0 = Debug|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release DirectSound|x64.Build.0 = Release|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3550,6 +4124,9 @@ Global {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|Win32.ActiveCfg = Release|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.ActiveCfg = Release|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.All|x64.Build.0 = Release|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug DirectSound|x64.Build.0 = Debug|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3557,6 +4134,9 @@ Global {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|Win32.Build.0 = Debug|Win32 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.ActiveCfg = Debug|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Debug|x64.Build.0 = Debug|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release DirectSound|x64.ActiveCfg = Release|x64 + {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release DirectSound|x64.Build.0 = Release|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {9A5DDF08-C88C-4A35-B7F6-D605228446BD}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3582,6 +4162,9 @@ Global {D0B36172-CD76-454A-9B89-990025266C2A}.All|Win32.ActiveCfg = Release|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.ActiveCfg = Release|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.All|x64.Build.0 = Release|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Debug DirectSound|x64.Build.0 = Debug|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3589,6 +4172,9 @@ Global {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|Win32.Build.0 = Debug|Win32 {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.ActiveCfg = Debug|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Debug|x64.Build.0 = Debug|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D0B36172-CD76-454A-9B89-990025266C2A}.Release DirectSound|x64.Build.0 = Release|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D0B36172-CD76-454A-9B89-990025266C2A}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3614,11 +4200,17 @@ Global {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.ActiveCfg = Release|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|Win32.Build.0 = Release|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.All|x64.ActiveCfg = Release|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|Win32.ActiveCfg = Debug|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Debug|x64.ActiveCfg = Debug|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release DirectSound|Win32.Build.0 = Release|Win32 + {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release DirectSound|x64.ActiveCfg = Release|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3641,11 +4233,17 @@ Global {05C9FB27-480E-4D53-B3B7-6338E2526666}.Release|x64.ActiveCfg = Release|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|Win32.ActiveCfg = Release|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64.ActiveCfg = Release|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release DirectSound|Win32.Build.0 = Release|Win32 + {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release DirectSound|x64.ActiveCfg = Release|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3669,6 +4267,9 @@ Global {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.Build.0 = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|x64.ActiveCfg = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug DirectSound|Win32.ActiveCfg = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug DirectSound|Win32.Build.0 = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug DirectSound|x64.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug_RTL_dll|Win32.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug_RTL_dll|Win32.Build.0 = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug_RTL_dll|x64.ActiveCfg = All|Win32 @@ -3676,6 +4277,9 @@ Global {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|Win32.Build.0 = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Debug|x64.Build.0 = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release DirectSound|Win32.ActiveCfg = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release DirectSound|Win32.Build.0 = All|Win32 + {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release DirectSound|x64.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release_Dynamic_SSE|Win32.ActiveCfg = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release_Dynamic_SSE|Win32.Build.0 = All|Win32 {DEE932AB-5911-4700-9EEB-8C7090A0A330}.Release_Dynamic_SSE|x64.ActiveCfg = All|Win32 @@ -3701,6 +4305,9 @@ Global {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|Win32.Build.0 = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.All|x64.ActiveCfg = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug DirectSound|Win32.ActiveCfg = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug DirectSound|Win32.Build.0 = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug DirectSound|x64.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug_RTL_dll|Win32.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug_RTL_dll|Win32.Build.0 = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug_RTL_dll|x64.ActiveCfg = All|Win32 @@ -3708,6 +4315,9 @@ Global {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|Win32.Build.0 = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Debug|x64.Build.0 = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release DirectSound|Win32.ActiveCfg = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release DirectSound|Win32.Build.0 = All|Win32 + {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release DirectSound|x64.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release_Dynamic_SSE|Win32.ActiveCfg = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release_Dynamic_SSE|Win32.Build.0 = All|Win32 {329A6FA0-0FCC-4435-A950-E670AEFA9838}.Release_Dynamic_SSE|x64.ActiveCfg = All|Win32 @@ -3733,11 +4343,17 @@ Global {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|Win32.ActiveCfg = Release|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.ActiveCfg = Release|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.All|x64.Build.0 = Release|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug DirectSound|x64.Build.0 = Debug|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug_RTL_dll|x64.Build.0 = Debug|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|Win32.ActiveCfg = Debug|Win32 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Debug|x64.ActiveCfg = Debug|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release DirectSound|x64.ActiveCfg = Release|x64 + {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release DirectSound|x64.Build.0 = Release|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3761,6 +4377,9 @@ Global {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|Win32.ActiveCfg = Release|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.ActiveCfg = Release|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.All|x64.Build.0 = Release|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug DirectSound|x64.Build.0 = Debug|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -3768,6 +4387,9 @@ Global {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|Win32.Build.0 = Debug|Win32 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.ActiveCfg = Debug|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Debug|x64.Build.0 = Debug|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release DirectSound|x64.ActiveCfg = Release|x64 + {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release DirectSound|x64.Build.0 = Release|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {A61D7CB4-75A5-4A55-8CA1-BE5AF615D921}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -3793,11 +4415,17 @@ Global {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.ActiveCfg = Release|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|Win32.Build.0 = Release|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x64.ActiveCfg = Release|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release DirectSound|Win32.Build.0 = Release|Win32 + {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release DirectSound|x64.ActiveCfg = Release|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3820,11 +4448,17 @@ Global {C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.All|x64.ActiveCfg = Release|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|Win32.ActiveCfg = Debug|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Debug|x64.ActiveCfg = Debug|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Release DirectSound|Win32.Build.0 = Release|Win32 + {1F0A8A77-E661-418F-BB92-82172AE43803}.Release DirectSound|x64.ActiveCfg = Release|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {1F0A8A77-E661-418F-BB92-82172AE43803}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3849,6 +4483,9 @@ Global {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|Win32.Build.0 = Release|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.ActiveCfg = Release|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.All|x64.Build.0 = Release|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -3856,6 +4493,9 @@ Global {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|Win32.Build.0 = Debug|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.ActiveCfg = Debug|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Debug|x64.Build.0 = Debug|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release DirectSound|Win32.Build.0 = Release|Win32 + {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release DirectSound|x64.ActiveCfg = Release|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3880,11 +4520,17 @@ Global {4F5C9D55-98EF-4256-8311-32D7BD360406}.Release|x64.Build.0 = Release|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|Win32.ActiveCfg = Release|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.All|x64.ActiveCfg = Release|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|Win32.ActiveCfg = Debug|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Debug|x64.ActiveCfg = Debug|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release DirectSound|Win32.Build.0 = Release|Win32 + {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release DirectSound|x64.ActiveCfg = Release|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {E10571C4-E7F4-4608-B5F2-B22E7EB95400}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3909,6 +4555,9 @@ Global {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|Win32.Build.0 = Release|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.ActiveCfg = Release|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.All|x64.Build.0 = Release|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -3916,6 +4565,9 @@ Global {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|Win32.Build.0 = Debug|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.ActiveCfg = Debug|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Debug|x64.Build.0 = Debug|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3940,11 +4592,17 @@ Global {D1ABE208-6442-4FB4-9AAD-1677E41BC870}.Release|x64.Build.0 = Release|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|Win32.ActiveCfg = Release|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.All|x64.ActiveCfg = Release|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|Win32.ActiveCfg = Debug|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Debug|x64.ActiveCfg = Debug|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release DirectSound|Win32.Build.0 = Release|Win32 + {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release DirectSound|x64.ActiveCfg = Release|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3967,11 +4625,17 @@ Global {BA599D0A-4310-4505-91DA-6A6447B3E289}.Release|x64.ActiveCfg = Release|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|Win32.ActiveCfg = Release|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.All|x64.ActiveCfg = Release|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|Win32.ActiveCfg = Debug|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Debug|x64.ActiveCfg = Debug|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release DirectSound|Win32.Build.0 = Release|Win32 + {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release DirectSound|x64.ActiveCfg = Release|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {EED13FC7-4F81-4E6F-93DB-CDB7DF5CF959}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -3995,6 +4659,9 @@ Global {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|Win32.ActiveCfg = Release|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.ActiveCfg = Release|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.All|x64.Build.0 = Release|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug DirectSound|x64.Build.0 = Debug|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4002,6 +4669,9 @@ Global {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|Win32.Build.0 = Debug|Win32 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.ActiveCfg = Debug|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Debug|x64.Build.0 = Debug|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release DirectSound|x64.Build.0 = Release|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {3C977801-FE88-48F2-83D3-FA2EBFF6688E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4028,6 +4698,9 @@ Global {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|Win32.Build.0 = Release|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.ActiveCfg = Release|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.All|x64.Build.0 = Release|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug DirectSound|x64.Build.0 = Debug|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4035,6 +4708,9 @@ Global {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|Win32.Build.0 = Debug|Win32 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.ActiveCfg = Debug|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Debug|x64.Build.0 = Debug|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release DirectSound|x64.ActiveCfg = Release|x64 + {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release DirectSound|x64.Build.0 = Release|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4059,6 +4735,9 @@ Global {0382E8FD-CFDC-41C0-8B03-792C7C84FC31}.Release|x64.Build.0 = Release|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|Win32.ActiveCfg = Release|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.All|x64.ActiveCfg = Release|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug DirectSound|x64.Build.0 = Debug|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4066,6 +4745,9 @@ Global {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|Win32.Build.0 = Debug|Win32 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.ActiveCfg = Debug|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Debug|x64.Build.0 = Debug|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release DirectSound|x64.ActiveCfg = Release|x64 + {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release DirectSound|x64.Build.0 = Release|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {432DB165-1EB2-4781-A9C0-71E62610B20A}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4091,6 +4773,9 @@ Global {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.ActiveCfg = Release|Win32 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|Win32.Build.0 = Release|Win32 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.All|x64.ActiveCfg = Release|Win32 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug DirectSound|x64.Build.0 = Debug|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4098,6 +4783,9 @@ Global {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|Win32.Build.0 = Debug|Win32 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.ActiveCfg = Debug|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Debug|x64.Build.0 = Debug|x64 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release DirectSound|x64.ActiveCfg = Release|x64 + {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release DirectSound|x64.Build.0 = Release|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {CF70F278-3364-4395-A2E1-23501C9B8AD2}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4123,6 +4811,9 @@ Global {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|Win32.ActiveCfg = Release|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.ActiveCfg = Release|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.All|x64.Build.0 = Release|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug DirectSound|x64.Build.0 = Debug|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4130,6 +4821,9 @@ Global {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|Win32.Build.0 = Debug|Win32 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.ActiveCfg = Debug|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Debug|x64.Build.0 = Debug|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release DirectSound|x64.ActiveCfg = Release|x64 + {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release DirectSound|x64.Build.0 = Release|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {D5C87B19-150D-4EF3-A671-96589BD2D14A}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4155,6 +4849,9 @@ Global {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.ActiveCfg = Release|Win32 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|Win32.Build.0 = Release|Win32 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.All|x64.ActiveCfg = Release|Win32 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug DirectSound|x64.Build.0 = Debug|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4162,6 +4859,9 @@ Global {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|Win32.Build.0 = Debug|Win32 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.ActiveCfg = Debug|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Debug|x64.Build.0 = Debug|x64 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release DirectSound|x64.ActiveCfg = Release|x64 + {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release DirectSound|x64.Build.0 = Release|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {13DEECA0-BDD4-4744-A1A2-8EB0A44DF3D2}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4187,6 +4887,9 @@ Global {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.ActiveCfg = Release|Win32 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|Win32.Build.0 = Release|Win32 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.All|x64.ActiveCfg = Release|Win32 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug DirectSound|x64.Build.0 = Debug|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4194,6 +4897,9 @@ Global {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|Win32.Build.0 = Debug|Win32 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.ActiveCfg = Debug|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Debug|x64.Build.0 = Debug|x64 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release DirectSound|x64.ActiveCfg = Release|x64 + {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release DirectSound|x64.Build.0 = Release|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {B5A00BFA-6083-4FAE-A097-71642D6473B5}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4219,6 +4925,9 @@ Global {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.ActiveCfg = Release|Win32 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|Win32.Build.0 = Release|Win32 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.All|x64.ActiveCfg = Release|Win32 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug DirectSound|x64.Build.0 = Debug|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4226,6 +4935,9 @@ Global {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|Win32.Build.0 = Debug|Win32 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.ActiveCfg = Debug|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Debug|x64.Build.0 = Debug|x64 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release DirectSound|x64.Build.0 = Release|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1C320193-46A6-4B34-9C56-8AB584FC1B56}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4251,6 +4963,9 @@ Global {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.ActiveCfg = Release|Win32 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|Win32.Build.0 = Release|Win32 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.All|x64.ActiveCfg = Release|Win32 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug DirectSound|x64.Build.0 = Debug|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4258,6 +4973,9 @@ Global {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|Win32.Build.0 = Debug|Win32 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.ActiveCfg = Debug|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Debug|x64.Build.0 = Debug|x64 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release DirectSound|x64.ActiveCfg = Release|x64 + {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release DirectSound|x64.Build.0 = Release|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {72782932-37CC-46AE-8C7F-9A7B1A6EE108}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4283,6 +5001,9 @@ Global {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.ActiveCfg = Release|Win32 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|Win32.Build.0 = Release|Win32 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.All|x64.ActiveCfg = Release|Win32 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug DirectSound|x64.Build.0 = Debug|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4290,6 +5011,9 @@ Global {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|Win32.Build.0 = Debug|Win32 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.ActiveCfg = Debug|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Debug|x64.Build.0 = Debug|x64 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release DirectSound|x64.ActiveCfg = Release|x64 + {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release DirectSound|x64.Build.0 = Release|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {12A49562-BAB9-43A3-A21D-15B60BBB4C31}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4315,6 +5039,9 @@ Global {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.ActiveCfg = Release|Win32 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|Win32.Build.0 = Release|Win32 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.All|x64.ActiveCfg = Release|Win32 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug DirectSound|x64.Build.0 = Debug|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4322,6 +5049,9 @@ Global {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|Win32.Build.0 = Debug|Win32 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.ActiveCfg = Debug|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Debug|x64.Build.0 = Debug|x64 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release DirectSound|x64.ActiveCfg = Release|x64 + {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release DirectSound|x64.Build.0 = Release|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {A9EDAC04-6A5F-4BA7-BC0D-CCE7B255B6EA}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4347,6 +5077,9 @@ Global {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.ActiveCfg = Release|Win32 {504B3154-7A4F-459D-9877-B951021C3F1F}.All|Win32.Build.0 = Release|Win32 {504B3154-7A4F-459D-9877-B951021C3F1F}.All|x64.ActiveCfg = Release|Win32 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug DirectSound|x64.Build.0 = Debug|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4354,6 +5087,9 @@ Global {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|Win32.Build.0 = Debug|Win32 {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.ActiveCfg = Debug|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Debug|x64.Build.0 = Debug|x64 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Release DirectSound|x64.ActiveCfg = Release|x64 + {504B3154-7A4F-459D-9877-B951021C3F1F}.Release DirectSound|x64.Build.0 = Release|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {504B3154-7A4F-459D-9877-B951021C3F1F}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4379,6 +5115,9 @@ Global {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.ActiveCfg = Release|Win32 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|Win32.Build.0 = Release|Win32 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.All|x64.ActiveCfg = Release|Win32 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug DirectSound|x64.Build.0 = Debug|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4386,6 +5125,9 @@ Global {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|Win32.Build.0 = Debug|Win32 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.ActiveCfg = Debug|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Debug|x64.Build.0 = Debug|x64 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release DirectSound|x64.ActiveCfg = Release|x64 + {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release DirectSound|x64.Build.0 = Release|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {746F3632-5BB2-4570-9453-31D6D58A7D8E}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4411,6 +5153,9 @@ Global {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.ActiveCfg = Release|Win32 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|Win32.Build.0 = Release|Win32 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.All|x64.ActiveCfg = Release|Win32 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug DirectSound|x64.Build.0 = Debug|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4418,6 +5163,9 @@ Global {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|Win32.Build.0 = Debug|Win32 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.ActiveCfg = Debug|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Debug|x64.Build.0 = Debug|x64 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release DirectSound|x64.ActiveCfg = Release|x64 + {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release DirectSound|x64.Build.0 = Release|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {DEB01ACB-D65F-4A62-AED9-58C1054499E9}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4443,6 +5191,9 @@ Global {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.ActiveCfg = Release|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|Win32.Build.0 = Release|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.All|x64.ActiveCfg = Release|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -4450,6 +5201,9 @@ Global {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|Win32.Build.0 = Debug|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.ActiveCfg = Debug|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Debug|x64.Build.0 = Debug|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release DirectSound|Win32.Build.0 = Release|Win32 + {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release DirectSound|x64.ActiveCfg = Release|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4475,6 +5229,9 @@ Global {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|Win32.ActiveCfg = Release|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.ActiveCfg = Release|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.All|x64.Build.0 = Release|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug DirectSound|x64.Build.0 = Debug|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4482,6 +5239,9 @@ Global {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|Win32.Build.0 = Debug|Win32 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.ActiveCfg = Debug|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Debug|x64.Build.0 = Debug|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release DirectSound|x64.ActiveCfg = Release|x64 + {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release DirectSound|x64.Build.0 = Release|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {ABB71A76-42B0-47A4-973A-42E3D920C6FD}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4507,6 +5267,9 @@ Global {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|Win32.ActiveCfg = Release Passthrough|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.ActiveCfg = Release Passthrough|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.All|x64.Build.0 = Release Passthrough|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug DirectSound|x64.Build.0 = Debug|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4514,6 +5277,9 @@ Global {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|Win32.Build.0 = Debug|Win32 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.ActiveCfg = Debug|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Debug|x64.Build.0 = Debug|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release DirectSound|Win32.ActiveCfg = Release Passthrough|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release DirectSound|x64.ActiveCfg = Release Passthrough|x64 + {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release DirectSound|x64.Build.0 = Release Passthrough|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {4D418176-3B33-47E6-A63E-01BA34ADD21C}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4539,11 +5305,17 @@ Global {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.ActiveCfg = Release|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|Win32.Build.0 = Release|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.All|x64.ActiveCfg = Release|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|Win32.ActiveCfg = Debug|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Debug|x64.ActiveCfg = Debug|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release DirectSound|Win32.Build.0 = Release|Win32 + {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release DirectSound|x64.ActiveCfg = Release|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {7D3122C7-C9D0-3748-81F8-F0DDCB40BF5E}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4567,6 +5339,9 @@ Global {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|Win32.ActiveCfg = Release|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.ActiveCfg = Release|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.All|x64.Build.0 = Release|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug DirectSound|x64.Build.0 = Debug|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4574,6 +5349,9 @@ Global {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|Win32.Build.0 = Debug|Win32 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.ActiveCfg = Debug|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Debug|x64.Build.0 = Debug|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release DirectSound|x64.ActiveCfg = Release|x64 + {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release DirectSound|x64.Build.0 = Release|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {EF300386-A8DF-4372-B6D8-FB9BFFCA9AED}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4599,6 +5377,9 @@ Global {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.ActiveCfg = Release|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|Win32.Build.0 = Release|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.All|x64.ActiveCfg = Release|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 @@ -4606,6 +5387,9 @@ Global {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|Win32.Build.0 = Debug|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.ActiveCfg = Debug|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Debug|x64.Build.0 = Debug|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release DirectSound|Win32.Build.0 = Release|Win32 + {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release DirectSound|x64.ActiveCfg = Release|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {B808178B-82F0-4CF4-A2B1-921939FA24D0}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4631,6 +5415,9 @@ Global {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|Win32.ActiveCfg = Release|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.ActiveCfg = Release|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.All|x64.Build.0 = Release|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug DirectSound|x64.Build.0 = Debug|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4638,6 +5425,9 @@ Global {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|Win32.Build.0 = Debug|Win32 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.ActiveCfg = Debug|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Debug|x64.Build.0 = Debug|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release DirectSound|x64.ActiveCfg = Release|x64 + {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release DirectSound|x64.Build.0 = Release|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {9778F1C0-09BC-4698-8EBC-BD982247209A}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4663,6 +5453,9 @@ Global {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|Win32.ActiveCfg = Release|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.ActiveCfg = Release|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.All|x64.Build.0 = Release|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug DirectSound|x64.Build.0 = Debug|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4670,6 +5463,9 @@ Global {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|Win32.Build.0 = Debug|Win32 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.ActiveCfg = Debug|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Debug|x64.Build.0 = Debug|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release DirectSound|x64.ActiveCfg = Release|x64 + {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release DirectSound|x64.Build.0 = Release|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {AFA983D6-4569-4F88-BA94-555ED00FD9A8}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4695,6 +5491,9 @@ Global {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.ActiveCfg = Release|Win32 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|Win32.Build.0 = Release|Win32 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.All|x64.ActiveCfg = Release|Win32 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug DirectSound|x64.Build.0 = Debug|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4702,6 +5501,9 @@ Global {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|Win32.Build.0 = Debug|Win32 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.ActiveCfg = Debug|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Debug|x64.Build.0 = Debug|x64 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release DirectSound|x64.ActiveCfg = Release|x64 + {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release DirectSound|x64.Build.0 = Release|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {56B91D01-9150-4BBF-AFA1-5B68AB991B76}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4727,6 +5529,9 @@ Global {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.ActiveCfg = Release|Win32 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|Win32.Build.0 = Release|Win32 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.All|x64.ActiveCfg = Release|Win32 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug DirectSound|x64.Build.0 = Debug|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4734,6 +5539,9 @@ Global {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|Win32.Build.0 = Debug|Win32 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.ActiveCfg = Debug|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Debug|x64.Build.0 = Debug|x64 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release DirectSound|x64.ActiveCfg = Release|x64 + {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release DirectSound|x64.Build.0 = Release|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {990BAA76-89D3-4E38-8479-C7B28784EFC8}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4759,6 +5567,9 @@ Global {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|Win32.ActiveCfg = Release|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.ActiveCfg = Release|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.All|x64.Build.0 = Release|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug DirectSound|x64.Build.0 = Debug|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4766,6 +5577,9 @@ Global {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|Win32.Build.0 = Debug|Win32 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.ActiveCfg = Debug|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Debug|x64.Build.0 = Debug|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release DirectSound|x64.ActiveCfg = Release|x64 + {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release DirectSound|x64.Build.0 = Release|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {1E21AFE0-6FDB-41D2-942D-863607C24B91}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4791,6 +5605,9 @@ Global {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|Win32.ActiveCfg = Release|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.ActiveCfg = Release|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.All|x64.Build.0 = Release|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug DirectSound|x64.Build.0 = Debug|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -4798,6 +5615,9 @@ Global {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|Win32.Build.0 = Debug|Win32 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.ActiveCfg = Debug|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Debug|x64.Build.0 = Debug|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release DirectSound|x64.ActiveCfg = Release|x64 + {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release DirectSound|x64.Build.0 = Release|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {2E250296-0C08-4342-9C8A-BCBDD0E7DF65}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -4823,12 +5643,18 @@ Global {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.ActiveCfg = Release|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|Win32.Build.0 = Release|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.All|x64.ActiveCfg = Release|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.ActiveCfg = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|Win32.Build.0 = Debug|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Debug|x64.ActiveCfg = Debug|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release DirectSound|Win32.Build.0 = Release|Win32 + {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release DirectSound|x64.ActiveCfg = Release|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4853,12 +5679,18 @@ Global {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.ActiveCfg = Release|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|Win32.Build.0 = Release|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.All|x64.ActiveCfg = Release|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.ActiveCfg = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|Win32.Build.0 = Debug|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Debug|x64.ActiveCfg = Debug|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D578E676-7EC8-4548-BD8B-845C635F14AD}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4883,12 +5715,18 @@ Global {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.ActiveCfg = Release|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|Win32.Build.0 = Release|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.All|x64.ActiveCfg = Release|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.ActiveCfg = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|Win32.Build.0 = Debug|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Debug|x64.ActiveCfg = Debug|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release DirectSound|Win32.Build.0 = Release|Win32 + {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release DirectSound|x64.ActiveCfg = Release|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {D331904D-A00A-4694-A5A3-FCFF64AB5DBE}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4913,12 +5751,18 @@ Global {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.ActiveCfg = Release|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|Win32.Build.0 = Release|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.All|x64.ActiveCfg = Release|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.ActiveCfg = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|Win32.Build.0 = Debug|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Debug|x64.ActiveCfg = Debug|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release DirectSound|Win32.Build.0 = Release|Win32 + {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release DirectSound|x64.ActiveCfg = Release|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {B4B62169-5AD4-4559-8707-3D933AC5DB39}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4943,12 +5787,18 @@ Global {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.ActiveCfg = Release|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|Win32.Build.0 = Release|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.All|x64.ActiveCfg = Release|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.ActiveCfg = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|Win32.Build.0 = Debug|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Debug|x64.ActiveCfg = Debug|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release DirectSound|Win32.Build.0 = Release|Win32 + {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release DirectSound|x64.ActiveCfg = Release|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -4973,11 +5823,17 @@ Global {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|Win32.ActiveCfg = Release|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|Win32.Build.0 = Release|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64.ActiveCfg = Release|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.ActiveCfg = Debug|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.ActiveCfg = Debug|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release DirectSound|Win32.Build.0 = Release|Win32 + {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release DirectSound|x64.ActiveCfg = Release|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5001,12 +5857,18 @@ Global {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.Build.0 = Release|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.ActiveCfg = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|Win32.Build.0 = Debug|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Debug|x64.ActiveCfg = Debug|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release DirectSound|Win32.Build.0 = Release|Win32 + {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release DirectSound|x64.ActiveCfg = Release|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {23B4D303-79FC-49E0-89E2-2280E7E28940}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5031,12 +5893,18 @@ Global {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.ActiveCfg = Release|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|Win32.Build.0 = Release|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.All|x64.ActiveCfg = Release|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.ActiveCfg = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|Win32.Build.0 = Debug|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Debug|x64.ActiveCfg = Debug|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release DirectSound|Win32.Build.0 = Release|Win32 + {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release DirectSound|x64.ActiveCfg = Release|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {1CED5987-A529-46DC-B30F-870D85FF9C94}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5061,6 +5929,9 @@ Global {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.ActiveCfg = Release|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.ActiveCfg = Release|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.Build.0 = Release|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug DirectSound|Win32.ActiveCfg = Debug|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug DirectSound|x64.ActiveCfg = Debug|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug DirectSound|x64.Build.0 = Debug|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug_RTL_dll|x64.ActiveCfg = Debug|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug_RTL_dll|x64.Build.0 = Debug|x64 @@ -5068,6 +5939,9 @@ Global {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.Build.0 = Debug|Win32 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.ActiveCfg = Debug|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.Build.0 = Debug|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release DirectSound|Win32.ActiveCfg = Release|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release DirectSound|x64.ActiveCfg = Release|x64 + {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release DirectSound|x64.Build.0 = Release|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|x64 {C13CC324-0032-4492-9A30-310A6BD64FF5}.Release_Dynamic_SSE|x64.Build.0 = Release|x64 @@ -5093,12 +5967,18 @@ Global {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.ActiveCfg = Release|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.Build.0 = Release|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64.ActiveCfg = Release|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.ActiveCfg = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.Build.0 = Debug|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.ActiveCfg = Debug|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release DirectSound|Win32.Build.0 = Release|Win32 + {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release DirectSound|x64.ActiveCfg = Release|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5123,12 +6003,18 @@ Global {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.ActiveCfg = Release|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.Build.0 = Release|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64.ActiveCfg = Release|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.ActiveCfg = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.Build.0 = Debug|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.ActiveCfg = Debug|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release DirectSound|Win32.Build.0 = Release|Win32 + {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release DirectSound|x64.ActiveCfg = Release|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5153,12 +6039,18 @@ Global {BED7539C-0099-4A14-AD5D-30828F15A171}.All|Win32.ActiveCfg = Release|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.All|Win32.Build.0 = Release|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.All|x64.ActiveCfg = Release|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.ActiveCfg = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|Win32.Build.0 = Debug|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Debug|x64.ActiveCfg = Debug|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Release DirectSound|Win32.Build.0 = Release|Win32 + {BED7539C-0099-4A14-AD5D-30828F15A171}.Release DirectSound|x64.ActiveCfg = Release|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {BED7539C-0099-4A14-AD5D-30828F15A171}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5183,6 +6075,9 @@ Global {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.All|Win32.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.All|Win32.Build.0 = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.All|x64.ActiveCfg = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug DirectSound|Win32.ActiveCfg = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug DirectSound|Win32.Build.0 = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug DirectSound|x64.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug_RTL_dll|Win32.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug_RTL_dll|Win32.Build.0 = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug_RTL_dll|x64.ActiveCfg = All|Win32 @@ -5190,6 +6085,9 @@ Global {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug|Win32.Build.0 = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug|x64.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Debug|x64.Build.0 = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release DirectSound|Win32.ActiveCfg = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release DirectSound|Win32.Build.0 = All|Win32 + {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release DirectSound|x64.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release_Dynamic_SSE|Win32.ActiveCfg = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release_Dynamic_SSE|Win32.Build.0 = All|Win32 {9D04A840-CE18-4FF5-A6D3-0A2BB92FF2E6}.Release_Dynamic_SSE|x64.ActiveCfg = All|Win32 @@ -5215,6 +6113,9 @@ Global {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.All|Win32.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.All|Win32.Build.0 = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.All|x64.ActiveCfg = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug DirectSound|Win32.ActiveCfg = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug DirectSound|Win32.Build.0 = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug DirectSound|x64.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug_RTL_dll|Win32.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug_RTL_dll|Win32.Build.0 = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug_RTL_dll|x64.ActiveCfg = All|Win32 @@ -5222,6 +6123,9 @@ Global {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug|Win32.Build.0 = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug|x64.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Debug|x64.Build.0 = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release DirectSound|Win32.ActiveCfg = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release DirectSound|Win32.Build.0 = All|Win32 + {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release DirectSound|x64.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release_Dynamic_SSE|Win32.ActiveCfg = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release_Dynamic_SSE|Win32.Build.0 = All|Win32 {85F0CF8C-C7AB-48F6-BA19-CC94CF87F981}.Release_Dynamic_SSE|x64.ActiveCfg = All|Win32 @@ -5247,12 +6151,18 @@ Global {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.All|Win32.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.All|Win32.Build.0 = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.All|x64.ActiveCfg = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug DirectSound|Win32.ActiveCfg = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug DirectSound|Win32.Build.0 = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug DirectSound|x64.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug_RTL_dll|Win32.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug_RTL_dll|Win32.Build.0 = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug_RTL_dll|x64.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug|Win32.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug|Win32.Build.0 = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Debug|x64.ActiveCfg = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release DirectSound|Win32.ActiveCfg = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release DirectSound|Win32.Build.0 = All|Win32 + {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release DirectSound|x64.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release_Dynamic_SSE|Win32.ActiveCfg = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release_Dynamic_SSE|Win32.Build.0 = All|Win32 {EDDB8AB9-C53E-44C0-A620-0E86C2CBD5D5}.Release_Dynamic_SSE|x64.ActiveCfg = All|Win32 @@ -5277,12 +6187,18 @@ Global {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.All|Win32.ActiveCfg = Release|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.All|Win32.Build.0 = Release|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.All|x64.ActiveCfg = Release|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug|Win32.ActiveCfg = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug|Win32.Build.0 = Debug|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Debug|x64.ActiveCfg = Debug|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release DirectSound|Win32.Build.0 = Release|Win32 + {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release DirectSound|x64.ActiveCfg = Release|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {3970BCDE-BE1A-4CF3-A65F-5264BA2E47B5}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5307,12 +6223,18 @@ Global {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.All|Win32.ActiveCfg = Release|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.All|Win32.Build.0 = Release|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.All|x64.ActiveCfg = Release|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug|Win32.ActiveCfg = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug|Win32.Build.0 = Debug|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Debug|x64.ActiveCfg = Debug|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release DirectSound|Win32.Build.0 = Release|Win32 + {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release DirectSound|x64.ActiveCfg = Release|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {B1E7E876-347F-4DC9-9BEA-D1AFBD9DFF8A}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5337,12 +6259,18 @@ Global {1BDAB935-27DC-47E3-95EA-17E024D39C31}.All|Win32.ActiveCfg = Release|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.All|Win32.Build.0 = Release|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.All|x64.ActiveCfg = Release|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug|Win32.ActiveCfg = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug|Win32.Build.0 = Debug|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Debug|x64.ActiveCfg = Debug|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release DirectSound|Win32.Build.0 = Release|Win32 + {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release DirectSound|x64.ActiveCfg = Release|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {1BDAB935-27DC-47E3-95EA-17E024D39C31}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5367,12 +6295,18 @@ Global {97D25665-34CD-4E0C-96E7-88F0795B8883}.All|Win32.ActiveCfg = Release|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.All|Win32.Build.0 = Release|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.All|x64.ActiveCfg = Release|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug|Win32.ActiveCfg = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug|Win32.Build.0 = Debug|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Debug|x64.ActiveCfg = Debug|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release DirectSound|Win32.Build.0 = Release|Win32 + {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release DirectSound|x64.ActiveCfg = Release|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {97D25665-34CD-4E0C-96E7-88F0795B8883}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5397,12 +6331,18 @@ Global {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.ActiveCfg = Release|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|Win32.Build.0 = Release|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.All|x64.ActiveCfg = Release|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug_RTL_dll|Win32.ActiveCfg = Debug_RTL_dll|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug_RTL_dll|Win32.Build.0 = Debug_RTL_dll|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug_RTL_dll|x64.ActiveCfg = Debug_RTL_dll|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.ActiveCfg = Debug|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|Win32.Build.0 = Debug|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Debug|x64.ActiveCfg = Debug|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release DirectSound|Win32.Build.0 = Release|Win32 + {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release DirectSound|x64.ActiveCfg = Release|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release_Dynamic_SSE|Win32.ActiveCfg = Release_Dynamic|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release_Dynamic_SSE|Win32.Build.0 = Release_Dynamic|Win32 {E972C52F-9E85-4D65-B19C-031E511E9DB4}.Release_Dynamic_SSE|x64.ActiveCfg = Release_Dynamic|Win32 @@ -5427,12 +6367,18 @@ Global {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.ActiveCfg = Release|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|Win32.Build.0 = Release|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.All|x64.ActiveCfg = Release|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.ActiveCfg = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|Win32.Build.0 = Debug|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Debug|x64.ActiveCfg = Debug|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release DirectSound|Win32.Build.0 = Release|Win32 + {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release DirectSound|x64.ActiveCfg = Release|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release_Dynamic_SSE|Win32.ActiveCfg = Release_Dynamic_SSE|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release_Dynamic_SSE|Win32.Build.0 = Release_Dynamic_SSE|Win32 {03207781-0D1C-4DB3-A71D-45C608F28DBD}.Release_Dynamic_SSE|x64.ActiveCfg = Release_Dynamic_SSE|Win32 @@ -5457,12 +6403,18 @@ Global {5BE9A596-F11F-4379-928C-412F81AE182B}.All|Win32.ActiveCfg = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.All|Win32.Build.0 = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.All|x64.ActiveCfg = Release|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug|Win32.ActiveCfg = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug|Win32.Build.0 = Debug|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Debug|x64.ActiveCfg = Debug|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Release DirectSound|Win32.Build.0 = Release|Win32 + {5BE9A596-F11F-4379-928C-412F81AE182B}.Release DirectSound|x64.ActiveCfg = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 @@ -5484,6 +6436,186 @@ Global {5BE9A596-F11F-4379-928C-412F81AE182B}.Release|Win32.ActiveCfg = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Release|Win32.Build.0 = Release|Win32 {5BE9A596-F11F-4379-928C-412F81AE182B}.Release|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.All|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.All|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.All|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug|Win32.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug|Win32.Build.0 = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Debug|x64.ActiveCfg = Debug|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release DirectSound|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release DirectSound|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Dynamic|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_RTL_dll|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_RTL_dll|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_RTL_dll|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE2|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE2|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_SSE2|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Static_SSE|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Static_SSE|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release_Static_SSE|x64.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|Win32.ActiveCfg = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|Win32.Build.0 = Release|Win32 + {C0779BCC-C037-4F58-B890-EF37BA956B3C}.Release|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.All|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug DirectSound|Win32.ActiveCfg = Debug DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug DirectSound|Win32.Build.0 = Debug DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug DirectSound|x64.ActiveCfg = Debug DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.Build.0 = Debug DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|x64.ActiveCfg = Debug|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release DirectSound|Win32.ActiveCfg = Release DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release DirectSound|Win32.Build.0 = Release DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release DirectSound|x64.ActiveCfg = Release DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Dynamic|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_RTL_dll|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_SSE2|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|Win32.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|Win32.Build.0 = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release_Static_SSE|x64.ActiveCfg = Release|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.ActiveCfg = Release DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release DirectSound|Win32 + {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.All|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.All|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.All|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug|Win32.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug|Win32.Build.0 = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Debug|x64.ActiveCfg = Debug|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release DirectSound|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release DirectSound|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Dynamic|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_RTL_dll|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_RTL_dll|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_RTL_dll|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE2|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE2|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_SSE2|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Static_SSE|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Static_SSE|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release_Static_SSE|x64.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release|Win32.ActiveCfg = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release|Win32.Build.0 = Release|Win32 + {13077E43-E5DF-4EF6-9EB1-2A0B22E8DFAF}.Release|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.All|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.All|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.All|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug|Win32.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug|Win32.Build.0 = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Debug|x64.ActiveCfg = Debug|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release DirectSound|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release DirectSound|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Dynamic|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_RTL_dll|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_RTL_dll|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_RTL_dll|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE2|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE2|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_SSE2|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Static_SSE|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Static_SSE|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release_Static_SSE|x64.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release|Win32.ActiveCfg = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release|Win32.Build.0 = Release|Win32 + {AB03E82B-48B1-4374-B32A-A1AF83DDC6C2}.Release|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.All|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.All|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.All|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug DirectSound|Win32.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug DirectSound|Win32.Build.0 = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug DirectSound|x64.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug_RTL_dll|Win32.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug_RTL_dll|Win32.Build.0 = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug_RTL_dll|x64.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug|Win32.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug|Win32.Build.0 = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Debug|x64.ActiveCfg = Debug|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release DirectSound|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release DirectSound|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release DirectSound|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic_SSE|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic_SSE|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic_SSE|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Dynamic|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_RTL_dll|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_RTL_dll|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_RTL_dll|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE2|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE2|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_SSE2|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Static_SSE|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Static_SSE|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release_Static_SSE|x64.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release|Win32.ActiveCfg = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release|Win32.Build.0 = Release|Win32 + {9B9D2551-D6BD-4F20-8BE5-DE30E154A064}.Release|x64.ActiveCfg = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/configure.ac b/configure.ac index f44859f55c..6b39505fff 100644 --- a/configure.ac +++ b/configure.ac @@ -464,6 +464,7 @@ if test "${enable_debug}" = "yes"; then CFLAGS="$saved_CFLAGS" if test "x${ax_cv_c_compiler_vendor}" = "xgnu" ; then + APR_ADDTO(SWITCH_AM_CFLAGS, -Wno-unused-result) APR_ADDTO(SWITCH_AM_CFLAGS, -g -ggdb) export DEBUG_CFLAGS="-g -ggdb" fi diff --git a/docs/SubmittingPatches b/docs/SubmittingPatches index 8e9b9d9e94..16be7a2479 100644 --- a/docs/SubmittingPatches +++ b/docs/SubmittingPatches @@ -50,7 +50,8 @@ commit, perhaps your commit should be broken into smaller separate commits. The commit body can be longer and can consist of multiple paragraphs. -The text of the body should be hard wrapped to 68-72 characters. +The text of the body should be hard wrapped to 68-72 characters. (In +Emacs you can hard wrap text with `M-q`.) When writing the commit body, describe in detail the problem that your commit aims to solve, how your commit solves the problem, and any diff --git a/html5/verto/demo/js/verto-min.js b/html5/verto/demo/js/verto-min.js index ac33a07ec2..01ee8b57a4 100644 --- a/html5/verto/demo/js/verto-min.js +++ b/html5/verto/demo/js/verto-min.js @@ -1,3429 +1,223 @@ -/* - * Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * Copyright (C) 2005-2014, Anthony Minessale II - * - * Version: MPL 1.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * - * The Initial Developer of the Original Code is - * Anthony Minessale II - * Portions created by the Initial Developer are Copyright (C) - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Anthony Minessale II - * - * jquery.FSRTC.js - WebRTC Glue code - * - */ -(function($) { - - // Find the line in sdpLines that starts with |prefix|, and, if specified, - // contains |substr| (case-insensitive search). - function findLine(sdpLines, prefix, substr) { - return findLineInRange(sdpLines, 0, -1, prefix, substr); - } - - // Find the line in sdpLines[startLine...endLine - 1] that starts with |prefix| - // and, if specified, contains |substr| (case-insensitive search). - function findLineInRange(sdpLines, startLine, endLine, prefix, substr) { - var realEndLine = (endLine != -1) ? endLine : sdpLines.length; - for (var i = startLine; i < realEndLine; ++i) { - if (sdpLines[i].indexOf(prefix) === 0) { - if (!substr || sdpLines[i].toLowerCase().indexOf(substr.toLowerCase()) !== -1) { - return i; - } - } - } - return null; - } - - // Gets the codec payload type from an a=rtpmap:X line. - function getCodecPayloadType(sdpLine) { - var pattern = new RegExp('a=rtpmap:(\\d+) \\w+\\/\\d+'); - var result = sdpLine.match(pattern); - return (result && result.length == 2) ? result[1] : null; - } - - // Returns a new m= line with the specified codec as the first one. - function setDefaultCodec(mLine, payload) { - var elements = mLine.split(' '); - var newLine = []; - var index = 0; - for (var i = 0; i < elements.length; i++) { - if (index === 3) // Format of media starts from the fourth. - newLine[index++] = payload; // Put target payload to the first. - if (elements[i] !== payload) newLine[index++] = elements[i]; - } - return newLine.join(' '); - } - - $.FSRTC = function(options) { - this.options = $.extend({ - useVideo: null, - useStereo: false, - userData: null, - iceServers: false, - videoParams: {}, - callbacks: { - onICEComplete: function() {}, - onICE: function() {}, - onOfferSDP: function() {} - } - }, - options); - - this.mediaData = { - SDP: null, - profile: {}, - candidateList: [] - }; - - this.constraints = { - optional: [{ - 'DtlsSrtpKeyAgreement': 'true' - }], - mandatory: { - OfferToReceiveAudio: true, - OfferToReceiveVideo: this.options.useVideo ? true : false, - } - }; - - if (self.options.useVideo) { - self.options.useVideo.style.display = 'none'; - } - - setCompat(); - checkCompat(); - }; - - $.FSRTC.prototype.useVideo = function(obj) { - var self = this; - - if (obj) { - self.options.useVideo = obj; - self.constraints.mandatory.OfferToReceiveVideo = true; - } else { - self.options.useVideo = null; - self.constraints.mandatory.OfferToReceiveVideo = false; - } - - if (self.options.useVideo) { - self.options.useVideo.style.display = 'none'; - } - }; - - $.FSRTC.prototype.useStereo = function(on) { - var self = this; - self.options.useStereo = on; - }; - - // Sets Opus in stereo if stereo is enabled, by adding the stereo=1 fmtp param. - $.FSRTC.prototype.stereoHack = function(sdp) { - var self = this; - - if (!self.options.useStereo) { - return sdp; - } - - var sdpLines = sdp.split('\r\n'); - - // Find opus payload. - var opusIndex = findLine(sdpLines, 'a=rtpmap', 'opus/48000'), - opusPayload; - if (opusIndex) { - opusPayload = getCodecPayloadType(sdpLines[opusIndex]); - } - - // Find the payload in fmtp line. - var fmtpLineIndex = findLine(sdpLines, 'a=fmtp:' + opusPayload.toString()); - if (fmtpLineIndex === null) return sdp; - - // Append stereo=1 to fmtp line. - sdpLines[fmtpLineIndex] = sdpLines[fmtpLineIndex].concat('; stereo=1'); - - sdp = sdpLines.join('\r\n'); - return sdp; - }; - - function setCompat() { - $.FSRTC.moz = !!navigator.mozGetUserMedia; - //navigator.getUserMedia || (navigator.getUserMedia = navigator.mozGetUserMedia || navigator.webkitGetUserMedia || navigator.msGetUserMedia); - if (!navigator.getUserMedia) { - navigator.getUserMedia = navigator.mozGetUserMedia || navigator.webkitGetUserMedia || navigator.msGetUserMedia; - } - } - - function checkCompat() { - if (!navigator.getUserMedia) { - alert('This application cannot function in this browser.'); - return false; - } - return true; - } - - function onStreamError(self) { - console.log('There has been a problem retrieving the streams - did you allow access?'); - - } - - function onStreamSuccess(self) { - console.log("Stream Success"); - } - - function onICE(self, candidate) { - self.mediaData.candidate = candidate; - self.mediaData.candidateList.push(self.mediaData.candidate); - - doCallback(self, "onICE"); - } - - function doCallback(self, func, arg) { - if (func in self.options.callbacks) { - self.options.callbacks[func](self, arg); - } - } - - function onICEComplete(self, candidate) { - console.log("ICE Complete"); - doCallback(self, "onICEComplete"); - } - - function onChannelError(self, e) { - console.error("Channel Error", e); - doCallback(self, "onError", e); - } - - function onICESDP(self, sdp) { - self.mediaData.SDP = self.stereoHack(sdp.sdp); - console.log("ICE SDP"); - doCallback(self, "onICESDP"); - } - - function onAnswerSDP(self, sdp) { - self.answer.SDP = self.stereoHack(sdp.sdp); - console.log("ICE ANSWER SDP"); - doCallback(self, "onAnswerSDP", self.answer.SDP); - } - - function onMessage(self, msg) { - console.log("Message"); - doCallback(self, "onICESDP", msg); - } - - function onRemoteStream(self, stream) { - if (self.options.useVideo) { - self.options.useVideo.style.display = 'block'; - } - - var element = self.options.useAudio; - console.log("REMOTE STREAM", stream, element); - - if (typeof element.srcObject !== 'undefined') { - element.srcObject = stream; - } else if (typeof element.mozSrcObject !== 'undefined') { - element.mozSrcObject = stream; - } else if (typeof element.src !== 'undefined') { - element.src = URL.createObjectURL(stream); - } else { - console.error('Error attaching stream to element.'); - } - - self.options.useAudio.play(); - self.remoteStream = stream; - } - - function onOfferSDP(self, sdp) { - self.mediaData.SDP = self.stereoHack(sdp.sdp); - console.log("Offer SDP"); - doCallback(self, "onOfferSDP"); - } - - $.FSRTC.prototype.answer = function(sdp, onSuccess, onError) { - this.peer.addAnswerSDP({ - type: "answer", - sdp: sdp - }, - onSuccess, onError); - }; - - $.FSRTC.prototype.stop = function() { - var self = this; - - if (self.options.useVideo) { - self.options.useVideo.style.display = 'none'; - } - - if (self.localStream) { - self.localStream.stop(); - self.localStream = null; - } - - if (self.peer) { - console.log("stopping peer"); - self.peer.stop(); - } - }; - - $.FSRTC.prototype.createAnswer = function(sdp) { - var self = this; - self.type = "answer"; - self.remoteSDP = sdp; - console.debug("inbound sdp: ", sdp); - - function onSuccess(stream) { - self.localStream = stream; - - self.peer = RTCPeerConnection({ - type: self.type, - attachStream: self.localStream, - onICE: function(candidate) { - return onICE(self, candidate); - }, - onICEComplete: function() { - return onICEComplete(self); - }, - onRemoteStream: function(stream) { - return onRemoteStream(self, stream); - }, - onICESDP: function(sdp) { - return onICESDP(self, sdp); - }, - onChannelError: function(e) { - return onChannelError(self, e); - }, - constraints: self.constraints, - iceServers: self.options.iceServers, - offerSDP: { - type: "offer", - sdp: self.remoteSDP - } - }); - - onStreamSuccess(self); - } - - function onError() { - onStreamError(self); - } - - getUserMedia({ - constraints: { - audio: true, - video: this.options.useVideo ? { - mandatory: this.options.videoParams, - optional: [] - } : null - }, - video: this.options.useVideo ? true : false, - onsuccess: onSuccess, - onerror: onError - }); - - }; - - $.FSRTC.prototype.call = function(profile) { - checkCompat(); - - var self = this; - - self.type = "offer"; - - function onSuccess(stream) { - self.localStream = stream; - - self.peer = RTCPeerConnection({ - type: self.type, - attachStream: self.localStream, - onICE: function(candidate) { - return onICE(self, candidate); - }, - onICEComplete: function() { - return onICEComplete(self); - }, - onRemoteStream: function(stream) { - return onRemoteStream(self, stream); - }, - onOfferSDP: function(sdp) { - return onOfferSDP(self, sdp); - }, - onICESDP: function(sdp) { - return onICESDP(self, sdp); - }, - onChannelError: function(e) { - return onChannelError(self, e); - }, - constraints: self.constraints, - iceServers: self.options.iceServers, - }); - - onStreamSuccess(self); - } - - function onError() { - onStreamError(self); - } - - getUserMedia({ - constraints: { - audio: true, - video: this.options.useVideo ? { - mandatory: this.options.videoParams, - optional: [] - } : null - }, - video: this.options.useVideo ? true : false, - onsuccess: onSuccess, - onerror: onError - }); - - /* - navigator.getUserMedia({ - video: this.options.useVideo, - audio: true - }, onSuccess, onError); -*/ - - }; - - // DERIVED from RTCPeerConnection-v1.5 - // 2013, @muazkh - github.com/muaz-khan - // MIT License - https://www.webrtc-experiment.com/licence/ - // Documentation - https://github.com/muaz-khan/WebRTC-Experiment/tree/master/RTCPeerConnection - window.moz = !!navigator.mozGetUserMedia; - - function RTCPeerConnection(options) { - - var w = window, - PeerConnection = w.mozRTCPeerConnection || w.webkitRTCPeerConnection, - SessionDescription = w.mozRTCSessionDescription || w.RTCSessionDescription, - IceCandidate = w.mozRTCIceCandidate || w.RTCIceCandidate; - - var STUN = { - url: !moz ? 'stun:stun.l.google.com:19302' : 'stun:23.21.150.121' - }; - - var TURN = { - url: 'turn:homeo@turn.bistri.com:80', - credential: 'homeo' - }; - - var iceServers = null; - - if (options.iceServers) { - var tmp = options.iceServers;; - - if (typeof(tmp) === "boolean") { - tmp = null; - } - - if (tmp && typeof(tmp) !== "array") { - console.warn("iceServers must be an array, reverting to default ice servers"); - tmp = null; - } - - iceServers = { - iceServers: tmp || [STUN] - }; - - if (!moz && !tmp) { - if (parseInt(navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)[2]) >= 28) TURN = { - url: 'turn:turn.bistri.com:80', - credential: 'homeo', - username: 'homeo' - }; - - iceServers.iceServers = [STUN]; - } - } - - var optional = { - optional: [] - }; - - if (!moz) { - optional.optional = [{ - DtlsSrtpKeyAgreement: true - }, - { - RtpDataChannels: options.onChannelMessage ? true : false - }]; - } - - var peer = new PeerConnection(iceServers, optional); - - openOffererChannel(); - var x = 0; - - peer.onicecandidate = function(event) { - if (event.candidate) { - options.onICE(event.candidate); - } else { - if (options.onICEComplete) { - options.onICEComplete(); - } - - if (options.type == "offer") { - if (!moz && !x && options.onICESDP) { - options.onICESDP(peer.localDescription); - //x = 1; - /* - x = 1; - peer.createOffer(function(sessionDescription) { - sessionDescription.sdp = serializeSdp(sessionDescription.sdp); - peer.setLocalDescription(sessionDescription); - if (options.onICESDP) { - options.onICESDP(sessionDescription); - } - }, onSdpError, constraints); - */ - } - } else { - if (!x && options.onICESDP) { - options.onICESDP(peer.localDescription); - //x = 1; - /* - x = 1; - peer.createAnswer(function(sessionDescription) { - sessionDescription.sdp = serializeSdp(sessionDescription.sdp); - peer.setLocalDescription(sessionDescription); - if (options.onICESDP) { - options.onICESDP(sessionDescription); - } - }, onSdpError, constraints); - */ - } - } - } - }; - - // attachStream = MediaStream; - if (options.attachStream) peer.addStream(options.attachStream); - - // attachStreams[0] = audio-stream; - // attachStreams[1] = video-stream; - // attachStreams[2] = screen-capturing-stream; - if (options.attachStreams && options.attachStream.length) { - var streams = options.attachStreams; - for (var i = 0; i < streams.length; i++) { - peer.addStream(streams[i]); - } - } - - peer.onaddstream = function(event) { - var remoteMediaStream = event.stream; - - // onRemoteStreamEnded(MediaStream) - remoteMediaStream.onended = function() { - if (options.onRemoteStreamEnded) options.onRemoteStreamEnded(remoteMediaStream); - }; - - // onRemoteStream(MediaStream) - if (options.onRemoteStream) options.onRemoteStream(remoteMediaStream); - - //console.debug('on:add:stream', remoteMediaStream); - }; - - var constraints = options.constraints || { - optional: [], - mandatory: { - OfferToReceiveAudio: true, - OfferToReceiveVideo: true - } - }; - - // onOfferSDP(RTCSessionDescription) - function createOffer() { - if (!options.onOfferSDP) return; - - peer.createOffer(function(sessionDescription) { - sessionDescription.sdp = serializeSdp(sessionDescription.sdp); - peer.setLocalDescription(sessionDescription); - options.onOfferSDP(sessionDescription); - if (moz && options.onICESDP) { - options.onICESDP(sessionDescription); - } - }, - onSdpError, constraints); - } - - // onAnswerSDP(RTCSessionDescription) - function createAnswer() { - if (options.type != "answer") return; - - //options.offerSDP.sdp = addStereo(options.offerSDP.sdp); - peer.setRemoteDescription(new SessionDescription(options.offerSDP), onSdpSuccess, onSdpError); - peer.createAnswer(function(sessionDescription) { - sessionDescription.sdp = serializeSdp(sessionDescription.sdp); - peer.setLocalDescription(sessionDescription); - if (options.onAnswerSDP) { - options.onAnswerSDP(sessionDescription); - } - }, - onSdpError, constraints); - } - - // if Mozilla Firefox & DataChannel; offer/answer will be created later - if ((options.onChannelMessage && !moz) || !options.onChannelMessage) { - createOffer(); - createAnswer(); - } - - // DataChannel Bandwidth - function setBandwidth(sdp) { - // remove existing bandwidth lines - sdp = sdp.replace(/b=AS([^\r\n]+\r\n)/g, ''); - sdp = sdp.replace(/a=mid:data\r\n/g, 'a=mid:data\r\nb=AS:1638400\r\n'); - - return sdp; - } - - // old: FF<>Chrome interoperability management - function getInteropSDP(sdp) { - var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split(''), - extractedChars = ''; - - function getChars() { - extractedChars += chars[parseInt(Math.random() * 40)] || ''; - if (extractedChars.length < 40) getChars(); - - return extractedChars; - } - - // usually audio-only streaming failure occurs out of audio-specific crypto line - // a=crypto:1 AES_CM_128_HMAC_SHA1_32 --------- kAttributeCryptoVoice - if (options.onAnswerSDP) sdp = sdp.replace(/(a=crypto:0 AES_CM_128_HMAC_SHA1_32)(.*?)(\r\n)/g, ''); - - // video-specific crypto line i.e. SHA1_80 - // a=crypto:1 AES_CM_128_HMAC_SHA1_80 --------- kAttributeCryptoVideo - var inline = getChars() + '\r\n' + (extractedChars = ''); - sdp = sdp.indexOf('a=crypto') == -1 ? sdp.replace(/c=IN/g, 'a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:' + inline + 'c=IN') : sdp; - - return sdp; - } - - function serializeSdp(sdp) { - //if (!moz) sdp = setBandwidth(sdp); - //sdp = getInteropSDP(sdp); - //console.debug(sdp); - return sdp; - } - - // DataChannel management - var channel; - - function openOffererChannel() { - if (!options.onChannelMessage || (moz && !options.onOfferSDP)) return; - - _openOffererChannel(); - - if (!moz) return; - navigator.mozGetUserMedia({ - audio: true, - fake: true - }, - function(stream) { - peer.addStream(stream); - createOffer(); - }, - useless); - } - - function _openOffererChannel() { - channel = peer.createDataChannel(options.channel || 'RTCDataChannel', moz ? {} : { - reliable: false - }); - - if (moz) channel.binaryType = 'blob'; - - setChannelEvents(); - } - - function setChannelEvents() { - channel.onmessage = function(event) { - if (options.onChannelMessage) options.onChannelMessage(event); - }; - - channel.onopen = function() { - if (options.onChannelOpened) options.onChannelOpened(channel); - }; - channel.onclose = function(event) { - if (options.onChannelClosed) options.onChannelClosed(event); - - console.warn('WebRTC DataChannel closed', event); - }; - channel.onerror = function(event) { - if (options.onChannelError) options.onChannelError(event); - - console.error('WebRTC DataChannel error', event); - }; - } - - if (options.onAnswerSDP && moz && options.onChannelMessage) openAnswererChannel(); - - function openAnswererChannel() { - peer.ondatachannel = function(event) { - channel = event.channel; - channel.binaryType = 'blob'; - setChannelEvents(); - }; - - if (!moz) return; - navigator.mozGetUserMedia({ - audio: true, - fake: true - }, - function(stream) { - peer.addStream(stream); - createAnswer(); - }, - useless); - } - - // fake:true is also available on chrome under a flag! - function useless() { - log('Error in fake:true'); - } - - function onSdpSuccess() {} - - function onSdpError(e) { - if (options.onChannelError) { - options.onChannelError(e); - } - console.error('sdp error:', e); - } - - return { - addAnswerSDP: function(sdp, cbSuccess, cbError) { - - peer.setRemoteDescription(new SessionDescription(sdp), cbSuccess ? cbSuccess : onSdpSuccess, cbError ? cbError : onSdpError); - }, - addICE: function(candidate) { - peer.addIceCandidate(new IceCandidate({ - sdpMLineIndex: candidate.sdpMLineIndex, - candidate: candidate.candidate - })); - }, - - peer: peer, - channel: channel, - sendData: function(message) { - if (channel) { - channel.send(message); - } - }, - - stop: function() { - peer.close(); - if (options.attachStream) { - options.attachStream.stop(); - } - } - - }; - } - - // getUserMedia - var video_constraints = { - mandatory: {}, - optional: [] - }; - - function getUserMedia(options) { - var n = navigator, - media; - n.getMedia = n.webkitGetUserMedia || n.mozGetUserMedia; - n.getMedia(options.constraints || { - audio: true, - video: video_constraints - }, - streaming, options.onerror || - function(e) { - console.error(e); - }); - - function streaming(stream) { - var video = options.video; - if (video) { - video[moz ? 'mozSrcObject' : 'src'] = moz ? stream : window.webkitURL.createObjectURL(stream); - //video.play(); - } - if (options.onsuccess) { - options.onsuccess(stream); - } - media = stream; - } - - return media; - } - -})(jQuery); -/* - * Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * Copyright (C) 2005-2014, Anthony Minessale II - * - * Version: MPL 1.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is jquery.jsonrpclient.js modified for Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * - * The Initial Developer of the Original Code is - * Textalk AB http://textalk.se/ - * Portions created by the Initial Developer are Copyright (C) - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Anthony Minessale II - * - * jquery.jsonrpclient.js - JSON RPC client code - * - */ -/** - * This plugin requires jquery.json.js to be available, or at least the methods $.toJSON and - * $.parseJSON. - * - * The plan is to make use of websockets if they are available, but work just as well with only - * http if not. - * - * Usage example: - * - * var foo = new $.JsonRpcClient({ ajaxUrl: '/backend/jsonrpc' }); - * foo.call( - * 'bar', [ 'A parameter', 'B parameter' ], - * function(result) { alert('Foo bar answered: ' + result.my_answer); }, - * function(error) { console.log('There was an error', error); } - * ); - * - * More examples are available in README.md - */ -(function($) { - /** - * @fn new - * @memberof $.JsonRpcClient - * - * @param options An object stating the backends: - * ajaxUrl A url (relative or absolute) to a http(s) backend. - * socketUrl A url (relative of absolute) to a ws(s) backend. - * onmessage A socket message handler for other messages (non-responses). - * getSocket A function returning a WebSocket or null. - * It must take an onmessage_cb and bind it to the onmessage event - * (or chain it before/after some other onmessage handler). - * Or, it could return null if no socket is available. - * The returned instance must have readyState <= 1, and if less than 1, - * react to onopen binding. - */ - $.JsonRpcClient = function(options) { - var self = this; - this.options = $.extend({ - ajaxUrl : null, - socketUrl : null, ///< The ws-url for default getSocket. - onmessage : null, ///< Other onmessage-handler. - login : null, /// auth login - passwd : null, /// auth passwd - sessid : null, - getSocket : function(onmessage_cb) { return self._getSocket(onmessage_cb); } - }, options); - - self.ws_cnt = 0; - - // Declare an instance version of the onmessage callback to wrap 'this'. - this.wsOnMessage = function(event) { self._wsOnMessage(event); }; - }; - - /// Holding the WebSocket on default getsocket. - $.JsonRpcClient.prototype._ws_socket = null; - - /// Object : { success_cb: cb, error_cb: cb } - $.JsonRpcClient.prototype._ws_callbacks = {}; - - /// The next JSON-RPC request id. - $.JsonRpcClient.prototype._current_id = 1; - - /** - * @fn call - * @memberof $.JsonRpcClient - * - * @param method The method to run on JSON-RPC server. - * @param params The params; an array or object. - * @param success_cb A callback for successful request. - * @param error_cb A callback for error. - */ - $.JsonRpcClient.prototype.call = function(method, params, success_cb, error_cb) { - // Construct the JSON-RPC 2.0 request. - - if (!params) { - params = {}; - } - - if (this.options.sessid) { - params.sessid = this.options.sessid; - } - - var request = { - jsonrpc : '2.0', - method : method, - params : params, - id : this._current_id++ // Increase the id counter to match request/response - }; - - if (!success_cb) { - success_cb = function(e){console.log("Success: ", e);}; - } - - if (!error_cb) { - error_cb = function(e){console.log("Error: ", e);}; - } - - // Try making a WebSocket call. - var socket = this.options.getSocket(this.wsOnMessage); - if (socket !== null) { - this._wsCall(socket, request, success_cb, error_cb); - return; - } - - // No WebSocket, and no HTTP backend? This won't work. - if (this.options.ajaxUrl === null) { - throw "$.JsonRpcClient.call used with no websocket and no http endpoint."; - } - - $.ajax({ - type : 'POST', - url : this.options.ajaxUrl, - data : $.toJSON(request), - dataType : 'json', - cache : false, - - success : function(data) { - if ('error' in data) error_cb(data.error, this); - success_cb(data.result, this); - }, - - // JSON-RPC Server could return non-200 on error - error : function(jqXHR, textStatus, errorThrown) { - try { - var response = $.parseJSON(jqXHR.responseText); - if ('console' in window) console.log(response); - error_cb(response.error, this); - } - catch (err) { - // Perhaps the responseText wasn't really a jsonrpc-error. - error_cb({ error: jqXHR.responseText }, this); - } - } - }); - }; - - /** - * Notify sends a command to the server that won't need a response. In http, there is probably - * an empty response - that will be dropped, but in ws there should be no response at all. - * - * This is very similar to call, but has no id and no handling of callbacks. - * - * @fn notify - * @memberof $.JsonRpcClient - * - * @param method The method to run on JSON-RPC server. - * @param params The params; an array or object. - */ - $.JsonRpcClient.prototype.notify = function(method, params) { - // Construct the JSON-RPC 2.0 request. - - if (this.options.sessid) { - params.sessid = this.options.sessid; - } - - var request = { - jsonrpc: '2.0', - method: method, - params: params - }; - - // Try making a WebSocket call. - var socket = this.options.getSocket(this.wsOnMessage); - if (socket !== null) { - this._wsCall(socket, request); - return; - } - - // No WebSocket, and no HTTP backend? This won't work. - if (this.options.ajaxUrl === null) { - throw "$.JsonRpcClient.notify used with no websocket and no http endpoint."; - } - - $.ajax({ - type : 'POST', - url : this.options.ajaxUrl, - data : $.toJSON(request), - dataType : 'json', - cache : false - }); - }; - - /** - * Make a batch-call by using a callback. - * - * The callback will get an object "batch" as only argument. On batch, you can call the methods - * "call" and "notify" just as if it was a normal $.JsonRpcClient object, and all calls will be - * sent as a batch call then the callback is done. - * - * @fn batch - * @memberof $.JsonRpcClient - * - * @param callback The main function which will get a batch handler to run call and notify on. - * @param all_done_cb A callback function to call after all results have been handled. - * @param error_cb A callback function to call if there is an error from the server. - * Note, that batch calls should always get an overall success, and the - * only error - */ - $.JsonRpcClient.prototype.batch = function(callback, all_done_cb, error_cb) { - var batch = new $.JsonRpcClient._batchObject(this, all_done_cb, error_cb); - callback(batch); - batch._execute(); - }; - - /** - * The default getSocket handler. - * - * @param onmessage_cb The callback to be bound to onmessage events on the socket. - * - * @fn _getSocket - * @memberof $.JsonRpcClient - */ - - $.JsonRpcClient.prototype.socketReady = function() { - if (this._ws_socket === null || this._ws_socket.readyState > 1) { - return false; - } - - return true; - } - - $.JsonRpcClient.prototype.closeSocket = function() { - if (self.socketReady()) { - this._ws_socket.onclose = function (w) {console.log("Closing Socket")} - this._ws_socket.close(); - } - } - - $.JsonRpcClient.prototype.loginData = function(params) { - self.options.login = params.login; - self.options.passwd = params.passwd; - } - - $.JsonRpcClient.prototype.connectSocket = function(onmessage_cb) { - var self = this; - - if (self.to) { - clearTimeout(self.to); - } - - if (!self.socketReady()) { - self.authing = false; - - if (self._ws_socket) { - delete self._ws_socket; - } - - // No socket, or dying socket, let's get a new one. - self._ws_socket = new WebSocket(self.options.socketUrl); - - if (self._ws_socket) { - // Set up onmessage handler. - self._ws_socket.onmessage = onmessage_cb; - self._ws_socket.onclose = function (w) { - if (!self.ws_sleep) { - self.ws_sleep = 1000; - } - - if (self.options.onWSClose) { - self.options.onWSClose(self); - } - - console.error("Websocket Lost " + self.ws_cnt + " sleep: " + self.ws_sleep + "msec"); - - self.to = setTimeout(function() { - console.log("Attempting Reconnection...."); - self.connectSocket(onmessage_cb); - }, self.ws_sleep); - - self.ws_cnt++; - - if (self.ws_sleep < 3000 && (self.ws_cnt % 10) == 0) { - self.ws_sleep += 1000; - } - } - - // Set up sending of message for when the socket is open. - self._ws_socket.onopen = function() { - if (self.to) { - clearTimeout(self.to); - } - self.ws_sleep = 1000; - self.ws_cnt = 0; - if (self.options.onWSConnect) { - self.options.onWSConnect(self); - } - - var req; - // Send the requests. - while (req = $.JsonRpcClient.q.pop()) { - self._ws_socket.send(req); - } - } - } - } - - return self._ws_socket ? true : false; - } - - $.JsonRpcClient.prototype._getSocket = function(onmessage_cb) { - // If there is no ws url set, we don't have a socket. - // Likewise, if there is no window.WebSocket. - if (this.options.socketUrl === null || !("WebSocket" in window)) return null; - - this.connectSocket(onmessage_cb); - - return this._ws_socket; - }; - - /** - * Queue to save messages delivered when websocket is not ready - */ - $.JsonRpcClient.q = []; - - /** - * Internal handler to dispatch a JRON-RPC request through a websocket. - * - * @fn _wsCall - * @memberof $.JsonRpcClient - */ - $.JsonRpcClient.prototype._wsCall = function(socket, request, success_cb, error_cb) { - var request_json = $.toJSON(request); - - if (socket.readyState < 1) { - // The websocket is not open yet; we have to set sending of the message in onopen. - self = this; // In closure below, this is set to the WebSocket. Use self instead. - - $.JsonRpcClient.q.push(request_json); - - - } - else { - // We have a socket and it should be ready to send on. - socket.send(request_json); - } - - // Setup callbacks. If there is an id, this is a call and not a notify. - if ('id' in request && typeof success_cb !== 'undefined') { - this._ws_callbacks[request.id] = { request: request_json, request_obj: request, success_cb: success_cb, error_cb: error_cb }; - } - }; - - /** - * Internal handler for the websocket messages. It determines if the message is a JSON-RPC - * response, and if so, tries to couple it with a given callback. Otherwise, it falls back to - * given external onmessage-handler, if any. - * - * @param event The websocket onmessage-event. - */ - $.JsonRpcClient.prototype._wsOnMessage = function(event) { - // Check if this could be a JSON RPC message. - var response; - try { - response = $.parseJSON(event.data); - - /// @todo Make using the jsonrcp 2.0 check optional, to use this on JSON-RPC 1 backends. - - if (typeof response === 'object' - && 'jsonrpc' in response - && response.jsonrpc === '2.0') { - - /// @todo Handle bad response (without id). - - // If this is an object with result, it is a response. - if ('result' in response && this._ws_callbacks[response.id]) { - // Get the success callback. - var success_cb = this._ws_callbacks[response.id].success_cb; - -/* - // set the sessid if present - if ('sessid' in response.result && !this.options.sessid || (this.options.sessid != response.result.sessid)) { - this.options.sessid = response.result.sessid; - if (this.options.sessid) { - console.log("setting session UUID to: " + this.options.sessid); - } - } -*/ - // Delete the callback from the storage. - delete this._ws_callbacks[response.id]; - - // Run callback with result as parameter. - success_cb(response.result, this); - return; - } - - // If this is an object with error, it is an error response. - else if ('error' in response && this._ws_callbacks[response.id]) { - - // Get the error callback. - var error_cb = this._ws_callbacks[response.id].error_cb; - var orig_req = this._ws_callbacks[response.id].request; - - // if this is an auth request, send the credentials and resend the failed request - if (!self.authing && response.error.code == -32000 && self.options.login && self.options.passwd) { - self.authing = true; - - this.call("login", { login: self.options.login, passwd: self.options.passwd}, - this._ws_callbacks[response.id].request_obj.method == "login" - ? - function(e) { - self.authing = false; - console.log("logged in"); - delete self._ws_callbacks[response.id]; - - if (self.options.onWSLogin) { - self.options.onWSLogin(true, self); - } - } - - : - - function(e) { - self.authing = false; - console.log("logged in, resending request id: " + response.id); - var socket = self.options.getSocket(self.wsOnMessage); - if (socket !== null) { - socket.send(orig_req); - } - if (self.options.onWSLogin) { - self.options.onWSLogin(true, self); - } - }, - - function(e) { - console.log("error logging in, request id:", response.id); - delete self._ws_callbacks[response.id]; - error_cb(response.error, this); - if (self.options.onWSLogin) { - self.options.onWSLogin(false, self); - } - } - - ); - return; - } - - // Delete the callback from the storage. - delete this._ws_callbacks[response.id]; - - // Run callback with the error object as parameter. - error_cb(response.error, this); - - return; - } - } - } - catch (err) { - // Probably an error while parsing a non json-string as json. All real JSON-RPC cases are - // handled above, and the fallback method is called below. - console.log("ERROR: "+ err); - return; - } - - // This is not a JSON-RPC response. Call the fallback message handler, if given. - if (typeof this.options.onmessage === 'function') { - event.eventData = response; - if (!event.eventData) { - event.eventData = {}; - } - - var reply = this.options.onmessage(event); - - if (reply && typeof reply === "object" && event.eventData.id) { - var msg = { - jsonrpc: "2.0", - id: event.eventData.id, - result: reply - }; - - var socket = self.options.getSocket(self.wsOnMessage); - if (socket !== null) { - socket.send($.toJSON(msg)); - } - } - - } - }; - - - /************************************************************************************************ - * Batch object with methods - ************************************************************************************************/ - - /** - * Handling object for batch calls. - */ - $.JsonRpcClient._batchObject = function(jsonrpcclient, all_done_cb, error_cb) { - // Array of objects to hold the call and notify requests. Each objects will have the request - // object, and unless it is a notify, success_cb and error_cb. - this._requests = []; - - this.jsonrpcclient = jsonrpcclient; - this.all_done_cb = all_done_cb; - this.error_cb = typeof error_cb === 'function' ? error_cb : function() {}; - - }; - - /** - * @sa $.JsonRpcClient.prototype.call - */ - $.JsonRpcClient._batchObject.prototype.call = function(method, params, success_cb, error_cb) { - - if (!params) { - params = {}; - } - - if (this.options.sessid) { - params.sessid = this.options.sessid; - } - - if (!success_cb) { - success_cb = function(e){console.log("Success: ", e);}; - } - - if (!error_cb) { - error_cb = function(e){console.log("Error: ", e);}; - } - - this._requests.push({ - request : { - jsonrpc : '2.0', - method : method, - params : params, - id : this.jsonrpcclient._current_id++ // Use the client's id series. - }, - success_cb : success_cb, - error_cb : error_cb - }); - }; - - /** - * @sa $.JsonRpcClient.prototype.notify - */ - $.JsonRpcClient._batchObject.prototype.notify = function(method, params) { - if (this.options.sessid) { - params.sessid = this.options.sessid; - } - - this._requests.push({ - request : { - jsonrpc : '2.0', - method : method, - params : params - } - }); - }; - - /** - * Executes the batched up calls. - */ - $.JsonRpcClient._batchObject.prototype._execute = function() { - var self = this; - - if (this._requests.length === 0) return; // All done :P - - // Collect all request data and sort handlers by request id. - var batch_request = []; - var handlers = {}; - - // If we have a WebSocket, just send the requests individually like normal calls. - var socket = self.jsonrpcclient.options.getSocket(self.jsonrpcclient.wsOnMessage); - if (socket !== null) { - for (var i = 0; i < this._requests.length; i++) { - var call = this._requests[i]; - var success_cb = ('success_cb' in call) ? call.success_cb : undefined; - var error_cb = ('error_cb' in call) ? call.error_cb : undefined; - self.jsonrpcclient._wsCall(socket, call.request, success_cb, error_cb); - } - if (typeof all_done_cb === 'function') all_done_cb(result); - return; - } - - for (var i = 0; i < this._requests.length; i++) { - var call = this._requests[i]; - batch_request.push(call.request); - - // If the request has an id, it should handle returns (otherwise it's a notify). - if ('id' in call.request) { - handlers[call.request.id] = { - success_cb : call.success_cb, - error_cb : call.error_cb - }; - } - } - - var success_cb = function(data) { self._batchCb(data, handlers, self.all_done_cb); }; - - // No WebSocket, and no HTTP backend? This won't work. - if (self.jsonrpcclient.options.ajaxUrl === null) { - throw "$.JsonRpcClient.batch used with no websocket and no http endpoint."; - } - - // Send request - $.ajax({ - url : self.jsonrpcclient.options.ajaxUrl, - data : $.toJSON(batch_request), - dataType : 'json', - cache : false, - type : 'POST', - - // Batch-requests should always return 200 - error : function(jqXHR, textStatus, errorThrown) { - self.error_cb(jqXHR, textStatus, errorThrown); - }, - success : success_cb - }); - }; - - /** - * Internal helper to match the result array from a batch call to their respective callbacks. - * - * @fn _batchCb - * @memberof $.JsonRpcClient - */ - $.JsonRpcClient._batchObject.prototype._batchCb = function(result, handlers, all_done_cb) { - for (var i = 0; i < result.length; i++) { - var response = result[i]; - - // Handle error - if ('error' in response) { - if (response.id === null || !(response.id in handlers)) { - // An error on a notify? Just log it to the console. - if ('console' in window) console.log(response); - } - else handlers[response.id].error_cb(response.error, this); - } - else { - // Here we should always have a correct id and no error. - if (!(response.id in handlers) && 'console' in window) console.log(response); - else handlers[response.id].success_cb(response.result, this); - } - } - - if (typeof all_done_cb === 'function') all_done_cb(result); - }; - -})(jQuery); - -/* - * Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * Copyright (C) 2005-2014, Anthony Minessale II - * - * Version: MPL 1.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Verto HTML5/Javascript Telephony Signaling and Control Protocol Stack for FreeSWITCH - * - * The Initial Developer of the Original Code is - * Anthony Minessale II - * Portions created by the Initial Developer are Copyright (C) - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * - * Anthony Minessale II - * - * jquery.verto.js - Main interface - * - */ - -(function($) { - - var generateGUID = (typeof(window.crypto) !== 'undefined' && typeof(window.crypto.getRandomValues) !== 'undefined') ? - function() { - // If we have a cryptographically secure PRNG, use that - // http://stackoverflow.com/questions/6906916/collisions-when-generating-uuids-in-javascript - var buf = new Uint16Array(8); - window.crypto.getRandomValues(buf); - var S4 = function(num) { - var ret = num.toString(16); - while (ret.length < 4) { - ret = "0" + ret; - } - return ret; - }; - return (S4(buf[0]) + S4(buf[1]) + "-" + S4(buf[2]) + "-" + S4(buf[3]) + "-" + S4(buf[4]) + "-" + S4(buf[5]) + S4(buf[6]) + S4(buf[7])); - } - - : - - function() { - // Otherwise, just use Math.random - // http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript/2117523#2117523 - return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { - var r = Math.random() * 16 | 0, - v = c == 'x' ? r : (r & 0x3 | 0x8); - return v.toString(16); - }); - }; - - /// MASTER OBJ - $.verto = function(options, callbacks) { - var verto = this; - - $.verto.saved.push(verto); - - verto.options = $.extend({ - login: null, - passwd: null, - socketUrl: null, - tag: null, - videoParams: {}, - iceServers: false, - ringSleep: 6000 - }, - options); - - verto.sessid = $.cookie('verto_session_uuid') || generateGUID(); - $.cookie('verto_session_uuid', verto.sessid, { - expires: 1 - }); - - verto.dialogs = {}; - - verto.callbacks = callbacks || {}; - - verto.eventSUBS = {}; - - verto.rpcClient = new $.JsonRpcClient({ - login: verto.options.login, - passwd: verto.options.passwd, - socketUrl: verto.options.socketUrl, - sessid: verto.sessid, - onmessage: function(e) { - return verto.handleMessage(e.eventData); - }, - onWSConnect: function(o) { - o.call('login', {}); - }, - onWSLogin: function(success) { - if (verto.callbacks.onWSLogin) { - verto.callbacks.onWSLogin(verto, success); - } - }, - onWSClose: function(success) { - if (verto.callbacks.onWSClose) { - verto.callbacks.onWSClose(verto, success); - } - verto.purge(); - } - }); - - if (verto.options.ringFile && verto.options.tag) { - verto.ringer = $("#" + verto.options.tag); - } - - verto.rpcClient.call('login', {}); - - }; - - $.verto.prototype.iceServers = function(on) { - var verto = this; - - verto.options.iceServers = on; - }; - - $.verto.prototype.loginData = function(params) { - verto.options.login = params.login; - verto.options.passwd = params.passwd; - verto.rpcClient.loginData(params); - }; - - $.verto.prototype.logout = function(msg) { - var verto = this; - verto.rpcClient.closeSocket(); - verto.purge(); - }; - - $.verto.prototype.login = function(msg) { - var verto = this; - verto.logout(); - verto.rpcClient.call('login', {}); - }; - - $.verto.prototype.message = function(msg) { - var verto = this; - var err = 0; - - if (!msg.to) { - console.error("Missing To"); - err++; - } - - if (!msg.body) { - console.error("Missing Body"); - err++; - } - - if (err) { - return false; - } - - verto.sendMethod("verto.info", { - msg: msg - }); - - return true; - }; - - $.verto.prototype.processReply = function(method, success, e) { - var verto = this; - var i; - - //console.log("Response: " + method, success, e); - - switch (method) { - case "verto.subscribe": - for (i in e.unauthorizedChannels) { - drop_bad(verto, e.unauthorizedChannels[i]); - } - for (i in e.subscribedChannels) { - mark_ready(verto, e.subscribedChannels[i]); - } - - break; - case "verto.unsubscribe": - //console.error(e); - break; - } - }; - - $.verto.prototype.sendMethod = function(method, params) { - var verto = this; - - verto.rpcClient.call(method, params, - - function(e) { - /* Success */ - verto.processReply(method, true, e); - }, - - function(e) { - /* Error */ - verto.processReply(method, false, e); - }); - }; - - function do_sub(verto, channel, obj) { - - } - - function drop_bad(verto, channel) { - console.error("drop unauthorized channel: " + channel); - delete verto.eventSUBS[channel]; - } - - function mark_ready(verto, channel) { - for (var j in verto.eventSUBS[channel]) { - verto.eventSUBS[channel][j].ready = true; - console.log("subscribed to channel: " + channel); - if (verto.eventSUBS[channel][j].readyHandler) { - verto.eventSUBS[channel][j].readyHandler(verto, channel); - } - } - } - - var SERNO = 1; - - function do_subscribe(verto, channel, subChannels, sparams) { - var params = sparams || {}; - - var local = params.local; - - var obj = { - eventChannel: channel, - userData: params.userData, - handler: params.handler, - ready: false, - readyHandler: params.readyHandler, - serno: SERNO++ - }; - - var isnew = false; - - if (!verto.eventSUBS[channel]) { - verto.eventSUBS[channel] = []; - subChannels.push(channel); - isnew = true; - } - - verto.eventSUBS[channel].push(obj); - - if (local) { - obj.ready = true; - obj.local = true; - } - - if (!isnew && verto.eventSUBS[channel][0].ready) { - obj.ready = true; - if (obj.readyHandler) { - obj.readyHandler(verto, channel); - } - } - - return { - serno: obj.serno, - eventChannel: channel - }; - - } - - $.verto.prototype.subscribe = function(channel, sparams) { - var verto = this; - var r = []; - var subChannels = []; - var params = sparams || {}; - - if (typeof(channel) === "string") { - r.push(do_subscribe(verto, channel, subChannels, params)); - } else { - for (var i in channel) { - r.push(do_subscribe(verto, channel, subChannels, params)); - } - } - - if (subChannels.length) { - verto.sendMethod("verto.subscribe", { - eventChannel: subChannels.length == 1 ? subChannels[0] : subChannels, - subParams: params.subParams - }); - } - - return r; - }; - - $.verto.prototype.unsubscribe = function(handle) { - var verto = this; - var i; - - if (!handle) { - for (i in verto.eventSUBS) { - if (verto.eventSUBS[i]) { - verto.unsubscribe(verto.eventSUBS[i]); - } - } - } else { - var unsubChannels = {}; - var sendChannels = []; - var channel; - - if (typeof(handle) == "string") { - delete verto.eventSUBS[handle]; - unsubChannels[handle]++; - } else { - for (i in handle) { - if (typeof(handle[i]) == "string") { - channel = handle[i]; - delete verto.eventSUBS[channel]; - unsubChannels[channel]++; - } else { - var repl = []; - channel = handle[i].eventChannel; - - for (var j in verto.eventSUBS[channel]) { - if (verto.eventSUBS[channel][j].serno == handle[i].serno) {} else { - repl.push(verto.eventSUBS[channel][j]); - } - } - - verto.eventSUBS[channel] = repl; - - if (verto.eventSUBS[channel].length === 0) { - delete verto.eventSUBS[channel]; - unsubChannels[channel]++; - } - } - } - } - - for (var u in unsubChannels) { - console.log("Sending Unsubscribe for: ", u); - sendChannels.push(u); - } - - if (sendChannels.length) { - verto.sendMethod("verto.unsubscribe", { - eventChannel: sendChannels.length == 1 ? sendChannels[0] : sendChannels - }); - } - } - }; - - $.verto.prototype.broadcast = function(channel, params) { - var verto = this; - var msg = { - eventChannel: channel, - data: {} - }; - for (var i in params) { - msg.data[i] = params[i]; - } - verto.sendMethod("verto.broadcast", msg); - }; - - $.verto.prototype.purge = function(callID) { - var verto = this; - var x = 0; - var i; - - for (i in verto.dialogs) { - if (!x) { - console.log("purging dialogs"); - } - x++; - verto.dialogs[i].setState($.verto.enum.state.purge); - } - - for (i in verto.eventSUBS) { - if (verto.eventSUBS[i]) { - console.log("purging subscription: " + i); - delete verto.eventSUBS[i]; - } - } - }; - - $.verto.prototype.hangup = function(callID) { - var verto = this; - if (callID) { - var dialog = verto.dialogs[callID]; - - if (dialog) { - dialog.hangup(); - } - } else { - for (var i in verto.dialogs) { - verto.dialogs[i].hangup(); - } - } - }; - - $.verto.prototype.newCall = function(args, callbacks) { - var verto = this; - - if (!verto.rpcClient.socketReady()) { - console.error("Not Connected..."); - return; - } - - var dialog = new $.verto.dialog($.verto.enum.direction.outbound, this, args); - - dialog.invite(); - - if (callbacks) { - dialog.callbacks = callbacks; - } - - return dialog; - }; - - $.verto.prototype.handleMessage = function(data) { - var verto = this; - - if (!(data && data.method)) { - console.error("Invalid Data", data); - return; - } - - if (data.params.callID) { - var dialog = verto.dialogs[data.params.callID]; - - if (dialog) { - - switch (data.method) { - case 'verto.bye': - dialog.hangup(data.params); - break; - case 'verto.answer': - dialog.handleAnswer(data.params); - break; - case 'verto.media': - dialog.handleMedia(data.params); - break; - case 'verto.display': - dialog.handleDisplay(data.params); - break; - case 'verto.info': - dialog.handleInfo(data.params); - break; - default: - console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED", dialog, data.method); - break; - } - } else { - - switch (data.method) { - case 'verto.attach': - data.params.attach = true; - - if (data.params.sdp && data.params.sdp.indexOf("m=video") > 0) { - data.params.useVideo = true; - } - - if (data.params.sdp && data.params.sdp.indexOf("stereo=1") > 0) { - data.params.useStereo = true; - } - - dialog = new $.verto.dialog($.verto.enum.direction.inbound, verto, data.params); - dialog.setState($.verto.enum.state.recovering); - - break; - case 'verto.invite': - - if (data.params.sdp && data.params.sdp.indexOf("m=video") > 0) { - data.params.wantVideo = true; - } - - if (data.params.sdp && data.params.sdp.indexOf("stereo=1") > 0) { - data.params.useStereo = true; - } - - dialog = new $.verto.dialog($.verto.enum.direction.inbound, verto, data.params); - break; - default: - console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED"); - break; - } - } - - return { - method: data.method - }; - } else { - switch (data.method) { - case 'verto.event': - var list = null; - var key = null; - - if (data.params) { - key = data.params.eventChannel; - } - - if (key) { - list = verto.eventSUBS[key]; - - if (!list) { - list = verto.eventSUBS[key.split(".")[0]]; - } - } - - if (!list && key && key === verto.sessid) { - if (verto.callbacks.onMessage) { - verto.callbacks.onMessage(verto, null, $.verto.enum.message.pvtEvent, data.params); - } - } else if (!list && key && verto.dialogs[key]) { - verto.dialogs[key].sendMessage($.verto.enum.message.pvtEvent, data.params); - } else if (!list) { - if (!key) { - key = "UNDEFINED"; - } - console.error("UNSUBBED or invalid EVENT " + key + " IGNORED"); - } else { - for (var i in list) { - var sub = list[i]; - - if (!sub || !sub.ready) { - console.error("invalid EVENT for " + key + " IGNORED"); - } else if (sub.handler) { - sub.handler(verto, data.params, sub.userData); - } else if (verto.callbacks.onEvent) { - verto.callbacks.onEvent(verto, data.params, sub.userData); - } else { - console.log("EVENT:", data.params); - } - } - } - - break; - - case "verto.info": - if (verto.callbacks.onMessage) { - verto.callbacks.onMessage(verto, null, $.verto.enum.message.info, data.params.msg); - } - //console.error(data); - console.debug("MESSAGE from: " + data.params.msg.from, data.params.msg.body); - - break; - - default: - console.error("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED", data.method); - break; - } - } - }; - - var del_array = function(array, name) { - var r = []; - var len = array.length; - - for (var i = 0; i < len; i++) { - if (array[i] != name) { - r.push(array[i]); - } - } - - return r; - }; - - var hashArray = function() { - var vha = this; - - var hash = {}; - var array = []; - - vha.reorder = function(a) { - array = a; - var h = hash; - hash = {}; - - var len = array.length; - - for (var i = 0; i < len; i++) { - var key = array[i]; - if (h[key]) { - hash[key] = h[key]; - delete h[key]; - } - } - h = undefined; - }; - - vha.clear = function() { - hash = undefined; - array = undefined; - hash = {}; - array = []; - }; - - vha.add = function(name, val, insertAt) { - var redraw = false; - - if (!hash[name]) { - if (insertAt === undefined || insertAt < 0 || insertAt >= array.length) { - array.push(name); - } else { - var x = 0; - var n = []; - var len = array.length; - - for (var i = 0; i < len; i++) { - if (x++==insertAt) { - n.push(name); - } - n.push(array[i]); - } - - array = undefined; - array = n; - n = undefined; - redraw = true; - } - } - - hash[name] = val; - - return redraw; - }; - - vha.del = function(name) { - var r = false; - - if (hash[name]) { - array = del_array(array, name); - delete hash[name]; - r = true; - } else { - console.error("can't del nonexistant key " + name); - } - - return r; - }; - - vha.get = function(name) { - return hash[name]; - }; - - vha.order = function() { - return array; - }; - - vha.hash = function() { - return hash; - }; - - vha.indexOf = function(name) { - var len = array.length; - - for (var i = 0; i < len; i++) { - if (array[i] == name) { - return i; - } - } - }; - - vha.arrayLen = function() { - return array.length; - }; - - vha.asArray = function() { - var r = []; - - var len = array.length; - - for (var i = 0; i < len; i++) { - var key = array[i]; - r.push(hash[key]); - } - - return r; - }; - - vha.each = function(cb) { - var len = array.length; - - for (var i = 0; i < len; i++) { - cb(array[i], hash[array[i]]); - } - }; - - vha.dump = function(html) { - var str = ""; - - vha.each(function(name, val) { - str += "name: " + name + " val: " + JSON.stringify(val) + (html ? "
" : "\n"); - }); - - return str; - }; - - }; - - $.verto.liveArray = function(verto, context, name, config) { - var la = this; - var lastSerno = 0; - var binding = null; - var user_obj = config.userObj; - var local = false; - - // Inherit methods of hashArray - hashArray.call(la); - - // Save the hashArray add, del, reorder, clear methods so we can make our own. - la._add = la.add; - la._del = la.del; - la._reorder = la.reorder; - la._clear = la.clear; - - la.context = context; - la.name = name; - la.user_obj = user_obj; - - la.verto = verto; - la.broadcast = function(channel, obj) { - verto.broadcast(channel, obj); - }; - la.errs = 0; - - la.clear = function() { - la._clear(); - lastSerno = 0; - - if (la.onChange) { - la.onChange(la, { - action: "clear" - }); - } - }; - - la.checkSerno = function(serno) { - if (serno < 0) { - return true; - } - - if (lastSerno > 0 && serno != (lastSerno + 1)) { - if (la.onErr) { - la.onErr(la, { - lastSerno: lastSerno, - serno: serno - }); - } - la.errs++; - console.debug(la.errs); - if (la.errs < 3) { - la.bootstrap(la.user_obj); - } - return false; - } else { - lastSerno = serno; - return true; - } - }; - - la.reorder = function(serno, a) { - if (la.checkSerno(serno)) { - la._reorder(a); - if (la.onChange) { - la.onChange(la, { - serno: serno, - action: "reorder" - }); - } - } - }; - - la.init = function(serno, val, key, index) { - if (key === null || key === undefined) { - key = serno; - } - if (la.checkSerno(serno)) { - if (la.onChange) { - la.onChange(la, { - serno: serno, - action: "init", - index: index, - key: key, - data: val - }); - } - } - }; - - la.bootObj = function(serno, val) { - if (la.checkSerno(serno)) { - - //la.clear(); - for (var i in val) { - la._add(val[i][0], val[i][1]); - } - - if (la.onChange) { - la.onChange(la, { - serno: serno, - action: "bootObj", - data: val, - redraw: true - }); - } - } - }; - - // @param serno La is the serial number for la particular request. - // @param key If looking at it as a hash table, la represents the key in the hashArray object where you want to store the val object. - // @param index If looking at it as an array, la represents the position in the array where you want to store the val object. - // @param val La is the object you want to store at the key or index location in the hash table / array. - la.add = function(serno, val, key, index) { - if (key === null || key === undefined) { - key = serno; - } - if (la.checkSerno(serno)) { - var redraw = la._add(key, val, index); - if (la.onChange) { - la.onChange(la, { - serno: serno, - action: "add", - index: index, - key: key, - data: val, - redraw: redraw - }); - } - } - }; - - la.modify = function(serno, val, key, index) { - if (key === null || key === undefined) { - key = serno; - } - if (la.checkSerno(serno)) { - la._add(key, val, index); - if (la.onChange) { - la.onChange(la, { - serno: serno, - action: "modify", - key: key, - data: val, - index: index - }); - } - } - }; - - la.del = function(serno, key, index) { - if (key === null || key === undefined) { - key = serno; - } - if (la.checkSerno(serno)) { - if (index === null || index < 0 || index === undefined) { - index = la.indexOf(key); - } - var ok = la._del(key); - - if (ok && la.onChange) { - la.onChange(la, { - serno: serno, - action: "del", - key: key, - index: index - }); - } - } - }; - - var eventHandler = function(v, e, la) { - var packet = e.data; - - //console.error("READ:", packet); - - if (packet.name != la.name) { - return; - } - - switch (packet.action) { - - case "init": - la.init(packet.wireSerno, packet.data, packet.hashKey, packet.arrIndex); - break; - - case "bootObj": - la.bootObj(packet.wireSerno, packet.data); - break; - case "add": - la.add(packet.wireSerno, packet.data, packet.hashKey, packet.arrIndex); - break; - - case "modify": - if (! (packet.arrIndex || packet.hashKey)) { - console.error("Invalid Packet", packet); - } else { - la.modify(packet.wireSerno, packet.data, packet.hashKey, packet.arrIndex); - } - break; - case "del": - if (! (packet.arrIndex || packet.hashKey)) { - console.error("Invalid Packet", packet); - } else { - la.del(packet.wireSerno, packet.hashKey, packet.arrIndex); - } - break; - - case "clear": - la.clear(); - break; - - case "reorder": - la.reorder(packet.wireSerno, packet.order); - break; - - default: - if (la.checkSerno(packet.wireSerno)) { - if (la.onChange) { - la.onChange(la, { - serno: packet.wireSerno, - action: packet.action, - data: packet.data - }); - } - } - break; - } - }; - - if (la.context) { - binding = la.verto.subscribe(la.context, { - handler: eventHandler, - userData: la, - subParams: config.subParams - }); - } - - la.destroy = function() { - la._clear(); - la.verto.unsubscribe(binding); - }; - - la.sendCommand = function(cmd, obj) { - var self = la; - self.broadcast(self.context, { - liveArray: { - command: cmd, - context: self.context, - name: self.name, - obj: obj - } - }); - }; - - la.bootstrap = function(obj) { - var self = la; - la.sendCommand("bootstrap", obj); - //self.heartbeat(); - }; - - la.changepage = function(obj) { - var self = la; - self.clear(); - self.broadcast(self.context, { - liveArray: { - command: "changepage", - context: la.context, - name: la.name, - obj: obj - } - }); - }; - - la.heartbeat = function(obj) { - var self = la; - - var callback = function() { - self.heartbeat.call(self, obj); - }; - self.broadcast(self.context, { - liveArray: { - command: "heartbeat", - context: self.context, - name: self.name, - obj: obj - } - }); - self.hb_pid = setTimeout(callback, 30000); - }; - - la.bootstrap(la.user_obj); - }; - - $.verto.liveTable = function(verto, context, name, jq, config) { - var dt; - var la = new $.verto.liveArray(verto, context, name, { - subParams: config.subParams - }); - var lt = this; - - lt.liveArray = la; - lt.dataTable = dt; - lt.verto = verto; - - lt.destroy = function() { - if (dt) { - dt.fnDestroy(); - } - if (la) { - la.destroy(); - } - - dt = null; - la = null; - }; - - la.onErr = function(obj, args) { - console.error("Error: ", obj, args); - }; - - la.onChange = function(obj, args) { - var index = 0; - var iserr = 0; - - if (!dt) { - if (!config.aoColumns) { - if (args.action != "init") { - return; - } - - config.aoColumns = []; - - for (var i in args.data) { - config.aoColumns.push({ - "sTitle": args.data[i] - }); - } - } - - dt = jq.dataTable(config); - } - - if (dt && (args.action == "del" || args.action == "modify")) { - index = args.index; - - if (index === undefined && args.key) { - index = la.indexOf(args.key); - } - - if (index === undefined) { - console.error("INVALID PACKET Missing INDEX\n", args); - return; - } - } - - if (config.onChange) { - config.onChange(obj, args); - } - - try { - switch (args.action) { - case "bootObj": - if (!args.data) { - console.error("missing data"); - return; - } - dt.fnClearTable(); - dt.fnAddData(obj.asArray()); - dt.fnAdjustColumnSizing(); - break; - case "add": - if (!args.data) { - console.error("missing data"); - return; - } - if (args.redraw > -1) { - // specific position, more costly - dt.fnClearTable(); - dt.fnAddData(obj.asArray()); - } else { - dt.fnAddData(args.data); - } - dt.fnAdjustColumnSizing(); - break; - case "modify": - if (!args.data) { - return; - } - //console.debug(args, index); - dt.fnUpdate(args.data, index); - dt.fnAdjustColumnSizing(); - break; - case "del": - dt.fnDeleteRow(index); - dt.fnAdjustColumnSizing(); - break; - case "clear": - dt.fnClearTable(); - break; - case "reorder": - // specific position, more costly - dt.fnClearTable(); - dt.fnAddData(obj.asArray()); - break; - case "hide": - jq.hide(); - break; - - case "show": - jq.show(); - break; - - } - } catch(err) { - console.error("ERROR: " + err); - iserr++; - } - - if (iserr) { - obj.errs++; - if (obj.errs < 3) { - obj.bootstrap(obj.user_obj); - } - } else { - obj.errs = 0; - } - - }; - - la.onChange(la, { - action: "init" - }); - - }; - - var CONFMAN_SERNO = 1; - - $.verto.confMan = function(verto, params) { - var confMan = this; - conf - confMan.params = $.extend({ - tableID: null, - statusID: null, - mainModID: null, - dialog: null, - hasVid: false, - laData: null, - onBroadcast: null, - onLaChange: null, - onLaRow: null - }, - params); - - confMan.verto = verto; - confMan.serno = CONFMAN_SERNO++; - - function genMainMod(jq) { - var play_id = "play_" + confMan.serno; - var stop_id = "stop_" + confMan.serno; - var recording_id = "recording_" + confMan.serno; - var rec_stop_id = "recording_stop" + confMan.serno; - var div_id = "confman_" + confMan.serno; - - var html = "

" + - "" + - "" + - "" + - "" - - + "

"; - - jq.html(html); - - $("#" + play_id).click(function() { - var file = prompt("Please enter file name", ""); - confMan.modCommand("play", null, file); - }); - - $("#" + stop_id).click(function() { - confMan.modCommand("stop", null, "all"); - }); - - $("#" + recording_id).click(function() { - var file = prompt("Please enter file name", ""); - confMan.modCommand("recording", null, ["start", file]); - }); - - $("#" + rec_stop_id).click(function() { - confMan.modCommand("recording", null, ["stop", "all"]); - }); - - } - - function genControls(jq, rowid) { - var x = parseInt(rowid); - var kick_id = "kick_" + x; - var tmute_id = "tmute_" + x; - var box_id = "box_" + x; - var volup_id = "volume_in_up" + x; - var voldn_id = "volume_in_dn" + x; - var transfer_id = "transfer" + x; - - - var html = "
" + - "" + - "" + - "" + - "" + - "" + - "
" - ; - - jq.html(html); - - if (!jq.data("mouse")) { - $("#" + box_id).hide(); - } - - jq.mouseover(function(e) { - jq.data({"mouse": true}); - $("#" + box_id).show(); - }); - - jq.mouseout(function(e) { - jq.data({"mouse": false}); - $("#" + box_id).hide(); - }); - - $("#" + transfer_id).click(function() { - var xten = prompt("Enter Extension"); - confMan.modCommand("transfer", x, xten); - }); - - $("#" + kick_id).click(function() { - confMan.modCommand("kick", x); - }); - - $("#" + tmute_id).click(function() { - confMan.modCommand("tmute", x); - }); - - $("#" + volup_id).click(function() { - confMan.modCommand("volume_in", x, "up"); - }); - - $("#" + voldn_id).click(function() { - confMan.modCommand("volume_in", x, "down"); - }); - - return html; - } - - - - var atitle = ""; - var awidth = 0; - - //$(".jsDataTable").width(confMan.params.hasVid ? "900px" : "800px"); - - if (confMan.params.laData.role === "moderator") { - atitle = "Action"; - awidth = 200; - - if (confMan.params.mainModID) { - genMainMod($(confMan.params.mainModID)); - $(confMan.params.displayID).html("Moderator Controls Ready

") - } else { - $(confMan.params.mainModID).html(""); - } - - verto.subscribe(confMan.params.laData.modChannel, { - handler: function(v, e) { - console.error("MODDATA:", e.data); - if (confMan.params.onBroadcast) { - confMan.params.onBroadcast(verto, confMan, e.data); - } - if (!confMan.destroyed && confMan.params.displayID) { - $(confMan.params.displayID).html(e.data.response + "

"); - if (confMan.lastTimeout) { - clearTimeout(confMan.lastTimeout); - confMan.lastTimeout = 0; - } - confMan.lastTimeout = setTimeout(function() { $(confMan.params.displayID).html(confMan.destroyed ? "" : "Moderator Controls Ready

")}, 4000); - } - - } - }); - - } - - var row_callback = null; - - if (confMan.params.laData.role === "moderator") { - row_callback = function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { - if (!aData[5]) { - var $row = $('td:eq(5)', nRow); - genControls($row, aData); - - if (confMan.params.onLaRow) { - confMan.params.onLaRow(verto, confMan, $row, aData); - } - - } - }; - } - - confMan.lt = new $.verto.liveTable(verto, confMan.params.laData.laChannel, confMan.params.laData.laName, $(confMan.params.tableID), { - subParams: { - callID: confMan.params.dialog ? confMan.params.dialog.callID : null - }, - - - "onChange": function(obj, args) { - $(confMan.params.statusID).text("Conference Members: " + " (" + obj.arrayLen() + " Total)"); - if (confMan.params.onLaChange) { - confMan.params.onLaChange(verto, confMan, $.verto.enum.confEvent.laChange, obj, args); - } - }, - - "aaData": [], - "aoColumns": [{ - "sTitle": "ID" - }, - { - "sTitle": "Number" - }, - { - "sTitle": "Name" - }, - { - "sTitle": "Codec" - }, - { - "sTitle": "Status", - "sWidth": confMan.params.hasVid ? "300px" : "150px" - }, - { - "sTitle": atitle, - "sWidth": awidth, - - }], - "bAutoWidth": true, - "bDestroy": true, - "bSort": false, - "bInfo": false, - "bFilter": false, - "bLengthChange": false, - "bPaginate": false, - "iDisplayLength": 1000, - - "oLanguage": { - "sEmptyTable": "The Conference is Empty....." - }, - - "fnRowCallback": row_callback - - }); - } - - $.verto.confMan.prototype.modCommand = function(cmd, id, value) { - var confMan = this; - - confMan.verto.sendMethod("verto.broadcast", { - "eventChannel": confMan.params.laData.modChannel, - "data": { - "application": "conf-control", - "command": cmd, - "id": id, - "value": value - } - }); - } - - $.verto.confMan.prototype.destroy = function() { - var confMan = this; - - confMan.destroyed = true; - - if (confMan.lt) { - confMan.lt.destroy(); - } - - if (confMan.params.laData.modChannel) { - confMan.verto.unsubscribe(confMan.params.laData.modChannel); - } - - if (confMan.params.mainModID) { - $(confMan.params.mainModID).html(""); - } - } - - $.verto.dialog = function(direction, verto, params) { - var dialog = this; - - dialog.params = $.extend({ - useVideo: verto.options.useVideo, - useStereo: verto.options.useStereo, - tag: verto.options.tag, - login: verto.options.login - }, - params); - - dialog.verto = verto; - dialog.direction = direction; - dialog.lastState = null; - dialog.state = dialog.lastState = $.verto.enum.state.new; - dialog.callbacks = verto.callbacks; - dialog.answered = false; - dialog.attach = params.attach || false; - - if (dialog.params.callID) { - dialog.callID = dialog.params.callID; - } else { - dialog.callID = dialog.params.callID = generateGUID(); - } - - if (dialog.params.tag) { - dialog.audioStream = document.getElementById(dialog.params.tag); - - if (dialog.params.useVideo) { - dialog.videoStream = dialog.audioStream; - } - } //else conjure one TBD - - dialog.verto.dialogs[dialog.callID] = dialog; - - var RTCcallbacks = {}; - - if (dialog.direction == $.verto.enum.direction.inbound) { - - dialog.params.remote_caller_id_name = dialog.params.caller_id_name; - dialog.params.remote_caller_id_number = dialog.params.caller_id_number; - - if (!dialog.params.remote_caller_id_name) { - dialog.params.remote_caller_id_name = "Nobody"; - } - - if (!dialog.params.remote_caller_id_number) { - dialog.params.remote_caller_id_number = "UNKNOWN"; - } - - RTCcallbacks.onMessage = function(rtc, msg) { - console.debug(msg); - }; - - RTCcallbacks.onAnswerSDP = function(rtc, sdp) { - console.error("answer sdp", sdp); - }; - } else { - dialog.params.remote_caller_id_name = "Outbound Call"; - dialog.params.remote_caller_id_number = dialog.params.destination_number; - } - - RTCcallbacks.onICESDP = function(rtc) { - - if (rtc.type == "offer") { - console.log("offer", rtc.mediaData.SDP); - - dialog.setState($.verto.enum.state.requesting); - - dialog.sendMethod("verto.invite", { - sdp: rtc.mediaData.SDP - }); - } else { //answer - dialog.setState($.verto.enum.state.answering); - - dialog.sendMethod(dialog.attach ? "verto.attach" : "verto.answer", { - sdp: dialog.rtc.mediaData.SDP - }); - } - - }; - - RTCcallbacks.onICE = function(rtc) { - //console.log("cand", rtc.mediaData.candidate); - if (rtc.type == "offer") { - console.log("offer", rtc.mediaData.candidate); - return; - } - - }; - - RTCcallbacks.onError = function(e) { - console.error("ERROR:", e); - dialog.hangup(); - }; - - dialog.rtc = new $.FSRTC({ - callbacks: RTCcallbacks, - useVideo: dialog.videoStream, - useAudio: dialog.audioStream, - useStereo: dialog.params.useStereo, - videoParams: verto.options.videoParams, - iceServers: verto.options.iceServers - }); - - dialog.rtc.verto = dialog.verto; - - if (dialog.direction == $.verto.enum.direction.inbound) { - if (dialog.attach) { - dialog.answer(); - } else { - dialog.ring(); - } - } - }; - - $.verto.dialog.prototype.invite = function() { - var dialog = this; - dialog.rtc.call(); - }; - - $.verto.dialog.prototype.sendMethod = function(method, obj) { - var dialog = this; - obj.dialogParams = {}; - - for (var i in dialog.params) { - if (i == "sdp" && method != "verto.invite" && method != "verto.attach") { - continue; - } - - obj.dialogParams[i] = dialog.params[i]; - } - - dialog.verto.rpcClient.call(method, obj, - - function(e) { - /* Success */ - dialog.processReply(method, true, e); - }, - - function(e) { - /* Error */ - dialog.processReply(method, false, e); - }); - }; - - function checkStateChange(oldS, newS) { - - if (newS == $.verto.enum.state.purge || $.verto.enum.states[oldS.name][newS.name]) { - return true; - } - - return false; - } - - $.verto.dialog.prototype.setState = function(state) { - var dialog = this; - - if (dialog.state == $.verto.enum.state.ringing) { - dialog.stopRinging(); - } - - if (dialog.state == state || !checkStateChange(dialog.state, state)) { - console.error("Dialog " + dialog.callID + ": INVALID state change from " + dialog.state.name + " to " + state.name); - dialog.hangup(); - return false; - } - - console.info("Dialog " + dialog.callID + ": state change from " + dialog.state.name + " to " + state.name); - - dialog.lastState = dialog.state; - dialog.state = state; - - if (!dialog.causeCode) { - dialog.causeCode = 16; - } - - if (!dialog.cause) { - dialog.cause = "NORMAL CLEARING"; - } - - if (dialog.callbacks.onDialogState) { - dialog.callbacks.onDialogState(this); - } - - switch (dialog.state) { - case $.verto.enum.state.trying: - setTimeout(function() { - if (dialog.state == $.verto.enum.state.trying) { - dialog.setState($.verto.enum.state.hangup); - } - }, 30000); - break; - case $.verto.enum.state.purge: - dialog.setState($.verto.enum.state.destroy); - break; - case $.verto.enum.state.hangup: - - if (dialog.lastState.val > $.verto.enum.state.requesting.val && dialog.lastState.val < $.verto.enum.state.hangup.val) { - dialog.sendMethod("verto.bye", {}); - } - - dialog.setState($.verto.enum.state.destroy); - break; - case $.verto.enum.state.destroy: - delete verto.dialogs[dialog.callID]; - dialog.rtc.stop(); - break; - } - - return true; - }; - - $.verto.dialog.prototype.processReply = function(method, success, e) { - var dialog = this; - - //console.log("Response: " + method + " State:" + dialog.state.name, success, e); - - switch (method) { - - case "verto.answer": - case "verto.attach": - if (success) { - dialog.setState($.verto.enum.state.active); - } else { - dialog.hangup(); - } - break; - case "verto.invite": - if (success) { - dialog.setState($.verto.enum.state.trying); - } else { - dialog.setState($.verto.enum.state.destroy); - } - break; - - case "verto.bye": - dialog.hangup(); - break; - - case "verto.modify": - if (e.holdState) { - if (e.holdState == "held") { - if (dialog.state != $.verto.enum.state.held) { - dialog.setState($.verto.enum.state.held); - } - } else if (e.holdState == "active") { - if (dialog.state != $.verto.enum.state.active) { - dialog.setState($.verto.enum.state.active); - } - } - } - - if (success) {} - - break; - - default: - break; - } - - }; - - $.verto.dialog.prototype.hangup = function(params) { - var dialog = this; - - if (params) { - if (params.causeCode) { - dialog.causeCode = params.causeCode; - } - - if (params.cause) { - dialog.cause = params.cause; - } - } - - if (dialog.state.val > $.verto.enum.state.new.val && dialog.state.val < $.verto.enum.state.hangup.val) { - dialog.setState($.verto.enum.state.hangup); - } else if (dialog.state.val < $.verto.enum.state.destroy) { - dialog.setState($.verto.enum.state.destroy); - } - }; - - $.verto.dialog.prototype.stopRinging = function() { - var dialog = this; - if (dialog.verto.ringer) { - dialog.verto.ringer.stop(); - } - }; - - $.verto.dialog.prototype.indicateRing = function() { - var dialog = this; - - if (dialog.verto.ringer) { - dialog.verto.ringer.attr("src", dialog.verto.options.ringFile)[0].play(); - - setTimeout(function() { - dialog.stopRinging(); - if (dialog.state == $.verto.enum.state.ringing) { - dialog.indicateRing(); - } - }, - dialog.verto.options.ringSleep); - } - }; - - $.verto.dialog.prototype.ring = function() { - var dialog = this; - - dialog.setState($.verto.enum.state.ringing); - dialog.indicateRing(); - }; - - $.verto.dialog.prototype.useVideo = function(on) { - var dialog = this; - - dialog.params.useVideo = on; - - if (on) { - dialog.videoStream = dialog.audioStream; - } else { - dialog.videoStream = null; - } - - dialog.rtc.useVideo(dialog.videoStream); - - }; - - $.verto.dialog.prototype.useStereo = function(on) { - var dialog = this; - - dialog.params.useStereo = on; - dialog.rtc.useStereo(on); - }; - - $.verto.dialog.prototype.dtmf = function(digits) { - var dialog = this; - if (digits) { - dialog.sendMethod("verto.info", { - dtmf: digits - }); - } - }; - - $.verto.dialog.prototype.transfer = function(dest, params) { - var dialog = this; - if (dest) { - cur_call.sendMethod("verto.modify", { - action: "transfer", - destination: dest, - params: params - }); - } - }; - - $.verto.dialog.prototype.hold = function(params) { - var dialog = this; - - cur_call.sendMethod("verto.modify", { - action: "hold", - params: params - }); - }; - - $.verto.dialog.prototype.unhold = function(params) { - var dialog = this; - - cur_call.sendMethod("verto.modify", { - action: "unhold", - params: params - }); - }; - - $.verto.dialog.prototype.toggleHold = function(params) { - var dialog = this; - - cur_call.sendMethod("verto.modify", { - action: "toggleHold", - params: params - }); - }; - - $.verto.dialog.prototype.message = function(msg) { - var dialog = this; - var err = 0; - - msg.from = dialog.params.login; - - if (!msg.to) { - console.error("Missing To"); - err++; - } - - if (!msg.body) { - console.error("Missing Body"); - err++; - } - - if (err) { - return false; - } - - dialog.sendMethod("verto.info", { - msg: msg - }); - - return true; - }; - - $.verto.dialog.prototype.answer = function(params) { - var dialog = this; - - if (!dialog.answered) { - if (params) { - if (params.useVideo) { - dialog.useVideo(true); - } - dialog.params.callee_id_name = params.callee_id_name; - dialog.params.callee_id_number = params.callee_id_number; - } - dialog.rtc.createAnswer(dialog.params.sdp); - dialog.answered = true; - } - }; - - $.verto.dialog.prototype.handleAnswer = function(params) { - var dialog = this; - - dialog.gotAnswer = true; - - if (dialog.state.val >= $.verto.enum.state.active.val) { - return; - } - - if (dialog.state.val >= $.verto.enum.state.early.val) { - dialog.setState($.verto.enum.state.active); - } else { - if (dialog.gotEarly) { - console.log("Dialog " + dialog.callID + "Got answer while still establishing early media, delaying..."); - } else { - console.log("Dialog " + dialog.callID + "Answering Channel"); - dialog.rtc.answer(params.sdp, function() { - dialog.setState($.verto.enum.state.active); - }, - function(e) { - console.error(e); - dialog.hangup(); - }); - console.log("Dialog " + dialog.callID + "ANSWER SDP", params.sdp); - } - } - }; - - $.verto.dialog.prototype.cidString = function(enc) { - var dialog = this; - var party = dialog.params.remote_caller_id_name + (enc ? " <" : " <") + dialog.params.remote_caller_id_number + (enc ? ">" : ">"); - return party; - }; - - $.verto.dialog.prototype.sendMessage = function(msg, params) { - var dialog = this; - - if (dialog.callbacks.onMessage) { - dialog.callbacks.onMessage(dialog.verto, dialog, msg, params); - } - }; - - $.verto.dialog.prototype.handleInfo = function(params) { - var dialog = this; - - dialog.sendMessage($.verto.enum.message.info, params.msg); - }; - - $.verto.dialog.prototype.handleDisplay = function(params) { - var dialog = this; - - if (params.display_name) { - dialog.params.remote_caller_id_name = params.display_name; - } - if (params.display_number) { - dialog.params.remote_caller_id_number = params.display_number; - } - - dialog.sendMessage($.verto.enum.message.display, {}); - }; - - $.verto.dialog.prototype.handleMedia = function(params) { - var dialog = this; - - if (dialog.state.val >= $.verto.enum.state.early.val) { - return; - } - - dialog.gotEarly = true; - - dialog.rtc.answer(params.sdp, function() { - console.log("Dialog " + dialog.callID + "Establishing early media"); - dialog.setState($.verto.enum.state.early); - - if (dialog.gotAnswer) { - console.log("Dialog " + dialog.callID + "Answering Channel"); - dialog.setState($.verto.enum.state.active); - } - }, - function(e) { - console.error(e); - dialog.hangup(); - }); - console.log("Dialog " + dialog.callID + "EARLY SDP", params.sdp); - }; - - $.verto.ENUM = function(s) { - var i = 0, - o = {}; - s.split(" ").map(function(x) { - o[x] = { - name: x, - val: i++ - }; - }); - return Object.freeze(o); - }; - - $.verto.enum = {}; - - $.verto.enum.states = Object.freeze({ - new: { - requesting: 1, - recovering: 1, - ringing: 1, - destroy: 1, - answering: 1 - }, - requesting: { - trying: 1, - hangup: 1 - }, - recovering: { - answering: 1, - hangup: 1 - }, - trying: { - active: 1, - early: 1, - hangup: 1 - }, - ringing: { - answering: 1, - hangup: 1 - }, - answering: { - active: 1, - hangup: 1 - }, - active: { - hangup: 1, - held: 1 - }, - held: { - hangup: 1, - active: 1 - }, - early: { - hangup: 1, - active: 1 - }, - hangup: { - destroy: 1 - }, - destroy: {}, - purge: { - destroy: 1 - } - }); - - $.verto.enum.state = $.verto.ENUM("new requesting trying recovering ringing answering early active held hangup destroy purge"); - $.verto.enum.direction = $.verto.ENUM("inbound outbound"); - $.verto.enum.message = $.verto.ENUM("display info pvtEvent"); - - $.verto.enum = Object.freeze($.verto.enum); - - $.verto.saved = []; - - $(window).bind('beforeunload', function() { - for (var i in $.verto.saved) { - var verto = $.verto.saved[i]; - if (verto) { - verto.logout(); - verto.purge(); - } - } - return $.verto.warnOnUnload; - }); - -})(jQuery); +(function($){function findLine(sdpLines,prefix,substr){return findLineInRange(sdpLines,0,-1,prefix,substr);} +function findLineInRange(sdpLines,startLine,endLine,prefix,substr){var realEndLine=(endLine!=-1)?endLine:sdpLines.length;for(var i=startLine;i=28)TURN={url:'turn:turn.bistri.com:80',credential:'homeo',username:'homeo'};iceServers.iceServers=[STUN];}} +var optional={optional:[]};if(!moz){optional.optional=[{DtlsSrtpKeyAgreement:true},{RtpDataChannels:options.onChannelMessage?true:false}];} +var peer=new PeerConnection(iceServers,optional);openOffererChannel();var x=0;peer.onicecandidate=function(event){if(event.candidate){options.onICE(event.candidate);}else{if(options.onICEComplete){options.onICEComplete();} +if(options.type=="offer"){if(!moz&&!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}else{if(!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}}};if(options.attachStream)peer.addStream(options.attachStream);if(options.attachStreams&&options.attachStream.length){var streams=options.attachStreams;for(var i=0;i1){return false;} +return true;} +$.JsonRpcClient.prototype.closeSocket=function(){if(self.socketReady()){this._ws_socket.onclose=function(w){console.log("Closing Socket")} +this._ws_socket.close();}} +$.JsonRpcClient.prototype.loginData=function(params){self.options.login=params.login;self.options.passwd=params.passwd;} +$.JsonRpcClient.prototype.connectSocket=function(onmessage_cb){var self=this;if(self.to){clearTimeout(self.to);} +if(!self.socketReady()){self.authing=false;if(self._ws_socket){delete self._ws_socket;} +self._ws_socket=new WebSocket(self.options.socketUrl);if(self._ws_socket){self._ws_socket.onmessage=onmessage_cb;self._ws_socket.onclose=function(w){if(!self.ws_sleep){self.ws_sleep=1000;} +if(self.options.onWSClose){self.options.onWSClose(self);} +console.error("Websocket Lost "+self.ws_cnt+" sleep: "+self.ws_sleep+"msec");self.to=setTimeout(function(){console.log("Attempting Reconnection....");self.connectSocket(onmessage_cb);},self.ws_sleep);self.ws_cnt++;if(self.ws_sleep<3000&&(self.ws_cnt%10)==0){self.ws_sleep+=1000;}} +self._ws_socket.onopen=function(){if(self.to){clearTimeout(self.to);} +self.ws_sleep=1000;self.ws_cnt=0;if(self.options.onWSConnect){self.options.onWSConnect(self);} +var req;while(req=$.JsonRpcClient.q.pop()){self._ws_socket.send(req);}}}} +return self._ws_socket?true:false;} +$.JsonRpcClient.prototype._getSocket=function(onmessage_cb){if(this.options.socketUrl===null||!("WebSocket"in window))return null;this.connectSocket(onmessage_cb);return this._ws_socket;};$.JsonRpcClient.q=[];$.JsonRpcClient.prototype._wsCall=function(socket,request,success_cb,error_cb){var request_json=$.toJSON(request);if(socket.readyState<1){self=this;$.JsonRpcClient.q.push(request_json);} +else{socket.send(request_json);} +if('id'in request&&typeof success_cb!=='undefined'){this._ws_callbacks[request.id]={request:request_json,request_obj:request,success_cb:success_cb,error_cb:error_cb};}};$.JsonRpcClient.prototype._wsOnMessage=function(event){var response;try{response=$.parseJSON(event.data);if(typeof response==='object'&&'jsonrpc'in response&&response.jsonrpc==='2.0'){if('result'in response&&this._ws_callbacks[response.id]){var success_cb=this._ws_callbacks[response.id].success_cb;delete this._ws_callbacks[response.id];success_cb(response.result,this);return;} +else if('error'in response&&this._ws_callbacks[response.id]){var error_cb=this._ws_callbacks[response.id].error_cb;var orig_req=this._ws_callbacks[response.id].request;if(!self.authing&&response.error.code==-32000&&self.options.login&&self.options.passwd){self.authing=true;this.call("login",{login:self.options.login,passwd:self.options.passwd},this._ws_callbacks[response.id].request_obj.method=="login"?function(e){self.authing=false;console.log("logged in");delete self._ws_callbacks[response.id];if(self.options.onWSLogin){self.options.onWSLogin(true,self);}}:function(e){self.authing=false;console.log("logged in, resending request id: "+response.id);var socket=self.options.getSocket(self.wsOnMessage);if(socket!==null){socket.send(orig_req);} +if(self.options.onWSLogin){self.options.onWSLogin(true,self);}},function(e){console.log("error logging in, request id:",response.id);delete self._ws_callbacks[response.id];error_cb(response.error,this);if(self.options.onWSLogin){self.options.onWSLogin(false,self);}});return;} +delete this._ws_callbacks[response.id];error_cb(response.error,this);return;}}} +catch(err){console.log("ERROR: "+err);return;} +if(typeof this.options.onmessage==='function'){event.eventData=response;if(!event.eventData){event.eventData={};} +var reply=this.options.onmessage(event);if(reply&&typeof reply==="object"&&event.eventData.id){var msg={jsonrpc:"2.0",id:event.eventData.id,result:reply};var socket=self.options.getSocket(self.wsOnMessage);if(socket!==null){socket.send($.toJSON(msg));}}}};$.JsonRpcClient._batchObject=function(jsonrpcclient,all_done_cb,error_cb){this._requests=[];this.jsonrpcclient=jsonrpcclient;this.all_done_cb=all_done_cb;this.error_cb=typeof error_cb==='function'?error_cb:function(){};};$.JsonRpcClient._batchObject.prototype.call=function(method,params,success_cb,error_cb){if(!params){params={};} +if(this.options.sessid){params.sessid=this.options.sessid;} +if(!success_cb){success_cb=function(e){console.log("Success: ",e);};} +if(!error_cb){error_cb=function(e){console.log("Error: ",e);};} +this._requests.push({request:{jsonrpc:'2.0',method:method,params:params,id:this.jsonrpcclient._current_id++},success_cb:success_cb,error_cb:error_cb});};$.JsonRpcClient._batchObject.prototype.notify=function(method,params){if(this.options.sessid){params.sessid=this.options.sessid;} +this._requests.push({request:{jsonrpc:'2.0',method:method,params:params}});};$.JsonRpcClient._batchObject.prototype._execute=function(){var self=this;if(this._requests.length===0)return;var batch_request=[];var handlers={};var socket=self.jsonrpcclient.options.getSocket(self.jsonrpcclient.wsOnMessage);if(socket!==null){for(var i=0;i0){data.params.useVideo=true;} +if(data.params.sdp&&data.params.sdp.indexOf("stereo=1")>0){data.params.useStereo=true;} +dialog=new $.verto.dialog($.verto.enum.direction.inbound,verto,data.params);dialog.setState($.verto.enum.state.recovering);break;case'verto.invite':if(data.params.sdp&&data.params.sdp.indexOf("m=video")>0){data.params.wantVideo=true;} +if(data.params.sdp&&data.params.sdp.indexOf("stereo=1")>0){data.params.useStereo=true;} +dialog=new $.verto.dialog($.verto.enum.direction.inbound,verto,data.params);break;default:console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED");break;}} +return{method:data.method};}else{switch(data.method){case'verto.event':var list=null;var key=null;if(data.params){key=data.params.eventChannel;} +if(key){list=verto.eventSUBS[key];if(!list){list=verto.eventSUBS[key.split(".")[0]];}} +if(!list&&key&&key===verto.sessid){if(verto.callbacks.onMessage){verto.callbacks.onMessage(verto,null,$.verto.enum.message.pvtEvent,data.params);}}else if(!list&&key&&verto.dialogs[key]){verto.dialogs[key].sendMessage($.verto.enum.message.pvtEvent,data.params);}else if(!list){if(!key){key="UNDEFINED";} +console.error("UNSUBBED or invalid EVENT "+key+" IGNORED");}else{for(var i in list){var sub=list[i];if(!sub||!sub.ready){console.error("invalid EVENT for "+key+" IGNORED");}else if(sub.handler){sub.handler(verto,data.params,sub.userData);}else if(verto.callbacks.onEvent){verto.callbacks.onEvent(verto,data.params,sub.userData);}else{console.log("EVENT:",data.params);}}} +break;case"verto.info":if(verto.callbacks.onMessage){verto.callbacks.onMessage(verto,null,$.verto.enum.message.info,data.params.msg);} +console.debug("MESSAGE from: "+data.params.msg.from,data.params.msg.body);break;default:console.error("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED",data.method);break;}}};var del_array=function(array,name){var r=[];var len=array.length;for(var i=0;i=array.length){array.push(name);}else{var x=0;var n=[];var len=array.length;for(var i=0;i":"\n");});return str;};};$.verto.liveArray=function(verto,context,name,config){var la=this;var lastSerno=0;var binding=null;var user_obj=config.userObj;var local=false;hashArray.call(la);la._add=la.add;la._del=la.del;la._reorder=la.reorder;la._clear=la.clear;la.context=context;la.name=name;la.user_obj=user_obj;la.verto=verto;la.broadcast=function(channel,obj){verto.broadcast(channel,obj);};la.errs=0;la.clear=function(){la._clear();lastSerno=0;if(la.onChange){la.onChange(la,{action:"clear"});}};la.checkSerno=function(serno){if(serno<0){return true;} +if(lastSerno>0&&serno!=(lastSerno+1)){if(la.onErr){la.onErr(la,{lastSerno:lastSerno,serno:serno});} +la.errs++;console.debug(la.errs);if(la.errs<3){la.bootstrap(la.user_obj);} +return false;}else{lastSerno=serno;return true;}};la.reorder=function(serno,a){if(la.checkSerno(serno)){la._reorder(a);if(la.onChange){la.onChange(la,{serno:serno,action:"reorder"});}}};la.init=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){if(la.onChange){la.onChange(la,{serno:serno,action:"init",index:index,key:key,data:val});}}};la.bootObj=function(serno,val){if(la.checkSerno(serno)){for(var i in val){la._add(val[i][0],val[i][1]);} +if(la.onChange){la.onChange(la,{serno:serno,action:"bootObj",data:val,redraw:true});}}};la.add=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){var redraw=la._add(key,val,index);if(la.onChange){la.onChange(la,{serno:serno,action:"add",index:index,key:key,data:val,redraw:redraw});}}};la.modify=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){la._add(key,val,index);if(la.onChange){la.onChange(la,{serno:serno,action:"modify",key:key,data:val,index:index});}}};la.del=function(serno,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){if(index===null||index<0||index===undefined){index=la.indexOf(key);} +var ok=la._del(key);if(ok&&la.onChange){la.onChange(la,{serno:serno,action:"del",key:key,index:index});}}};var eventHandler=function(v,e,la){var packet=e.data;if(packet.name!=la.name){return;} +switch(packet.action){case"init":la.init(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);break;case"bootObj":la.bootObj(packet.wireSerno,packet.data);break;case"add":la.add(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);break;case"modify":if(!(packet.arrIndex||packet.hashKey)){console.error("Invalid Packet",packet);}else{la.modify(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);} +break;case"del":if(!(packet.arrIndex||packet.hashKey)){console.error("Invalid Packet",packet);}else{la.del(packet.wireSerno,packet.hashKey,packet.arrIndex);} +break;case"clear":la.clear();break;case"reorder":la.reorder(packet.wireSerno,packet.order);break;default:if(la.checkSerno(packet.wireSerno)){if(la.onChange){la.onChange(la,{serno:packet.wireSerno,action:packet.action,data:packet.data});}} +break;}};if(la.context){binding=la.verto.subscribe(la.context,{handler:eventHandler,userData:la,subParams:config.subParams});} +la.destroy=function(){la._clear();la.verto.unsubscribe(binding);};la.sendCommand=function(cmd,obj){var self=la;self.broadcast(self.context,{liveArray:{command:cmd,context:self.context,name:self.name,obj:obj}});};la.bootstrap=function(obj){var self=la;la.sendCommand("bootstrap",obj);};la.changepage=function(obj){var self=la;self.clear();self.broadcast(self.context,{liveArray:{command:"changepage",context:la.context,name:la.name,obj:obj}});};la.heartbeat=function(obj){var self=la;var callback=function(){self.heartbeat.call(self,obj);};self.broadcast(self.context,{liveArray:{command:"heartbeat",context:self.context,name:self.name,obj:obj}});self.hb_pid=setTimeout(callback,30000);};la.bootstrap(la.user_obj);};$.verto.liveTable=function(verto,context,name,jq,config){var dt;var la=new $.verto.liveArray(verto,context,name,{subParams:config.subParams});var lt=this;lt.liveArray=la;lt.dataTable=dt;lt.verto=verto;lt.destroy=function(){if(dt){dt.fnDestroy();} +if(la){la.destroy();} +dt=null;la=null;};la.onErr=function(obj,args){console.error("Error: ",obj,args);};la.onChange=function(obj,args){var index=0;var iserr=0;if(!dt){if(!config.aoColumns){if(args.action!="init"){return;} +config.aoColumns=[];for(var i in args.data){config.aoColumns.push({"sTitle":args.data[i]});}} +dt=jq.dataTable(config);} +if(dt&&(args.action=="del"||args.action=="modify")){index=args.index;if(index===undefined&&args.key){index=la.indexOf(args.key);} +if(index===undefined){console.error("INVALID PACKET Missing INDEX\n",args);return;}} +if(config.onChange){config.onChange(obj,args);} +try{switch(args.action){case"bootObj":if(!args.data){console.error("missing data");return;} +dt.fnClearTable();dt.fnAddData(obj.asArray());dt.fnAdjustColumnSizing();break;case"add":if(!args.data){console.error("missing data");return;} +if(args.redraw>-1){dt.fnClearTable();dt.fnAddData(obj.asArray());}else{dt.fnAddData(args.data);} +dt.fnAdjustColumnSizing();break;case"modify":if(!args.data){return;} +dt.fnUpdate(args.data,index);dt.fnAdjustColumnSizing();break;case"del":dt.fnDeleteRow(index);dt.fnAdjustColumnSizing();break;case"clear":dt.fnClearTable();break;case"reorder":dt.fnClearTable();dt.fnAddData(obj.asArray());break;case"hide":jq.hide();break;case"show":jq.show();break;}}catch(err){console.error("ERROR: "+err);iserr++;} +if(iserr){obj.errs++;if(obj.errs<3){obj.bootstrap(obj.user_obj);}}else{obj.errs=0;}};la.onChange(la,{action:"init"});};var CONFMAN_SERNO=1;$.verto.confMan=function(verto,params){var confMan=this;conf +confMan.params=$.extend({tableID:null,statusID:null,mainModID:null,dialog:null,hasVid:false,laData:null,onBroadcast:null,onLaChange:null,onLaRow:null},params);confMan.verto=verto;confMan.serno=CONFMAN_SERNO++;function genMainMod(jq){var play_id="play_"+confMan.serno;var stop_id="stop_"+confMan.serno;var recording_id="recording_"+confMan.serno;var rec_stop_id="recording_stop"+confMan.serno;var div_id="confman_"+confMan.serno;var html="

"+""+""+""+"" ++"

";jq.html(html);$("#"+play_id).click(function(){var file=prompt("Please enter file name","");confMan.modCommand("play",null,file);});$("#"+stop_id).click(function(){confMan.modCommand("stop",null,"all");});$("#"+recording_id).click(function(){var file=prompt("Please enter file name","");confMan.modCommand("recording",null,["start",file]);});$("#"+rec_stop_id).click(function(){confMan.modCommand("recording",null,["stop","all"]);});} +function genControls(jq,rowid){var x=parseInt(rowid);var kick_id="kick_"+x;var tmute_id="tmute_"+x;var box_id="box_"+x;var volup_id="volume_in_up"+x;var voldn_id="volume_in_dn"+x;var transfer_id="transfer"+x;var html="
"+""+""+""+""+""+"
";jq.html(html);if(!jq.data("mouse")){$("#"+box_id).hide();} +jq.mouseover(function(e){jq.data({"mouse":true});$("#"+box_id).show();});jq.mouseout(function(e){jq.data({"mouse":false});$("#"+box_id).hide();});$("#"+transfer_id).click(function(){var xten=prompt("Enter Extension");confMan.modCommand("transfer",x,xten);});$("#"+kick_id).click(function(){confMan.modCommand("kick",x);});$("#"+tmute_id).click(function(){confMan.modCommand("tmute",x);});$("#"+volup_id).click(function(){confMan.modCommand("volume_in",x,"up");});$("#"+voldn_id).click(function(){confMan.modCommand("volume_in",x,"down");});return html;} +var atitle="";var awidth=0;if(confMan.params.laData.role==="moderator"){atitle="Action";awidth=200;if(confMan.params.mainModID){genMainMod($(confMan.params.mainModID));$(confMan.params.displayID).html("Moderator Controls Ready

")}else{$(confMan.params.mainModID).html("");} +verto.subscribe(confMan.params.laData.modChannel,{handler:function(v,e){console.error("MODDATA:",e.data);if(confMan.params.onBroadcast){confMan.params.onBroadcast(verto,confMan,e.data);} +if(!confMan.destroyed&&confMan.params.displayID){$(confMan.params.displayID).html(e.data.response+"

");if(confMan.lastTimeout){clearTimeout(confMan.lastTimeout);confMan.lastTimeout=0;} +confMan.lastTimeout=setTimeout(function(){$(confMan.params.displayID).html(confMan.destroyed?"":"Moderator Controls Ready

")},4000);}}});} +var row_callback=null;if(confMan.params.laData.role==="moderator"){row_callback=function(nRow,aData,iDisplayIndex,iDisplayIndexFull){if(!aData[5]){var $row=$('td:eq(5)',nRow);genControls($row,aData);if(confMan.params.onLaRow){confMan.params.onLaRow(verto,confMan,$row,aData);}}};} +confMan.lt=new $.verto.liveTable(verto,confMan.params.laData.laChannel,confMan.params.laData.laName,$(confMan.params.tableID),{subParams:{callID:confMan.params.dialog?confMan.params.dialog.callID:null},"onChange":function(obj,args){$(confMan.params.statusID).text("Conference Members: "+" ("+obj.arrayLen()+" Total)");if(confMan.params.onLaChange){confMan.params.onLaChange(verto,confMan,$.verto.enum.confEvent.laChange,obj,args);}},"aaData":[],"aoColumns":[{"sTitle":"ID"},{"sTitle":"Number"},{"sTitle":"Name"},{"sTitle":"Codec"},{"sTitle":"Status","sWidth":confMan.params.hasVid?"300px":"150px"},{"sTitle":atitle,"sWidth":awidth,}],"bAutoWidth":true,"bDestroy":true,"bSort":false,"bInfo":false,"bFilter":false,"bLengthChange":false,"bPaginate":false,"iDisplayLength":1000,"oLanguage":{"sEmptyTable":"The Conference is Empty....."},"fnRowCallback":row_callback});} +$.verto.confMan.prototype.modCommand=function(cmd,id,value){var confMan=this;confMan.verto.sendMethod("verto.broadcast",{"eventChannel":confMan.params.laData.modChannel,"data":{"application":"conf-control","command":cmd,"id":id,"value":value}});} +$.verto.confMan.prototype.destroy=function(){var confMan=this;confMan.destroyed=true;if(confMan.lt){confMan.lt.destroy();} +if(confMan.params.laData.modChannel){confMan.verto.unsubscribe(confMan.params.laData.modChannel);} +if(confMan.params.mainModID){$(confMan.params.mainModID).html("");}} +$.verto.dialog=function(direction,verto,params){var dialog=this;dialog.params=$.extend({useVideo:verto.options.useVideo,useStereo:verto.options.useStereo,tag:verto.options.tag,login:verto.options.login},params);dialog.verto=verto;dialog.direction=direction;dialog.lastState=null;dialog.state=dialog.lastState=$.verto.enum.state.new;dialog.callbacks=verto.callbacks;dialog.answered=false;dialog.attach=params.attach||false;if(dialog.params.callID){dialog.callID=dialog.params.callID;}else{dialog.callID=dialog.params.callID=generateGUID();} +if(dialog.params.tag){dialog.audioStream=document.getElementById(dialog.params.tag);if(dialog.params.useVideo){dialog.videoStream=dialog.audioStream;}} +dialog.verto.dialogs[dialog.callID]=dialog;var RTCcallbacks={};if(dialog.direction==$.verto.enum.direction.inbound){if(dialog.params.display_direction==="outbound"){dialog.params.remote_caller_id_name=dialog.params.caller_id_name;dialog.params.remote_caller_id_number=dialog.params.caller_id_number;}else{dialog.params.remote_caller_id_name=dialog.params.callee_id_name;dialog.params.remote_caller_id_number=dialog.params.callee_id_number;} +if(!dialog.params.remote_caller_id_name){dialog.params.remote_caller_id_name="Nobody";} +if(!dialog.params.remote_caller_id_number){dialog.params.remote_caller_id_number="UNKNOWN";} +RTCcallbacks.onMessage=function(rtc,msg){console.debug(msg);};RTCcallbacks.onAnswerSDP=function(rtc,sdp){console.error("answer sdp",sdp);};}else{dialog.params.remote_caller_id_name="Outbound Call";dialog.params.remote_caller_id_number=dialog.params.destination_number;} +RTCcallbacks.onICESDP=function(rtc){if(rtc.type=="offer"){console.log("offer",rtc.mediaData.SDP);dialog.setState($.verto.enum.state.requesting);dialog.sendMethod("verto.invite",{sdp:rtc.mediaData.SDP});}else{dialog.setState($.verto.enum.state.answering);dialog.sendMethod(dialog.attach?"verto.attach":"verto.answer",{sdp:dialog.rtc.mediaData.SDP});}};RTCcallbacks.onICE=function(rtc){if(rtc.type=="offer"){console.log("offer",rtc.mediaData.candidate);return;}};RTCcallbacks.onError=function(e){console.error("ERROR:",e);dialog.hangup();};dialog.rtc=new $.FSRTC({callbacks:RTCcallbacks,useVideo:dialog.videoStream,useAudio:dialog.audioStream,useStereo:dialog.params.useStereo,videoParams:verto.options.videoParams,iceServers:verto.options.iceServers});dialog.rtc.verto=dialog.verto;if(dialog.direction==$.verto.enum.direction.inbound){if(dialog.attach){dialog.answer();}else{dialog.ring();}}};$.verto.dialog.prototype.invite=function(){var dialog=this;dialog.rtc.call();};$.verto.dialog.prototype.sendMethod=function(method,obj){var dialog=this;obj.dialogParams={};for(var i in dialog.params){if(i=="sdp"&&method!="verto.invite"&&method!="verto.attach"){continue;} +obj.dialogParams[i]=dialog.params[i];} +dialog.verto.rpcClient.call(method,obj,function(e){dialog.processReply(method,true,e);},function(e){dialog.processReply(method,false,e);});};function checkStateChange(oldS,newS){if(newS==$.verto.enum.state.purge||$.verto.enum.states[oldS.name][newS.name]){return true;} +return false;} +$.verto.dialog.prototype.setState=function(state){var dialog=this;if(dialog.state==$.verto.enum.state.ringing){dialog.stopRinging();} +if(dialog.state==state||!checkStateChange(dialog.state,state)){console.error("Dialog "+dialog.callID+": INVALID state change from "+dialog.state.name+" to "+state.name);dialog.hangup();return false;} +console.info("Dialog "+dialog.callID+": state change from "+dialog.state.name+" to "+state.name);dialog.lastState=dialog.state;dialog.state=state;if(!dialog.causeCode){dialog.causeCode=16;} +if(!dialog.cause){dialog.cause="NORMAL CLEARING";} +if(dialog.callbacks.onDialogState){dialog.callbacks.onDialogState(this);} +switch(dialog.state){case $.verto.enum.state.trying:setTimeout(function(){if(dialog.state==$.verto.enum.state.trying){dialog.setState($.verto.enum.state.hangup);}},30000);break;case $.verto.enum.state.purge:dialog.setState($.verto.enum.state.destroy);break;case $.verto.enum.state.hangup:if(dialog.lastState.val>$.verto.enum.state.requesting.val&&dialog.lastState.val<$.verto.enum.state.hangup.val){dialog.sendMethod("verto.bye",{});} +dialog.setState($.verto.enum.state.destroy);break;case $.verto.enum.state.destroy:delete dialog.verto.dialogs[dialog.callID];dialog.rtc.stop();break;} +return true;};$.verto.dialog.prototype.processReply=function(method,success,e){var dialog=this;switch(method){case"verto.answer":case"verto.attach":if(success){dialog.setState($.verto.enum.state.active);}else{dialog.hangup();} +break;case"verto.invite":if(success){dialog.setState($.verto.enum.state.trying);}else{dialog.setState($.verto.enum.state.destroy);} +break;case"verto.bye":dialog.hangup();break;case"verto.modify":if(e.holdState){if(e.holdState=="held"){if(dialog.state!=$.verto.enum.state.held){dialog.setState($.verto.enum.state.held);}}else if(e.holdState=="active"){if(dialog.state!=$.verto.enum.state.active){dialog.setState($.verto.enum.state.active);}}} +if(success){} +break;default:break;}};$.verto.dialog.prototype.hangup=function(params){var dialog=this;if(params){if(params.causeCode){dialog.causeCode=params.causeCode;} +if(params.cause){dialog.cause=params.cause;}} +if(dialog.state.val>$.verto.enum.state.new.val&&dialog.state.val<$.verto.enum.state.hangup.val){dialog.setState($.verto.enum.state.hangup);}else if(dialog.state.val<$.verto.enum.state.destroy){dialog.setState($.verto.enum.state.destroy);}};$.verto.dialog.prototype.stopRinging=function(){var dialog=this;if(dialog.verto.ringer){dialog.verto.ringer.stop();}};$.verto.dialog.prototype.indicateRing=function(){var dialog=this;if(dialog.verto.ringer){dialog.verto.ringer.attr("src",dialog.verto.options.ringFile)[0].play();setTimeout(function(){dialog.stopRinging();if(dialog.state==$.verto.enum.state.ringing){dialog.indicateRing();}},dialog.verto.options.ringSleep);}};$.verto.dialog.prototype.ring=function(){var dialog=this;dialog.setState($.verto.enum.state.ringing);dialog.indicateRing();};$.verto.dialog.prototype.useVideo=function(on){var dialog=this;dialog.params.useVideo=on;if(on){dialog.videoStream=dialog.audioStream;}else{dialog.videoStream=null;} +dialog.rtc.useVideo(dialog.videoStream);};$.verto.dialog.prototype.useStereo=function(on){var dialog=this;dialog.params.useStereo=on;dialog.rtc.useStereo(on);};$.verto.dialog.prototype.dtmf=function(digits){var dialog=this;if(digits){dialog.sendMethod("verto.info",{dtmf:digits});}};$.verto.dialog.prototype.transfer=function(dest,params){var dialog=this;if(dest){cur_call.sendMethod("verto.modify",{action:"transfer",destination:dest,params:params});}};$.verto.dialog.prototype.hold=function(params){var dialog=this;cur_call.sendMethod("verto.modify",{action:"hold",params:params});};$.verto.dialog.prototype.unhold=function(params){var dialog=this;cur_call.sendMethod("verto.modify",{action:"unhold",params:params});};$.verto.dialog.prototype.toggleHold=function(params){var dialog=this;cur_call.sendMethod("verto.modify",{action:"toggleHold",params:params});};$.verto.dialog.prototype.message=function(msg){var dialog=this;var err=0;msg.from=dialog.params.login;if(!msg.to){console.error("Missing To");err++;} +if(!msg.body){console.error("Missing Body");err++;} +if(err){return false;} +dialog.sendMethod("verto.info",{msg:msg});return true;};$.verto.dialog.prototype.answer=function(params){var dialog=this;if(!dialog.answered){if(params){if(params.useVideo){dialog.useVideo(true);} +dialog.params.callee_id_name=params.callee_id_name;dialog.params.callee_id_number=params.callee_id_number;} +dialog.rtc.createAnswer(dialog.params.sdp);dialog.answered=true;}};$.verto.dialog.prototype.handleAnswer=function(params){var dialog=this;dialog.gotAnswer=true;if(dialog.state.val>=$.verto.enum.state.active.val){return;} +if(dialog.state.val>=$.verto.enum.state.early.val){dialog.setState($.verto.enum.state.active);}else{if(dialog.gotEarly){console.log("Dialog "+dialog.callID+"Got answer while still establishing early media, delaying...");}else{console.log("Dialog "+dialog.callID+"Answering Channel");dialog.rtc.answer(params.sdp,function(){dialog.setState($.verto.enum.state.active);},function(e){console.error(e);dialog.hangup();});console.log("Dialog "+dialog.callID+"ANSWER SDP",params.sdp);}}};$.verto.dialog.prototype.cidString=function(enc){var dialog=this;var party=dialog.params.remote_caller_id_name+(enc?" <":" <")+dialog.params.remote_caller_id_number+(enc?">":">");return party;};$.verto.dialog.prototype.sendMessage=function(msg,params){var dialog=this;if(dialog.callbacks.onMessage){dialog.callbacks.onMessage(dialog.verto,dialog,msg,params);}};$.verto.dialog.prototype.handleInfo=function(params){var dialog=this;dialog.sendMessage($.verto.enum.message.info,params.msg);};$.verto.dialog.prototype.handleDisplay=function(params){var dialog=this;if(params.display_name){dialog.params.remote_caller_id_name=params.display_name;} +if(params.display_number){dialog.params.remote_caller_id_number=params.display_number;} +dialog.sendMessage($.verto.enum.message.display,{});};$.verto.dialog.prototype.handleMedia=function(params){var dialog=this;if(dialog.state.val>=$.verto.enum.state.early.val){return;} +dialog.gotEarly=true;dialog.rtc.answer(params.sdp,function(){console.log("Dialog "+dialog.callID+"Establishing early media");dialog.setState($.verto.enum.state.early);if(dialog.gotAnswer){console.log("Dialog "+dialog.callID+"Answering Channel");dialog.setState($.verto.enum.state.active);}},function(e){console.error(e);dialog.hangup();});console.log("Dialog "+dialog.callID+"EARLY SDP",params.sdp);};$.verto.ENUM=function(s){var i=0,o={};s.split(" ").map(function(x){o[x]={name:x,val:i++};});return Object.freeze(o);};$.verto.enum={};$.verto.enum.states=Object.freeze({new:{requesting:1,recovering:1,ringing:1,destroy:1,answering:1},requesting:{trying:1,hangup:1},recovering:{answering:1,hangup:1},trying:{active:1,early:1,hangup:1},ringing:{answering:1,hangup:1},answering:{active:1,hangup:1},active:{hangup:1,held:1},held:{hangup:1,active:1},early:{hangup:1,active:1},hangup:{destroy:1},destroy:{},purge:{destroy:1}});$.verto.enum.state=$.verto.ENUM("new requesting trying recovering ringing answering early active held hangup destroy purge");$.verto.enum.direction=$.verto.ENUM("inbound outbound");$.verto.enum.message=$.verto.ENUM("display info pvtEvent");$.verto.enum=Object.freeze($.verto.enum);$.verto.saved=[];$(window).bind('beforeunload',function(){for(var i in $.verto.saved){var verto=$.verto.saved[i];if(verto){verto.logout();verto.purge();}} +return $.verto.warnOnUnload;});})(jQuery); \ No newline at end of file diff --git a/html5/verto/demo/verto.js b/html5/verto/demo/verto.js index 2cdcfb0520..9e68674b9f 100644 --- a/html5/verto/demo/verto.js +++ b/html5/verto/demo/verto.js @@ -241,7 +241,7 @@ var callbacks = { docall(); } } else { - goto_page("login"); + goto_page("main"); goto_dialog("login-error"); } diff --git a/html5/verto/js/src/jquery.verto.js b/html5/verto/js/src/jquery.verto.js index 72b2c7dc7e..c09d4f5756 100644 --- a/html5/verto/js/src/jquery.verto.js +++ b/html5/verto/js/src/jquery.verto.js @@ -1430,9 +1430,13 @@ var RTCcallbacks = {}; if (dialog.direction == $.verto.enum.direction.inbound) { - - dialog.params.remote_caller_id_name = dialog.params.caller_id_name; - dialog.params.remote_caller_id_number = dialog.params.caller_id_number; + if (dialog.params.display_direction === "outbound") { + dialog.params.remote_caller_id_name = dialog.params.caller_id_name; + dialog.params.remote_caller_id_number = dialog.params.caller_id_number; + } else { + dialog.params.remote_caller_id_name = dialog.params.callee_id_name; + dialog.params.remote_caller_id_number = dialog.params.callee_id_number; + } if (!dialog.params.remote_caller_id_name) { dialog.params.remote_caller_id_name = "Nobody"; @@ -1597,7 +1601,7 @@ dialog.setState($.verto.enum.state.destroy); break; case $.verto.enum.state.destroy: - delete verto.dialogs[dialog.callID]; + delete dialog.verto.dialogs[dialog.callID]; dialog.rtc.stop(); break; } diff --git a/libs/libzrtp/configure.ac b/libs/libzrtp/configure.ac index d1c40b7e3d..251c51acc1 100644 --- a/libs/libzrtp/configure.ac +++ b/libs/libzrtp/configure.ac @@ -68,7 +68,7 @@ AC_C_CONST # Checks for library functions. AC_FUNC_MALLOC AC_CHECK_FUNCS([memset memcpy malloc free]) -AC_CHECK_FUNCS([usleep]) +AC_CHECK_FUNCS([usleep nanosleep]) AC_CHECK_FUNCS([fopen fread]) AC_CHECK_FUNCS([pthread_mutex_lock pthread_mutex_unlock pthread_mutex_init pthread_mutex_destroy]) AC_CHECK_FUNCS([pthread_attr_init pthread_attr_setdetachstate pthread_create]) diff --git a/libs/libzrtp/src/zrtp_iface_scheduler.c b/libs/libzrtp/src/zrtp_iface_scheduler.c index 715c584b53..fe4a2fd014 100644 --- a/libs/libzrtp/src/zrtp_iface_scheduler.c +++ b/libs/libzrtp/src/zrtp_iface_scheduler.c @@ -7,6 +7,7 @@ * Viktor Krykun */ +#define _POSIX_C_SOURCE 199309L /* for struct timespec */ #include "zrtp.h" #if (defined(ZRTP_USE_BUILTIN_SCEHDULER) && (ZRTP_USE_BUILTIN_SCEHDULER ==1)) @@ -80,11 +81,15 @@ int zrtp_thread_create(zrtp_thread_routine_t start_routine, void *arg) } #elif (ZRTP_PLATFORM == ZP_LINUX) || (ZRTP_PLATFORM == ZP_DARWIN) || (ZRTP_PLATFORM == ZP_BSD) || (ZRTP_PLATFORM == ZP_ANDROID) -#if ZRTP_HAVE_UNISTD_H == 1 +/* POSIX.1-2008 removes usleep, so use nanosleep instead when available */ +#if ZRTP_HAVE_NANOSLEEP +#include /* for nanosleep */ +#elif ZRTP_HAVE_UNISTD_H == 1 #include #else #error "Used environment dosn't have - zrtp_scheduler can't be build." #endif + #if ZRTP_HAVE_PTHREAD_H == 1 #include #else @@ -93,7 +98,14 @@ int zrtp_thread_create(zrtp_thread_routine_t start_routine, void *arg) int zrtp_sleep(unsigned int msec) { +#if ZRTP_HAVE_NANOSLEEP + struct timespec delay; + delay.tv_sec = msec / 1000; + delay.tv_nsec = (msec % 1000) * 1000000; + while (nanosleep(&delay, &delay)); +#else usleep(msec*1000); +#endif return 0; } diff --git a/libs/sofia-sip/.update b/libs/sofia-sip/.update index d148929f9e..66c9d49924 100644 --- a/libs/sofia-sip/.update +++ b/libs/sofia-sip/.update @@ -1 +1 @@ -Mon Aug 11 21:02:23 CDT 2014 +Sat Aug 16 01:34:24 CDT 2014 diff --git a/libs/sofia-sip/libsofia-sip-ua/su/su_alloc.c b/libs/sofia-sip/libsofia-sip-ua/su/su_alloc.c index 005989bb75..e438a89543 100644 --- a/libs/sofia-sip/libsofia-sip-ua/su/su_alloc.c +++ b/libs/sofia-sip/libsofia-sip-ua/su/su_alloc.c @@ -432,6 +432,8 @@ void *sub_alloc(su_home_t *home, if (size >= ((size_t)1) << SIZEBITS) return (void)(errno = ENOMEM), NULL; + if (!size) return NULL; + if (sub == NULL || 3 * sub->sub_used > 2 * sub->sub_n) { /* Resize the hash table */ size_t i, n, n2; @@ -474,7 +476,7 @@ void *sub_alloc(su_home_t *home, sub = b2; } - if (size && sub && zero < do_clone && + if (sub && zero < do_clone && sub->sub_preload && size <= sub->sub_prsize) { /* Use preloaded memory */ size_t prused = sub->sub_prused + size + MEMCHECK_EXTRA; diff --git a/libs/sofia-sip/libsofia-sip-ua/tport/ws.c b/libs/sofia-sip/libsofia-sip-ua/tport/ws.c index 8a0d3addcc..b96c6c140a 100644 --- a/libs/sofia-sip/libsofia-sip-ua/tport/ws.c +++ b/libs/sofia-sip/libsofia-sip-ua/tport/ws.c @@ -97,10 +97,18 @@ void init_ssl(void) { OpenSSL_add_all_algorithms(); /* load & register cryptos */ SSL_load_error_strings(); /* load all error messages */ - ws_globals.ssl_method = TLSv1_server_method(); /* create server instance */ + ws_globals.ssl_method = SSLv23_server_method(); /* create server instance */ ws_globals.ssl_ctx = SSL_CTX_new(ws_globals.ssl_method); /* create context */ assert(ws_globals.ssl_ctx); - + + /* Disable SSLv2 */ + SSL_CTX_set_options(globals.ssl_ctx, SSL_OP_NO_SSLv2); + /* Disable SSLv3 */ + SSL_CTX_set_options(globals.ssl_ctx, SSL_OP_NO_SSLv3); + /* Disable TLSv1 */ + SSL_CTX_set_options(globals.ssl_ctx, SSL_OP_NO_TLSv1); + /* Disable Compression CRIME (Compression Ratio Info-leak Made Easy) */ + SSL_CTX_set_options(globals.ssl_ctx, SSL_OP_NO_COMPRESSION); /* set the local certificate from CertFile */ SSL_CTX_use_certificate_file(ws_globals.ssl_ctx, ws_globals.cert, SSL_FILETYPE_PEM); /* set the private key from KeyFile */ diff --git a/libs/srtp/Makefile.am b/libs/srtp/Makefile.am index 598a4e1414..88be99b4e0 100644 --- a/libs/srtp/Makefile.am +++ b/libs/srtp/Makefile.am @@ -15,7 +15,6 @@ libsrtp_la_SOURCES = srtp/srtp.c srtp/ekt.c crypto/cipher/cipher.c crypto/cip crypto/math/datatypes.c crypto/math/stat.c \ crypto/kernel/crypto_kernel.c crypto/kernel/alloc.c \ crypto/kernel/key.c \ - crypto/rng/prng.c crypto/rng/ctr_prng.c \ crypto/kernel/err.c \ crypto/replay/rdb.c crypto/replay/rdbx.c crypto/replay/ut_sim.c @@ -30,6 +29,7 @@ libsrtp_la_SOURCES += crypto/hash/hmac_ossl.c else libsrtp_la_SOURCES += crypto/hash/sha1.c crypto/hash/hmac.c libsrtp_la_SOURCES += crypto/cipher/aes_icm.c crypto/cipher/aes.c crypto/cipher/aes_cbc.c +libsrtp_la_SOURCES += crypto/rng/prng.c crypto/rng/ctr_prng.c if RNG_OBJS_LINUX libsrtp_la_SOURCES += crypto/rng/rand_linux_kernel.c EXTRA_DIST += crypto/rng/rand_source.c diff --git a/src/include/switch_apr.h b/src/include/switch_apr.h index c723a533e3..50096d5aff 100644 --- a/src/include/switch_apr.h +++ b/src/include/switch_apr.h @@ -985,6 +985,8 @@ SWITCH_DECLARE(switch_status_t) switch_thread_create(switch_thread_t ** new_thre #define SWITCH_SO_RCVBUF 128 #define SWITCH_SO_DISCONNECTED 256 #define SWITCH_SO_TCP_NODELAY 512 +#define SWITCH_SO_TCP_KEEPIDLE 520 +#define SWITCH_SO_TCP_KEEPINTVL 530 /** diff --git a/src/mod/applications/mod_commands/mod_commands.c b/src/mod/applications/mod_commands/mod_commands.c index e418b1b297..e84b9248a1 100644 --- a/src/mod/applications/mod_commands/mod_commands.c +++ b/src/mod/applications/mod_commands/mod_commands.c @@ -2141,6 +2141,42 @@ SWITCH_STANDARD_API(status_function) return SWITCH_STATUS_SUCCESS; } +#define UPTIME_SYNTAX "[us|ms|s|m|h|d|microseconds|milliseconds|seconds|minutes|hours|days]" +SWITCH_STANDARD_API(uptime_function) +{ + switch_time_t scale; + + if (zstr(cmd)) { + /* default to seconds */ + scale = 1000000; + } + else if (!strcasecmp(cmd, "microseconds") || !strcasecmp(cmd, "us")) { + scale = 1; + } + else if (!strcasecmp(cmd, "milliseconds") || !strcasecmp(cmd, "ms")) { + scale = 1000; + } + else if (!strcasecmp(cmd, "seconds") || !strcasecmp(cmd, "s")) { + scale = 1000000; + } + else if (!strcasecmp(cmd, "minutes") || !strcasecmp(cmd, "m")) { + scale = 60000000; + } + else if (!strcasecmp(cmd, "hours") || !strcasecmp(cmd, "h")) { + scale = 3600000000; + } + else if (!strcasecmp(cmd, "days") || !strcasecmp(cmd, "d")) { + scale = 86400000000; + } + else { + stream->write_function(stream, "-USAGE: %s\n", UPTIME_SYNTAX); + return SWITCH_STATUS_SUCCESS; + } + + stream->write_function(stream, "%u\n", switch_core_uptime() / scale); + return SWITCH_STATUS_SUCCESS; +} + #define CTL_SYNTAX "[recover|send_sighup|hupall|pause [inbound|outbound]|resume [inbound|outbound]|shutdown [cancel|elegant|asap|now|restart]|sps|sps_peak_reset|sync_clock|sync_clock_when_idle|reclaim_mem|max_sessions|min_dtmf_duration [num]|max_dtmf_duration [num]|default_dtmf_duration [num]|min_idle_cpu|loglevel [level]|debug_level [level]]" SWITCH_STANDARD_API(ctl_function) { @@ -6633,6 +6669,7 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_commands_load) SWITCH_ADD_API(commands_api_interface, "tone_detect", "Start tone detection on a channel", tone_detect_session_function, TONE_DETECT_SYNTAX); SWITCH_ADD_API(commands_api_interface, "unload", "Unload module", unload_function, UNLOAD_SYNTAX); SWITCH_ADD_API(commands_api_interface, "unsched_api", "Unschedule an api command", unsched_api_function, UNSCHED_SYNTAX); + SWITCH_ADD_API(commands_api_interface, "uptime", "Show uptime", uptime_function, UPTIME_SYNTAX); SWITCH_ADD_API(commands_api_interface, "reg_url", "", reg_url_function, "@"); SWITCH_ADD_API(commands_api_interface, "url_decode", "Url decode a string", url_decode_function, ""); SWITCH_ADD_API(commands_api_interface, "url_encode", "Url encode a string", url_encode_function, ""); @@ -6796,6 +6833,17 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_commands_load) switch_console_set_complete("add shutdown"); switch_console_set_complete("add sql_escape"); switch_console_set_complete("add unload ::console::list_loaded_modules"); + switch_console_set_complete("add uptime ms"); + switch_console_set_complete("add uptime s"); + switch_console_set_complete("add uptime m"); + switch_console_set_complete("add uptime h"); + switch_console_set_complete("add uptime d"); + switch_console_set_complete("add uptime microseconds"); + switch_console_set_complete("add uptime milliseconds"); + switch_console_set_complete("add uptime seconds"); + switch_console_set_complete("add uptime minutes"); + switch_console_set_complete("add uptime hours"); + switch_console_set_complete("add uptime days"); switch_console_set_complete("add uuid_audio ::console::list_uuid start read mute"); switch_console_set_complete("add uuid_audio ::console::list_uuid start read level"); switch_console_set_complete("add uuid_audio ::console::list_uuid start write mute"); diff --git a/src/mod/applications/mod_curl/mod_curl.c b/src/mod/applications/mod_curl/mod_curl.c index 03c0eda5c8..bff5df864c 100644 --- a/src/mod/applications/mod_curl/mod_curl.c +++ b/src/mod/applications/mod_curl/mod_curl.c @@ -194,6 +194,7 @@ static http_data_t *do_lookup_url(switch_memory_pool_t *pool, const char *url, c } if (!strncasecmp(url, "https", 5)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Not verifying TLS cert for %s; connection is not secure\n", url); switch_curl_easy_setopt(curl_handle, CURLOPT_SSL_VERIFYPEER, 0); switch_curl_easy_setopt(curl_handle, CURLOPT_SSL_VERIFYHOST, 0); } @@ -357,6 +358,7 @@ static void http_sendfile_initialize_curl(http_sendfile_data_t *http_data) if (!strncasecmp(http_data->url, "https", 5)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Not verifying TLS cert for %s; connection is not secure\n", http_data->url); curl_easy_setopt(http_data->curl_handle, CURLOPT_SSL_VERIFYPEER, 0); curl_easy_setopt(http_data->curl_handle, CURLOPT_SSL_VERIFYHOST, 0); } @@ -400,8 +402,11 @@ static void http_sendfile_initialize_curl(http_sendfile_data_t *http_data) char *argv2[4] = { 0 }; uint32_t argc2 = switch_separate_string(argv[count], '=', argv2, (sizeof(argv2) / sizeof(argv2[0]))); - if(argc2 == 2) + if(argc2 == 2) { + switch_url_decode(argv2[0]); + switch_url_decode(argv2[1]); curl_formadd(&http_data->formpost, &http_data->lastptr, CURLFORM_COPYNAME, argv2[0], CURLFORM_COPYCONTENTS, argv2[1], CURLFORM_END); + } } } diff --git a/src/mod/applications/mod_fifo/mod_fifo.c b/src/mod/applications/mod_fifo/mod_fifo.c index ff00fec256..ac0d1167b7 100644 --- a/src/mod/applications/mod_fifo/mod_fifo.c +++ b/src/mod/applications/mod_fifo/mod_fifo.c @@ -2214,9 +2214,9 @@ static void send_presence(fifo_node_t *node) } if ((wait_count = node_caller_count(node)) > 0) { - switch_event_add_header(event, SWITCH_STACK_BOTTOM, "status", "Active (%d waiting)", wait_count); + switch_event_add_header(event, SWITCH_STACK_BOTTOM, "force-status", "Active (%d waiting)", wait_count); } else { - switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "status", "Idle"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "force-status", "Idle"); } switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "rpid", "unknown"); switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "event_type", "presence"); @@ -2225,7 +2225,7 @@ static void send_presence(fifo_node_t *node) switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "channel-state", wait_count > 0 ? "CS_ROUTING" : "CS_HANGUP"); switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "unique-id", node->name); - switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "answer-state", wait_count > 0 ? "early" : "terminated"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "answer-state", wait_count > 0 ? "confirmed" : "terminated"); switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "presence-call-direction", "inbound"); switch_event_fire(&event); } diff --git a/src/mod/applications/mod_http_cache/aws.c b/src/mod/applications/mod_http_cache/aws.c index 4d446d5857..58c4b4d917 100644 --- a/src/mod/applications/mod_http_cache/aws.c +++ b/src/mod/applications/mod_http_cache/aws.c @@ -105,6 +105,39 @@ char *aws_s3_signature(char *signature, int signature_length, const char *string return signature; } +/** + * Reverse string substring search + */ +static char *my_strrstr(const char *haystack, const char *needle) +{ + char *s; + size_t needle_len; + size_t haystack_len; + + if (zstr(haystack)) { + return NULL; + } + + if (zstr(needle)) { + return (char *)haystack; + } + + needle_len = strlen(needle); + haystack_len = strlen(haystack); + if (needle_len > haystack_len) { + return NULL; + } + + s = (char *)(haystack + haystack_len - needle_len); + do { + if (!strncmp(s, needle, needle_len)) { + return s; + } + } while (s-- != haystack); + + return NULL; +} + /** * Parse bucket and object from URL * @param url to parse. This value is modified. @@ -113,7 +146,7 @@ char *aws_s3_signature(char *signature, int signature_length, const char *string */ void aws_s3_parse_url(char *url, char **bucket, char **object) { - char *bucket_start; + char *bucket_start = NULL; char *bucket_end; char *object_start; @@ -124,15 +157,18 @@ void aws_s3_parse_url(char *url, char **bucket, char **object) return; } - /* expect: http(s)://bucket.s3.amazonaws.com/object */ - bucket_start = strstr(url, "://"); - if (!bucket_start) { + /* expect: http(s)://bucket.foo-bar.s3.amazonaws.com/object */ + if (!strncasecmp(url, "https://", 8)) { + bucket_start = url + 8; + } else if (!strncasecmp(url, "http://", 7)) { + bucket_start = url + 7; + } + if (zstr(bucket_start)) { /* invalid URL */ return; } - bucket_start += 3; - - bucket_end = strchr(bucket_start, '.'); + + bucket_end = my_strrstr(bucket_start, ".s3"); if (!bucket_end) { /* invalid URL */ return; diff --git a/src/mod/applications/mod_http_cache/mod_http_cache.c b/src/mod/applications/mod_http_cache/mod_http_cache.c index 3505c99a9b..f1ec2b69ed 100644 --- a/src/mod/applications/mod_http_cache/mod_http_cache.c +++ b/src/mod/applications/mod_http_cache/mod_http_cache.c @@ -1395,17 +1395,19 @@ static switch_status_t do_config(url_cache_t *cache) http_profile_t *profile_obj; switch_xml_t domains; switch_xml_t s3 = switch_xml_child(profile, "aws-s3"); - const char *access_key_id = NULL; - const char *secret_access_key = NULL; + char *access_key_id = NULL; + char *secret_access_key = NULL; if (s3) { switch_xml_t id = switch_xml_child(s3, "access-key-id"); switch_xml_t secret = switch_xml_child(s3, "secret-access-key"); if (id && secret) { - access_key_id = switch_xml_txt(id); - secret_access_key = switch_xml_txt(secret); - if (!access_key_id || !secret_access_key) { + access_key_id = switch_strip_whitespace(switch_xml_txt(id)); + secret_access_key = switch_strip_whitespace(switch_xml_txt(secret)); + if (zstr(access_key_id) || zstr(secret_access_key)) { switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Missing aws s3 credentials for profile \"%s\"\n", name); + switch_safe_free(access_key_id); access_key_id = NULL; + switch_safe_free(secret_access_key); secret_access_key = NULL; } } else { @@ -1414,6 +1416,8 @@ static switch_status_t do_config(url_cache_t *cache) } switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_INFO, "Adding profile \"%s\" to cache\n", name); profile_obj = url_cache_http_profile_add(cache, name, access_key_id, secret_access_key); + switch_safe_free(access_key_id); + switch_safe_free(secret_access_key); domains = switch_xml_child(profile, "domains"); if (domains) { diff --git a/src/mod/applications/mod_http_cache/test_aws/main.c b/src/mod/applications/mod_http_cache/test_aws/main.c index c29f1364ec..f661c5954f 100644 --- a/src/mod/applications/mod_http_cache/test_aws/main.c +++ b/src/mod/applications/mod_http_cache/test_aws/main.c @@ -111,6 +111,10 @@ static void test_parse_url(void) aws_s3_parse_url(strdup("https://my-bucket-with-dash.s3-us-west-2.amazonaws.com/greeting/file/1002/Lumino.mp3"), &bucket, &object); ASSERT_STRING_EQUALS("my-bucket-with-dash", bucket); ASSERT_STRING_EQUALS("greeting/file/1002/Lumino.mp3", object); + + aws_s3_parse_url(strdup("http://quotes.s3.foo.bar.s3.amazonaws.com/greeting/file/1002/Lumino.mp3"), &bucket, &object); + ASSERT_STRING_EQUALS("quotes.s3.foo.bar", bucket); + ASSERT_STRING_EQUALS("greeting/file/1002/Lumino.mp3", object); } /** diff --git a/src/mod/endpoints/mod_skinny/mod_skinny.c b/src/mod/endpoints/mod_skinny/mod_skinny.c index a3970dd5c0..5f6bf1f14e 100644 --- a/src/mod/endpoints/mod_skinny/mod_skinny.c +++ b/src/mod/endpoints/mod_skinny/mod_skinny.c @@ -2023,7 +2023,7 @@ switch_status_t skinny_profile_set(skinny_profile_t *profile, const char *var, c } else if (!strcasecmp(var, "digit-timeout")) { profile->digit_timeout = atoi(val); } else if (!strcasecmp(var, "date-format")) { - strncpy(profile->date_format, val, 6); + memcpy(profile->date_format, val, 6); } else if (!strcasecmp(var, "odbc-dsn") && !zstr(val)) { profile->odbc_dsn = switch_core_strdup(profile->pool, val); } else if (!strcasecmp(var, "debug")) { diff --git a/src/mod/endpoints/mod_skypopen/README b/src/mod/endpoints/mod_skypopen/README index 90314cda68..c84b9993cd 100644 --- a/src/mod/endpoints/mod_skypopen/README +++ b/src/mod/endpoints/mod_skypopen/README @@ -1,4 +1,4 @@ -Skypopen, Skype Endpoint and Trunk +Skypopen, Skype Endpoint and Trunk All documentation on compiling, using, configuring, tricks and tweaks, possible problems at: diff --git a/src/mod/endpoints/mod_sofia/mod_sofia.c b/src/mod/endpoints/mod_sofia/mod_sofia.c index 0dca2d700f..33f4e0f855 100644 --- a/src/mod/endpoints/mod_sofia/mod_sofia.c +++ b/src/mod/endpoints/mod_sofia/mod_sofia.c @@ -4319,9 +4319,9 @@ static switch_call_cause_t sofia_outgoing_channel(switch_core_session_t *session } if (!strchr(dest, '@')) { - tech_pvt->dest = switch_core_session_sprintf(nsession, "sip:%s@%s", dest, sofia_glue_strip_proto(gateway_ptr->register_proxy)); + tech_pvt->dest = switch_core_session_sprintf(nsession, "sip:%s%s@%s", gateway_ptr->destination_prefix, dest, sofia_glue_strip_proto(gateway_ptr->register_proxy)); } else { - tech_pvt->dest = switch_core_session_sprintf(nsession, "sip:%s", dest); + tech_pvt->dest = switch_core_session_sprintf(nsession, "sip:%s%s", gateway_ptr->destination_prefix, dest); } if ((host = switch_core_session_strdup(nsession, tech_pvt->dest))) { diff --git a/src/mod/endpoints/mod_sofia/mod_sofia.h b/src/mod/endpoints/mod_sofia/mod_sofia.h index da9c2c4122..577ff07bbc 100644 --- a/src/mod/endpoints/mod_sofia/mod_sofia.h +++ b/src/mod/endpoints/mod_sofia/mod_sofia.h @@ -478,6 +478,7 @@ struct sofia_gateway { char *register_context; char *expires_str; char *register_url; + char *destination_prefix; char *from_domain; sofia_transport_t register_transport; uint32_t freq; diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index befca00ab1..79339e9781 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -3315,6 +3315,7 @@ static void parse_gateways(sofia_profile_t *profile, switch_xml_t gateways_tag) gateway->ob_calls = 0; gateway->ib_failed_calls = 0; gateway->ob_failed_calls = 0; + gateway->destination_prefix = ""; if ((x_params = switch_xml_child(gateway_tag, "variables"))) { param = switch_xml_child(x_params, "variable"); @@ -3416,6 +3417,10 @@ static void parse_gateways(sofia_profile_t *profile, switch_xml_t gateways_tag) outbound_proxy = val; } else if (!strcmp(var, "distinct-to")) { distinct_to = switch_true(val); + } else if (!strcmp(var, "destination-prefix")) { + if (!zstr(val)) { + gateway->destination_prefix = switch_core_strdup(gateway->pool, val); + } } else if (!strcmp(var, "rfc-5626")) { rfc_5626 = switch_true(val); } else if (!strcmp(var, "reg-id")) { diff --git a/src/mod/endpoints/mod_verto/mod_verto.c b/src/mod/endpoints/mod_verto/mod_verto.c index 73219240b6..2782380ba7 100644 --- a/src/mod/endpoints/mod_verto/mod_verto.c +++ b/src/mod/endpoints/mod_verto/mod_verto.c @@ -963,33 +963,25 @@ static switch_bool_t check_auth(jsock_t *jsock, cJSON *params, int *code, char * static void set_call_params(cJSON *params, verto_pvt_t *tech_pvt) { const char *caller_id_name = NULL; const char *caller_id_number = NULL; + const char *callee_id_name = NULL; + const char *callee_id_number = NULL; + + caller_id_name = switch_channel_get_variable(tech_pvt->channel, "caller_id_name"); + caller_id_number = switch_channel_get_variable(tech_pvt->channel, "caller_id_number"); + callee_id_name = switch_channel_get_variable(tech_pvt->channel, "callee_id_name"); + callee_id_number = switch_channel_get_variable(tech_pvt->channel, "callee_id_number"); + + if (caller_id_name) cJSON_AddItemToObject(params, "caller_id_name", cJSON_CreateString(caller_id_name)); + if (caller_id_number) cJSON_AddItemToObject(params, "caller_id_number", cJSON_CreateString(caller_id_number)); + + if (callee_id_name) cJSON_AddItemToObject(params, "callee_id_name", cJSON_CreateString(callee_id_name)); + if (callee_id_number) cJSON_AddItemToObject(params, "callee_id_number", cJSON_CreateString(callee_id_number)); - if (switch_channel_outbound_display(tech_pvt->channel)) { - caller_id_name = switch_channel_get_variable(tech_pvt->channel, "caller_id_name"); - caller_id_number = switch_channel_get_variable(tech_pvt->channel, "caller_id_number"); - } else { - caller_id_name = switch_channel_get_variable(tech_pvt->channel, "verto_remote_caller_id_name"); - caller_id_number = switch_channel_get_variable(tech_pvt->channel, "verto_remote_caller_id_number"); + cJSON_AddItemToObject(params, "display_direction", + cJSON_CreateString(switch_channel_direction(tech_pvt->channel) == SWITCH_CALL_DIRECTION_OUTBOUND ? "outbound" : "inbound")); - if (!caller_id_name) { - caller_id_name = switch_channel_get_variable(tech_pvt->channel, "callee_id_name"); - } - if (!caller_id_number) { - caller_id_number = switch_channel_get_variable(tech_pvt->channel, "callee_id_number"); - } - } - if (zstr(caller_id_name)) { - caller_id_name = "Outbound Call"; - } - - if (zstr(caller_id_number)) { - caller_id_number = switch_channel_get_variable(tech_pvt->channel, "destination_number"); - } - - cJSON_AddItemToObject(params, "caller_id_name", cJSON_CreateString(caller_id_name)); - cJSON_AddItemToObject(params, "caller_id_number", cJSON_CreateString(caller_id_number)); } static jsock_t *get_jsock(const char *uuid) @@ -1655,10 +1647,10 @@ static switch_status_t verto_on_init(switch_core_session_t *session) { switch_status_t status = SWITCH_STATUS_SUCCESS; verto_pvt_t *tech_pvt = switch_core_session_get_private_class(session, SWITCH_PVT_SECONDARY); - + if (switch_channel_test_flag(tech_pvt->channel, CF_RECOVERING_BRIDGE) || switch_channel_test_flag(tech_pvt->channel, CF_RECOVERING)) { int tries = 120; - + switch_core_session_clear_crypto(session); while(--tries > 0) { @@ -1883,8 +1875,12 @@ static switch_status_t messagehook (switch_core_session_t *session, switch_core_ if (name || number) { jmsg = jrpc_new_req("verto.display", tech_pvt->call_id, ¶ms); + switch_ivr_eavesdrop_update_display(session, name, number); + switch_channel_set_variable(tech_pvt->channel, "last_sent_display_name", name); + switch_channel_set_variable(tech_pvt->channel, "last_sent_display_number", number); cJSON_AddItemToObject(params, "display_name", cJSON_CreateString(name)); cJSON_AddItemToObject(params, "display_number", cJSON_CreateString(number)); + set_call_params(params, tech_pvt); jsock_queue_event(jsock, &jmsg, SWITCH_TRUE); } @@ -3235,6 +3231,18 @@ static int start_jsock(verto_profile_t *profile, int sock) /* no nagle please */ setsockopt(jsock->client_socket, IPPROTO_TCP, TCP_NODELAY, (char *)&flag, sizeof(flag)); + +#if defined(SO_KEEPALIVE) + setsockopt(jsock->client_socket, SOL_SOCKET, SO_KEEPALIVE, (void *)&flag, sizeof(flag)); +#endif + flag = 30; +#if defined(TCP_KEEPIDLE) + setsockopt(jsock->client_socket, IPPROTO_TCP, TCP_KEEPIDLE, (void *)&flag, sizeof(flag)); +#endif +#if defined(TCP_KEEPINTVL) + setsockopt(jsock->client_socket, IPPROTO_TCP, TCP_KEEPINTVL, (void *)&flag, sizeof(flag)); +#endif + td = switch_core_alloc(jsock->pool, sizeof(*td)); td->alloc = 0; diff --git a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c index 3ad1b0c966..99a6415469 100644 --- a/src/mod/event_handlers/mod_event_socket/mod_event_socket.c +++ b/src/mod/event_handlers/mod_event_socket/mod_event_socket.c @@ -446,6 +446,8 @@ SWITCH_STANDARD_APP(socket_function) switch_socket_opt_set(new_sock, SWITCH_SO_KEEPALIVE, 1); switch_socket_opt_set(new_sock, SWITCH_SO_TCP_NODELAY, 1); + switch_socket_opt_set(new_sock, SWITCH_SO_TCP_KEEPIDLE, 30); + switch_socket_opt_set(new_sock, SWITCH_SO_TCP_KEEPINTVL, 30); if (switch_socket_connect(new_sock, sa) != SWITCH_STATUS_SUCCESS) { switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_ERROR, "Socket Error!\n"); diff --git a/src/mod/loggers/mod_graylog2/conf/autoload_configs/graylog2.conf.xml b/src/mod/loggers/mod_graylog2/conf/autoload_configs/graylog2.conf.xml index 62320bb77c..76623e13bd 100644 --- a/src/mod/loggers/mod_graylog2/conf/autoload_configs/graylog2.conf.xml +++ b/src/mod/loggers/mod_graylog2/conf/autoload_configs/graylog2.conf.xml @@ -11,5 +11,12 @@ + + + + + + + diff --git a/src/mod/loggers/mod_graylog2/mod_graylog2.c b/src/mod/loggers/mod_graylog2/mod_graylog2.c index a65ac0281a..e799eda2cf 100644 --- a/src/mod/loggers/mod_graylog2/mod_graylog2.c +++ b/src/mod/loggers/mod_graylog2/mod_graylog2.c @@ -51,6 +51,8 @@ static struct { switch_thread_rwlock_t *shutdown_rwlock; /** log delivery queue */ switch_queue_t *log_queue; + /** Fields to automatically add to session logs */ + switch_event_t *session_fields; } globals; /** @@ -85,6 +87,7 @@ static char *to_gelf(const switch_log_node_t *node, switch_log_level_t log_level char *parsed_full_message = NULL; char *field_name = NULL; switch_event_t *log_fields = NULL; + switch_core_session_t *session = NULL; cJSON_AddItemToObject(gelf, "version", cJSON_CreateString("1.1")); if ((hostname = switch_core_get_variable("hostname")) && !zstr(hostname)) { @@ -117,27 +120,47 @@ static char *to_gelf(const switch_log_node_t *node, switch_log_level_t log_level full_message++; } - /* parse list of fields, if any */ - if (strncmp(full_message, "LOG_FIELDS", 10) == 0) { - if (switch_event_create_brackets(full_message+10, '[', ']', ',', &log_fields, &parsed_full_message, SWITCH_TRUE) == SWITCH_STATUS_SUCCESS) { - - switch_event_header_t *hp; - for (hp = log_fields->headers; hp; hp = hp->next) { - if (!zstr(hp->name) && !zstr(hp->value)) { - if (strncmp(hp->name, "@#", 2) == 0) { - field_name = switch_mprintf("_%s", hp->name + 2); - cJSON_AddItemToObject(gelf, field_name, cJSON_CreateNumber(strtod(hp->value, NULL))); - } else { - field_name = switch_mprintf("_%s", hp->name); - cJSON_AddItemToObject(gelf, field_name, cJSON_CreateString(hp->value)); + /* get fields from channel data, if configured */ + if (!zstr(node->userdata) && (session = switch_core_session_locate(node->userdata))) { + switch_channel_t *channel = switch_core_session_get_channel(session); + switch_event_header_t *hp; + /* session_fields name mapped to variable name */ + for (hp = globals.session_fields->headers; hp; hp = hp->next) { + if (!zstr(hp->name) && !zstr(hp->value)) { + const char *val = switch_channel_get_variable(channel, hp->value); + if (!zstr(val)) { + if (!log_fields) { + switch_event_create_plain(&log_fields, SWITCH_EVENT_CHANNEL_DATA); } - free(field_name); + switch_event_add_header_string(log_fields, SWITCH_STACK_BOTTOM, hp->name, val); } } - - switch_event_destroy(&log_fields); - full_message = parsed_full_message; } + switch_core_session_rwunlock(session); + } + + /* parse list of fields from message text, if any */ + if (strncmp(full_message, "LOG_FIELDS", 10) == 0) { + switch_event_create_brackets(full_message+10, '[', ']', ',', &log_fields, &parsed_full_message, SWITCH_TRUE); + full_message = parsed_full_message; + } + + /* add additional fields */ + if (log_fields) { + switch_event_header_t *hp; + for (hp = log_fields->headers; hp; hp = hp->next) { + if (!zstr(hp->name) && !zstr(hp->value)) { + if (strncmp(hp->name, "@#", 2) == 0) { + field_name = switch_mprintf("_%s", hp->name + 2); + cJSON_AddItemToObject(gelf, field_name, cJSON_CreateNumber(strtod(hp->value, NULL))); + } else { + field_name = switch_mprintf("_%s", hp->name); + cJSON_AddItemToObject(gelf, field_name, cJSON_CreateString(hp->value)); + } + free(field_name); + } + } + switch_event_destroy(&log_fields); } cJSON_AddItemToObject(gelf, "full_message", cJSON_CreateString(full_message)); @@ -293,6 +316,7 @@ static switch_status_t do_config(void) if ((settings = switch_xml_child(cfg, "settings"))) { switch_xml_t param; + switch_xml_t fields; for (param = switch_xml_child(settings, "param"); param; param = param->next) { char *name = (char *) switch_xml_attr_soft(param, "name"); char *value = (char *) switch_xml_attr_soft(param, "value"); @@ -333,6 +357,25 @@ static switch_status_t do_config(void) switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Ignoring unknown param: \"%s\"\n", name); } } + + /* map session fields to channel variables */ + if ((fields = switch_xml_child(settings, "fields"))) { + switch_xml_t field; + for (field = switch_xml_child(fields, "field"); field; field = field->next) { + char *name = (char *) switch_xml_attr_soft(field, "name"); + char *variable = (char *) switch_xml_attr_soft(field, "variable"); + if (zstr(name)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Ignoring unnamed session field\n"); + continue; + } + if (zstr(variable)) { + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Ignoring empty channel variable for session field \"%s\"\n", name); + continue; + } + switch_event_add_header_string(globals.session_fields, SWITCH_STACK_BOTTOM, + switch_core_strdup(globals.pool, name), switch_core_strdup(globals.pool, variable)); + } + } } switch_xml_free(xml); return SWITCH_STATUS_SUCCESS; @@ -345,6 +388,8 @@ SWITCH_MODULE_LOAD_FUNCTION(mod_graylog2_load) memset(&globals, 0, sizeof(globals)); globals.pool = pool; + switch_event_create_plain(&globals.session_fields, SWITCH_EVENT_CHANNEL_DATA); + if (do_config() != SWITCH_STATUS_SUCCESS) { return SWITCH_STATUS_TERM; } @@ -362,7 +407,9 @@ SWITCH_MODULE_SHUTDOWN_FUNCTION(mod_graylog2_shutdown) { switch_log_unbind_logger(mod_graylog2_logger); stop_deliver_graylog2_thread(); - + if (globals.session_fields) { + switch_event_destroy(&globals.session_fields); + } return SWITCH_STATUS_SUCCESS; } diff --git a/src/mod/xml_int/mod_xml_radius/mod_xml_radius.c b/src/mod/xml_int/mod_xml_radius/mod_xml_radius.c index 95b437722c..4cfa99d39d 100644 --- a/src/mod/xml_int/mod_xml_radius/mod_xml_radius.c +++ b/src/mod/xml_int/mod_xml_radius/mod_xml_radius.c @@ -362,6 +362,7 @@ switch_status_t mod_xml_radius_add_params(switch_core_session_t *session, switch char *variable = (char *) switch_xml_attr(param, "variable"); char *variable_secondary = (char *) switch_xml_attr(param, "variable_secondary"); char *val_default = (char *) switch_xml_attr(param, "default"); + char *skip_if_set = (char *) switch_xml_attr(param, "skip_if_set"); char *format = (char *) switch_xml_attr(param, "format"); char *other_leg = (char *) switch_xml_attr(param, "other_leg"); @@ -399,6 +400,9 @@ switch_status_t mod_xml_radius_add_params(switch_core_session_t *session, switch if ( var ) { if ( session ) { switch_channel_t *channel = switch_core_session_get_channel(session); + if ( skip_if_set && switch_channel_get_variable(channel, skip_if_set) ) { + goto end_loop; + } /* Accounting only */ if ( strncmp( var, "h323-setup-time", 15) == 0 ) { diff --git a/src/switch.c b/src/switch.c index f5ef1ee55f..c0d3a84f7a 100644 --- a/src/switch.c +++ b/src/switch.c @@ -251,7 +251,7 @@ static int check_fd(int fd, int ms) if ((pfds[0].revents & POLLIN)) { if ((i = read(fd, &r, sizeof(r))) > -1) { - i = write(fd, &r, sizeof(r)); + (void)write(fd, &r, sizeof(r)); } } } @@ -962,7 +962,7 @@ int main(int argc, char *argv[]) else if (!strcmp(local_argv[x], "-certs")) { x++; if (switch_strlen_zero(local_argv[x]) || is_option(local_argv[x])) { - fprintf(stderr, "When using -certs you must specify a grammar directory\n"); + fprintf(stderr, "When using -certs you must specify a certificates directory\n"); return 255; } @@ -1053,7 +1053,7 @@ int main(int argc, char *argv[]) setrlimit(RLIMIT_STACK, &rlp); apr_terminate(); - ret = (int) execv(argv[0], argv); + if (argv) ret = (int) execv(argv[0], argv); for (i = 0; i < argc; i++) { switch_snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), "%s ", argv[i]); @@ -1189,7 +1189,7 @@ int main(int argc, char *argv[]) if ((i = write(fds[1], &v, sizeof(v))) < 0) { fprintf(stderr, "System Error [%s]\n", strerror(errno)); } else { - i = read(fds[1], &v, sizeof(v)); + (void)read(fds[1], &v, sizeof(v)); } shutdown(fds[1], 2); @@ -1215,7 +1215,7 @@ int main(int argc, char *argv[]) int j = 0; switch_sleep(1000000); - if (execv(argv[0], argv) == -1) { + if (!argv || execv(argv[0], argv) == -1) { fprintf(stderr, "Restart Failed [%s] resorting to plan b\n", strerror(errno)); for (j = 0; j < argc; j++) { switch_snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), "%s ", argv[j]); diff --git a/src/switch_apr.c b/src/switch_apr.c index a12ae2ddeb..e77be82897 100644 --- a/src/switch_apr.c +++ b/src/switch_apr.c @@ -789,6 +789,34 @@ SWITCH_DECLARE(switch_status_t) switch_sockaddr_info_get(switch_sockaddr_t ** sa SWITCH_DECLARE(switch_status_t) switch_socket_opt_set(switch_socket_t *sock, int32_t opt, int32_t on) { + if (opt == SWITCH_SO_TCP_KEEPIDLE) { + int r = -10; + +#if defined(TCP_KEEPIDLE) + r = setsockopt(jsock->client_socket, SOL_TCP, TCP_KEEPIDLE, (void *)&on, sizeof(on)); +#endif + if (r == -10) { + return SWITCH_STATUS_NOTIMPL; + } + + + return r ? SWITCH_STATUS_FALSE : SWITCH_STATUS_SUCCESS; + } + + if (opt == SWITCH_SO_TCP_KEEPINTVL) { + int r = -10; + +#if defined(TCP_KEEPINTVL) + r = setsockopt(jsock->client_socket, SOL_TCP, TCP_KEEPINTVL, (void *)&on, sizeof(on)); +#endif + + if (r == -10) { + return SWITCH_STATUS_NOTIMPL; + } + + return r ? SWITCH_STATUS_FALSE : SWITCH_STATUS_SUCCESS; + } + return apr_socket_opt_set(sock, opt, on); } diff --git a/src/switch_core.c b/src/switch_core.c index 321bd0dd75..b2b05e8b7a 100644 --- a/src/switch_core.c +++ b/src/switch_core.c @@ -109,14 +109,35 @@ static void check_ip(void) char old_ip6[256] = ""; int ok4 = 1, ok6 = 1; int mask = 0; + switch_status_t check6, check4; + switch_event_t *event; + char *hostname = switch_core_get_variable("hostname"); gethostname(runtime.hostname, sizeof(runtime.hostname)); - switch_core_set_variable("hostname", runtime.hostname); - switch_find_local_ip(guess_ip4, sizeof(guess_ip4), &mask, AF_INET); - switch_find_local_ip(guess_ip6, sizeof(guess_ip6), NULL, AF_INET6); + if (zstr(hostname)) { + switch_core_set_variable("hostname", runtime.hostname); + } else if (strcmp(hostname, runtime.hostname)) { + if (switch_event_create(&event, SWITCH_EVENT_TRAP) == SWITCH_STATUS_SUCCESS) { + switch_event_add_header(event, SWITCH_STACK_BOTTOM, "condition", "hostname-change"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "old-hostname", hostname ? hostname : "nil"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "new-hostname", runtime.hostname); + switch_event_fire(&event); + } - if (!*main_ip4) { + switch_core_set_variable("hostname", runtime.hostname); + } + + check4 = switch_find_local_ip(guess_ip4, sizeof(guess_ip4), &mask, AF_INET); + check6 = switch_find_local_ip(guess_ip6, sizeof(guess_ip6), NULL, AF_INET6); + + if (check6 != SWITCH_STATUS_SUCCESS && (zstr(main_ip6) || !strcasecmp(main_ip6, "::1"))) { + check6 = SWITCH_STATUS_SUCCESS; + } + + if (check4 != SWITCH_STATUS_SUCCESS) { + ok4 = 2; + } else if (!*main_ip4) { switch_set_string(main_ip4, guess_ip4); } else { if (!(ok4 = !strcmp(main_ip4, guess_ip4))) { @@ -130,7 +151,9 @@ static void check_ip(void) } } - if (!*main_ip6) { + if (check6 != SWITCH_STATUS_SUCCESS) { + ok6 = 2; + } else if (!*main_ip6) { switch_set_string(main_ip6, guess_ip6); } else { if (!(ok6 = !strcmp(main_ip6, guess_ip6))) { @@ -141,8 +164,6 @@ static void check_ip(void) } if (!ok4 || !ok6) { - switch_event_t *event; - if (switch_event_create(&event, SWITCH_EVENT_TRAP) == SWITCH_STATUS_SUCCESS) { switch_event_add_header(event, SWITCH_STACK_BOTTOM, "condition", "network-address-change"); if (!ok4) { @@ -156,6 +177,21 @@ static void check_ip(void) switch_event_fire(&event); } } + + if (ok4 == 2 || ok6 == 2) { + if (switch_event_create(&event, SWITCH_EVENT_TRAP) == SWITCH_STATUS_SUCCESS) { + switch_event_add_header(event, SWITCH_STACK_BOTTOM, "condition", "network-outage"); + + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "network-status-v4", ok4 == 2 ? "disconnected" : "active"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "network-address-v4", main_ip4); + + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "network-status-v6", ok6 == 2 ? "disconnected" : "active"); + switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "network-address-v6", main_ip6); + + switch_event_fire(&event); + } + } + } SWITCH_STANDARD_SCHED_FUNC(heartbeat_callback) diff --git a/src/switch_core_session.c b/src/switch_core_session.c index 24af5fbe1d..853d106e68 100644 --- a/src/switch_core_session.c +++ b/src/switch_core_session.c @@ -752,6 +752,7 @@ static const char *message_names[] = { "STUN_ERROR", "MEDIA_RENEG", "KEEPALIVE", + "REFER_EVENT", "ANSWER_EVENT", "PROGRESS_EVENT", "RING_EVENT", diff --git a/src/switch_ivr.c b/src/switch_ivr.c index d53d3e6a72..52661e2e1e 100644 --- a/src/switch_ivr.c +++ b/src/switch_ivr.c @@ -2308,6 +2308,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_generate_xml_cdr(switch_core_session_ } switch_xml_set_attr_d(cdr, "core-uuid", switch_core_get_uuid()); + switch_xml_set_attr_d(cdr, "switchname", switch_core_get_switchname()); if (!(x_channel_data = switch_xml_add_child_d(cdr, "channel_data", cdr_off++))) { goto error; @@ -2681,7 +2682,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_generate_json_cdr(switch_core_session char tmp[512], *f; cJSON_AddItemToObject(cdr, "core-uuid", cJSON_CreateString(switch_core_get_uuid())); - + cJSON_AddItemToObject(cdr, "switchname", cJSON_CreateString(switch_core_get_switchname())); j_channel_data = cJSON_CreateObject(); cJSON_AddItemToObject(cdr, "channel_data", j_channel_data); diff --git a/src/switch_ivr_bridge.c b/src/switch_ivr_bridge.c index 9c238ff16a..360223c30f 100644 --- a/src/switch_ivr_bridge.c +++ b/src/switch_ivr_bridge.c @@ -1691,7 +1691,9 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_uuid_bridge(const char *originator_uu if (switch_channel_direction(originator_channel) == SWITCH_CALL_DIRECTION_OUTBOUND && !switch_channel_test_flag(originator_channel, CF_DIALPLAN)) { - switch_channel_flip_cid(originator_channel); + if (!switch_channel_test_flag(originator_channel, CF_RECOVERING_BRIDGE)) { + switch_channel_flip_cid(originator_channel); + } switch_channel_set_flag(originator_channel, CF_DIALPLAN); } diff --git a/src/switch_limit.c b/src/switch_limit.c index b2e306a4b5..e6e421b091 100644 --- a/src/switch_limit.c +++ b/src/switch_limit.c @@ -54,7 +54,7 @@ static void release_backend(switch_limit_interface_t *limit) { SWITCH_DECLARE(void) switch_limit_init(switch_memory_pool_t *pool) { if (switch_event_reserve_subclass(LIMIT_EVENT_USAGE) != SWITCH_STATUS_SUCCESS) { - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Couldnt register event subclass \"%s\"", LIMIT_EVENT_USAGE); + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Couldn't register event subclass \"%s\"", LIMIT_EVENT_USAGE); } } diff --git a/src/switch_resample.c b/src/switch_resample.c index fa229a68cf..ed584e39af 100644 --- a/src/switch_resample.c +++ b/src/switch_resample.c @@ -78,7 +78,7 @@ SWITCH_DECLARE(switch_status_t) switch_resample_perform_create(switch_audio_resa resampler->factor = (lto_rate / lfrom_rate); resampler->rfactor = (lfrom_rate / lto_rate); resampler->to_size = resample_buffer(to_rate, from_rate, (uint32_t) to_size); - resampler->to = malloc(resampler->to_size * sizeof(int16_t) * channels); + resampler->to = malloc(resampler->to_size * sizeof(int16_t) * (channels ? channels : 1)); resampler->channels = channels; return SWITCH_STATUS_SUCCESS; diff --git a/src/switch_rtp.c b/src/switch_rtp.c index a1a95ff092..161f46f782 100644 --- a/src/switch_rtp.c +++ b/src/switch_rtp.c @@ -1056,6 +1056,7 @@ static void handle_ice(switch_rtp_t *rtp_session, switch_rtp_ice_t *ice, void *d char ipbuf[25]; switch_sockaddr_t *from_addr = rtp_session->from_addr; switch_socket_t *sock_output = rtp_session->sock_output; + uint8_t hosts_set = 0; if (is_rtcp) { from_addr = rtp_session->rtcp_from_addr; @@ -1078,6 +1079,7 @@ static void handle_ice(switch_rtp_t *rtp_session, switch_rtp_ice_t *ice, void *d switch_stun_packet_attribute_add_xor_binded_address(rpacket, (char *) remote_ip, switch_sockaddr_get_port(from_addr)); if (!switch_cmp_addr(from_addr, ice->addr)) { + hosts_set++; host = switch_get_addr(buf, sizeof(buf), from_addr); port = switch_sockaddr_get_port(from_addr); host2 = switch_get_addr(buf2, sizeof(buf2), ice->addr); @@ -1088,7 +1090,7 @@ static void handle_ice(switch_rtp_t *rtp_session, switch_rtp_ice_t *ice, void *d switch_stun_packet_attribute_add_integrity(rpacket, ice->pass); switch_stun_packet_attribute_add_fingerprint(rpacket); } else { - if (!switch_cmp_addr(from_addr, ice->addr)) { + if (hosts_set) { switch_sockaddr_info_get(&ice->addr, host, SWITCH_UNSPEC, port, 0, rtp_session->pool); switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(rtp_session->session), SWITCH_LOG_NOTICE, @@ -1111,7 +1113,7 @@ static void handle_ice(switch_rtp_t *rtp_session, switch_rtp_ice_t *ice, void *d bytes = switch_stun_packet_length(rpacket); - if (!ice->rready && (ice->type & ICE_VANILLA) && ice->ice_params && !switch_cmp_addr(from_addr, ice->addr)) { + if (!ice->rready && (ice->type & ICE_VANILLA) && ice->ice_params && hosts_set && !switch_cmp_addr(from_addr, ice->addr)) { int i = 0; ice->missed_count = 0; diff --git a/src/switch_stfu.c b/src/switch_stfu.c index e92d138fde..5bb5f50afe 100644 --- a/src/switch_stfu.c +++ b/src/switch_stfu.c @@ -167,7 +167,7 @@ void stfu_global_set_default_logger(int level) static stfu_status_t stfu_n_resize_aqueue(stfu_queue_t *queue, uint32_t qlen) { - unsigned char *m; + struct stfu_frame *m; if (qlen <= queue->real_array_size) { queue->array_size = qlen; @@ -177,8 +177,8 @@ static stfu_status_t stfu_n_resize_aqueue(stfu_queue_t *queue, uint32_t qlen) } else { m = realloc(queue->array, qlen * sizeof(struct stfu_frame)); assert(m); - memset(m + queue->array_size * sizeof(struct stfu_frame), 0, (qlen * sizeof(struct stfu_frame)) - (queue->array_size * sizeof(struct stfu_frame))); - queue->array = (struct stfu_frame *) m; + memset(m + queue->array_size, 0, (qlen - queue->array_size) * sizeof(struct stfu_frame)); + queue->array = m; queue->real_array_size = queue->array_size = qlen; } diff --git a/src/switch_utils.c b/src/switch_utils.c index a995ebc405..3028122c92 100644 --- a/src/switch_utils.c +++ b/src/switch_utils.c @@ -1569,7 +1569,6 @@ SWITCH_DECLARE(switch_status_t) switch_find_local_ip(char *buf, int len, int *ma doh: if (tmp_socket > 0) { close(tmp_socket); - tmp_socket = -1; } #endif @@ -2994,21 +2993,19 @@ SWITCH_DECLARE(int) switch_fulldate_cmp(const char *exp, switch_time_t *ts) char *dup = strdup(exp); char *sStart; char *sEnd; - char *sDate; - char *sTime; - switch_time_t tsStart; - switch_time_t tsEnd; - struct tm tmTmp; - int year, month, day; - int hour, min, sec; switch_assert(dup); sStart = dup; if ((sEnd=strchr(dup, '~'))) { + char *sDate = sStart; + char *sTime; *sEnd++ = '\0'; - sDate = sStart; if ((sTime=strchr(sStart, ' '))) { + switch_time_t tsStart; + struct tm tmTmp; + int year = 1970, month = 1, day = 1; + int hour = 0, min = 0, sec = 0; *sTime++ = '\0'; memset(&tmTmp, 0, sizeof(tmTmp)); @@ -3026,6 +3023,10 @@ SWITCH_DECLARE(int) switch_fulldate_cmp(const char *exp, switch_time_t *ts) sDate = sEnd; if ((sTime=strchr(sEnd, ' '))) { + switch_time_t tsEnd; + struct tm tmTmp; + int year = 1970, month = 1, day = 1; + int hour = 0, min = 0, sec = 0; *sTime++ = '\0'; memset(&tmTmp, 0, sizeof(tmTmp)); diff --git a/src/switch_xml.c b/src/switch_xml.c index 8a5b76a98b..0908e5a91d 100644 --- a/src/switch_xml.c +++ b/src/switch_xml.c @@ -1376,7 +1376,7 @@ static int preprocess(const char *cwd, const char *file, FILE *write_fd, int rle if (!(read_fd = fopen(file, "r"))) { const char *reason = strerror(errno); - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Couldnt open %s (%s)\n", file, reason); + switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Couldn't open %s (%s)\n", file, reason); return -1; }